Выполнить плановый switchover через Patroni
PostgreSQLPatroniКоманда
# Immediate switchover without confirmation:
patronictl -c /etc/patroni/patroni.yml switchover <cluster> --leader <leader_member> --candidate <member> --force
# Scheduled switchover (ISO 8601 timestamp with time zone):
patronictl -c /etc/patroni/patroni.yml switchover <cluster> --leader <leader_member> --candidate <member> --scheduled '2026-10-10T02:00:00+03:00' --force
# Cancel a pending scheduled switchover:
patronictl -c /etc/patroni/patroni.yml flush <cluster> switchoverЧто делает
Контролируемо понижает исправного leader и повышает выбранную реплику (--candidate); бывший leader автоматически подключается как реплика нового leader. --scheduled откладывает операцию до указанного времени.
Когда использовать
Чтобы перенести primary на другой узел перед обслуживанием (патчинг ОС, замена оборудования, обновление минорной версии) или восстановить исходные роли после failover.
Внимание
При смене leader все подключения разрываются; приложение должно уметь переподключаться. Patroni отклоняет switchover, если отставание кандидата превышает maximum_lag_on_failover. При включённом synchronous_mode кандидат должен быть синхронным standby.
Связанные материалы
- Показать состояние, топологию и историю кластера Patroni
- Выполнить ручной failover через Patroni
- Пересоздать сломанную реплику через Patroni (reinit)
- Изменить параметры всего кластера в Patroni (edit-config) и применить ожидающие перезапуски
- Перевести Patroni в режим обслуживания и обратно (pause/resume)
- Проверить работоспособность DCS Patroni (etcd/Consul) и REST API