Ga naar inhoud

De node LEADER omschakelen

In sommige onderhoudsgevallen kan het nuttig zijn de node LEADER van het PostgreSQL-cluster om te schakelen om er bewerkingen op uit te voeren.

Voordat u de node LEADER kunt wijzigen, identificeert u de huidige node LEADER van het PostgreSQL-cluster en maakt u er als root verbinding mee.
Zodra u als root verbonden bent met de node LEADER, voert u een opdracht uit die vergelijkbaar is met de volgende om de onmiddellijke omschakeling te activeren:

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

Vervang PSQL_NODE door de naam van de node die LEADER wordt.

Mislukt

Als de opdracht mislukt, zijn de volgende instellingen mogelijk niet toegepast: instellingen voor patronictl.

Voorbeeld

Voor het volgende PostgreSQL-cluster:

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         |
+------------------+----------------+---------+---------+----+-----------+

Het doel is om de node PSQL_1 als LEADER in te stellen.
Er moet dus eerst als root verbinding worden gemaakt met de node PSQL_3, die de huidige LEADER is.
Zodra de verbinding tot stand is gebracht, maakt het uitvoeren van de volgende opdracht de onmiddellijke omschakeling van de LEADER naar de node PSQL_1 mogelijk:

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

De wijziging van de topologie is daarna zichtbaar en controleerbaar:

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         |
+------------------+----------------+---------+---------+----+-----------+