Effectuer un switchover planifié avec Patroni
PostgreSQLPatroniCommande
# 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> switchoverCe 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.
Voir aussi
- Afficher l'état, la topologie et l'historique du cluster Patroni
- Effectuer un failover manuel avec Patroni
- Reconstruire une réplique défaillante avec Patroni (reinit)
- Modifier les paramètres du cluster dans Patroni (edit-config) et appliquer les redémarrages en attente
- Mettre Patroni en mode maintenance et en sortir (pause/resume)
- Vérifier la santé du DCS Patroni (etcd/Consul) et de l'API REST