diff --git a/HowtoPatroni.md b/HowtoPatroni.md index 6396252d..17697f93 100644 --- a/HowtoPatroni.md +++ b/HowtoPatroni.md @@ -137,4 +137,50 @@ La configuration se découpe en plusieurs parties que nous allons décrire. - `nofailover` : contrôle si ce nœud est autorisé a devenir leader - `noloadbalance` : Si c'est défini sur `true`, le nœud renverra un code HTTP 503 pour la vérification de l'API REST sur GET /replica, il sera donc exclu de l'équilibrage de charge - `clonefrom` : Si c'est défini sur `true`, d'autres nœuds peuvent préférer utiliser ce nœud pour l'amorçage (pg_basebackup). S'il y a plusieurs nœuds avec la balise clonefrom définie sur true, le nœud à partir duquel amorcer sera choisi au hasard. - - `nosync` : S'il est défini sur `true`, le nœud ne sera jamais sélectionné en tant que réplique synchrone. \ No newline at end of file + - `nosync` : S'il est défini sur `true`, le nœud ne sera jamais sélectionné en tant que réplique synchrone. + +Il faut également mettre en place un unité systemd dans `/etc/systemd/system/patroni.service` comme celle-ci par exemple : + +~~~ +[Unit] +Description=Runners to orchestrate a high-availability PostgreSQL +After=syslog.target network.target + +[Service] +Type=simple + +User=postgres +Group=postgres + +ExecStart=/usr/bin/patroni /etc/patroni/config.yml +KillMode=process +TimeoutSec=30 +Restart=no + +[Install] +WantedBy=multi-user.targ +~~~ + +Puis on recharge la configuration de systemd et on démarre patroni sur chaque nœud : + +~~~ +# systemctl daemon-reload +# systemctl start patroni.service +~~~ + +A ce stade patroni va lancer PostgreSQL, on peux regarder s'il a des erreurs dans `/var/log/syslog` + +On peux vérifié l'état du cluster, sur un des noeuds, avec la commande suivante : + +~~~ +# patronictl -c /etc/patroni/config.yml list + ++ Cluster: cluster (7120522414311271133) -------+----+-----------+ +| Member | Host | Role | State | TL | Lag in MB | ++-----------------+----------------+---------+---------+----+-----------+ +| cluster1 | 10.0.0.1 | Replica | running | 4 | 0 | +| cluster2 | 10.0.0.2 | Replica | running | 4 | 0 | +| cluster3 | 10.0.0.3 | Leader | running | 4 | | ++-----------------+----------------+---------+---------+----+-----------+ +~~~ +