Modifier les paramètres du cluster dans Patroni (edit-config) et appliquer les redémarrages en attente
PostgreSQLPatroniCommande
# Show the current dynamic configuration stored in the DCS:
patronictl -c /etc/patroni/patroni.yml show-config <cluster>
# Cluster-wide PostgreSQL parameter (distributed to all members):
patronictl -c /etc/patroni/patroni.yml edit-config <cluster> -p 'work_mem=64MB' -p 'max_connections=500' --force
# Patroni behavior parameter:
patronictl -c /etc/patroni/patroni.yml edit-config <cluster> -s 'maximum_lag_on_failover=1048576' --force
# Parameters requiring a restart are flagged as 'Pending restart':
patronictl -c /etc/patroni/patroni.yml list <cluster> -e
# Restart replicas first, then the leader:
patronictl -c /etc/patroni/patroni.yml restart <cluster> --role replica --pending --force
patronictl -c /etc/patroni/patroni.yml restart <cluster> --role leader --pending --forceCe que fait la commande
Écrit les paramètres PostgreSQL et Patroni dans la configuration dynamique du DCS ; Patroni applique le changement à tous les membres, active immédiatement ceux qui sont rechargeables et signale ceux qui exigent un redémarrage comme 'Pending restart'.
Quand l'utiliser
Pour modifier de façon cohérente sur chaque nœud d'un cluster géré par Patroni des paramètres comme max_connections, shared_buffers ou work_mem.
Attention
Sous Patroni, ne modifiez pas postgresql.conf à la main et n'utilisez pas ALTER SYSTEM : Patroni réécrit postgresql.conf, et postgresql.auto.conf prime sur les réglages de Patroni, ce qui crée des divergences entre nœuds. Sur une standby, max_connections, max_worker_processes, max_wal_senders, max_prepared_transactions et max_locks_per_transaction ne peuvent pas être inférieurs à ceux de la primaire ; planifiez l'ordre des redémarrages en conséquence.
Voir aussi
- Afficher l'état, la topologie et l'historique du cluster Patroni
- Effectuer un switchover planifié avec Patroni
- Effectuer un failover manuel avec Patroni
- Reconstruire une réplique défaillante avec Patroni (reinit)
- Mettre Patroni en mode maintenance et en sortir (pause/resume)
- Vérifier la santé du DCS Patroni (etcd/Consul) et de l'API REST