将 Patroni 置于维护模式并恢复(pause/resume)
PostgreSQLPatroni命令
# Maintenance mode: automatic failover and Patroni's control over PostgreSQL stop
patronictl -c /etc/patroni/patroni.yml pause <cluster> --wait
patronictl -c /etc/patroni/patroni.yml list <cluster> # should show 'Maintenance mode: on'
# ... maintenance work (e.g. manual PostgreSQL restart, DCS maintenance) ...
patronictl -c /etc/patroni/patroni.yml resume <cluster> --wait作用
将集群置于维护模式:Patroni 不执行自动故障转移,也不会重启已停止的 PostgreSQL;resume 恢复正常管理。
适用场景
在 DCS(etcd/Consul)维护、Patroni 升级期间,或必须在 Patroni 不干预的情况下手动管理 PostgreSQL 时。
注意
如果暂停期间主库崩溃,不会自动故障转移,中断将持续。维护后不要忘记 resume;在告警中加入 'Maintenance mode' 检查。暂停期间手动将 PostgreSQL 作为主库启动可能导致脑裂。