DBAtlas · Atlas de operações de banco de dados

Alterar parâmetros de todo o cluster no Patroni (edit-config) e aplicar restarts pendentes

PostgreSQLPatroni

Comando

# 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 --force

O que faz

Grava parâmetros do PostgreSQL e do Patroni na configuração dinâmica do DCS; o Patroni aplica a mudança a todos os membros, ativa imediatamente os que permitem reload e marca os que precisam de restart como 'Pending restart'.

Quando usar

Para alterar de forma consistente, em todos os nós de um cluster gerenciado pelo Patroni, parâmetros como max_connections, shared_buffers ou work_mem.

Atenção

Sob o Patroni, não edite o postgresql.conf manualmente nem use ALTER SYSTEM: o Patroni reescreve o postgresql.conf, e o postgresql.auto.conf sobrepõe as configurações do Patroni, causando divergência entre os nós. max_connections, max_worker_processes, max_wal_senders, max_prepared_transactions e max_locks_per_transaction em um standby não podem ser menores que no primário; planeje a ordem dos restarts de acordo.

Abrir no DBAtlas →

Relacionados