Pereiti prie turinio

LEADER mazgo perjungimas

Kai kuriais priežiūros atvejais gali būti naudinga perjungti PostgreSQL klasterio LEADER mazgą, kad su juo būtų galima atlikti operacijas.

Prieš keisdami LEADER mazgą, nustatykite dabartinį LEADER mazgą PostgreSQL klasteryje ir prisijunkite prie jo kaip root.
Prisijungę prie LEADER mazgo kaip root, paleiskite komandą, panašią į toliau pateiktą, kad nedelsiant inicijuotumėte perjungimą:

1
patronictl -c /etc/patroni/config.yml failover --candidate PSQL_NODE --force

Pakeiskite PSQL_NODE mazgo, kuris taps LEADER, pavadinimu.

Nesėkmė

Jei komanda nepavyksta, gali būti, kad nebuvo pritaikyti šie parametrai: patronictl parametrai.

Pavyzdys

Šiam PostgreSQL klasteriui:

1
2
3
4
5
6
7
+ Cluster: 15-cleanroomvault5 ------+---------+---------+----+-----------+
| Member           | Host           | Role    | State   | TL | Lag in MB |
+------------------+----------------+---------+---------+----+-----------+
| PSQL_3           | psql_3         | Leader  | running | 2  |           |
| + PSQL_1         | psql_1         | Replica | running | 2  | 0         |
| + PSQL_2         | psql_2         | Replica | running | 2  | 0         |
+------------------+----------------+---------+---------+----+-----------+

Tikslas – padaryti mazgą PSQL_1 LEADER mazgu.
Todėl pirmiausia reikia prisijungti kaip root prie mazgo PSQL_3, kuris šiuo metu yra LEADER.
Prisijungus šia komanda LEADER nedelsiant perjungiamas į mazgą PSQL_1:

1
patronictl -c /etc/patroni/config.yml failover --candidate PSQL_1 --force

Tada topologijos pakeitimą galima matyti ir patikrinti:

1
2
3
4
5
6
7
+ Cluster: 15-cleanroomvault5 ------+---------+---------+----+-----------+
| Member           | Host           | Role    | State   | TL | Lag in MB |
+------------------+----------------+---------+---------+----+-----------+
| PSQL_1           | psql_1         | Leader  | running | 3  |           |
| + PSQL_3         | psql_3         | Replica | running | 3  | 0         |
| + PSQL_2         | psql_2         | Replica | running | 3  | 0         |
+------------------+----------------+---------+---------+----+-----------+