Felsökning av patroni¶
Info
Hela proceduren ska utföras som root. För att höja dina privilegier till root kan du använda kommandot su -.
Varning
För att kunna följa denna procedur måste du ha utfört de ytterligare konfigurationerna för patronictl.
patroni är en orkestrerare för hög tillgänglighet för PostgreSQL. Den automatiserar hanteringen av ett PostgreSQL-cluster genom att sköta val av ledare, redundansväxling (failover) och synkronisering av noderna när en incident inträffar.
I PostgreSQL-clustret för CyberElements Bastion förlitar sig patroni på etcd för att lagra och dela clustrets tillstånd. Den övervakar kontinuerligt tillståndet för PostgreSQL-instanserna och säkerställer att endast en nod är utsedd till ledare vid varje given tidpunkt.
Om ledarnoden slutar fungera orkestrerar patroni automatiskt ett val via det distribuerade konfigurationslagret etcd, för att befordra en ny ledare och hålla tjänsten tillgänglig.
patroni är därför beroende av etcd och kan inte fungera korrekt om etcd inte fungerar.
Loggar¶
Hela proceduren bygger på loggarna för tjänsten patroni, som du hämtar med kommandot nedan:
1 | |
Tips
Lägg till alternativet -f i kommandot för att följa loggarna i realtid:
1 | |
Info
Loggarna för patroni finns också i /var/log/syslog.
Förklaring av felloggar¶
ERROR: Request to server https://<PSQL_NODE_NAME>:2379 failed: MaxRetryError("HTTPSConnectionPool(host='<PSQL_NODE_NAME>', port=2379)
När etcd inte fungerar eller inte kan nås kan patroni skriva följande fel:
1 2 3 4 5 6 7 8 | |
<PSQL_NODE_NAME>-
Namnet på en av noderna i PostgreSQL-clustret.
I så fall behöver du felsöka etcd.