DBAtlas · Atlas d'exploitation des bases de données

Effectuer un switchover planifié avec Patroni

PostgreSQLPatroni

Commande

# 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

Ce que fait la commande

Rétrograde de façon contrôlée le leader sain et promeut la réplique choisie (--candidate) ; l'ancien leader rejoint automatiquement le cluster comme réplique du nouveau leader. --scheduled reporte l'opération à l'heure indiquée.

Quand l'utiliser

Pour déplacer la primaire vers un autre nœud avant une maintenance (patch OS, remplacement matériel, mise à niveau mineure) ou pour rétablir les rôles d'origine après un failover.

Attention

Toutes les connexions sont coupées lors du changement de leader ; l'application doit pouvoir se reconnecter. Patroni refuse le switchover si le retard du candidat dépasse maximum_lag_on_failover. Avec synchronous_mode activé, le candidat doit être une standby synchrone.

Ouvrir dans DBAtlas →

Voir aussi