Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Patroni usw.
Wir empfehlen Patroni
Patroni bietet auch die Möglichkeit APIs , den Status des PostgreSQL-Dienstes und die Rollen jeder DB-Instance oder jedes DB-Nodes zu überprüfen. Sie müssen Patroni auf jeder DB-Instance installieren, damit sie mit etcd (Distributed Configuration Store) funktioniert.
Standardmäßig konfiguriert Patroni PostgreSQL für die asynchrone Replikation. Die Wahl Ihrer Replikationsmethode hängt von Ihren geschäftlichen Überlegungen ab. Patroni ist eines der besten Tools für die Einrichtung von HA, da es hochgradig konfigurierbar ist. Hier sind einige der Vorteile der Verwendung von Patroni:
-
Es ist einfach, zwischen verschiedenen Replikationsmodi (synchron und asynchron) zu wechseln.
-
Patroni verfügt über eine umfangreiche REST-API. Patroni verwendet diese API für sich selbst, um während des Leader-Rennens Failovers durchzuführen, indem sie HAProxy
oder einen anderen Load Balancer zur Durchführung von HTTP-Gesundheitsprüfungen verwendet. -
Patroni muss vorübergehend die Verwaltung des Clusters beenden und gleichzeitig den Cluster-Status im Distributed Configuration Store (DCS) beibehalten. Sie möchten beispielsweise nicht, dass ein Failover während eines manuellen Wartungsfensters stattfindet. Patroni bietet Befehle zum Anhalten und Wiederaufnehmen, sodass Sie ungewollte Ausfallzeiten vermeiden können.
-
Um das Split-Brain-Problem zu vermeiden, muss Patroni sicherstellen, dass PostgreSQL keine Transaktions-Commits akzeptiert, nachdem der Leader-Schlüssel im DCS abgelaufen ist. Patroni unterstützt auch Geräte wie Watchdog, um das Split-Brain-Problem zu vermeiden. Weitere Informationen zum Split-Brain-Problem und zu Watchdog finden Sie unter Watchdog-Unterstützung in der Patroni-Dokumentation.
Architektur
Das folgende Diagramm zeigt die Architektur für die Einrichtung von HADR für Ihre lokale PostgreSQL-Datenbank auf Amazon mithilfe EC2 von Patroni und etcd.

Das Diagramm zeigt den folgenden Workflow:
-
Instanzen erstellen EC2 .
-
Installieren Sie eine PostgreSQL-Datenbank.
-
Installieren und konfigurieren Sie Patroni auf Instanzen. EC2
-
Erstellen und konfigurieren Sie einen Network Load Balancer.
-
Konfigurieren Sie jede PostgreSQL-Datenbank in etcd (für Patroni), um HA zu erhalten.
Überlegungen
Wir empfehlen Ihnen, Folgendes zu berücksichtigen, bevor Sie Ihre Migration mithilfe von Patroni starten:
-
Benutzer müssen über PostgreSQL-Administrations- und DCS-Kenntnisse verfügen, um Patroni verwenden zu können.
-
Patroni hat eine steile Lernkurve und es stehen viele Konfigurationsoptionen zur Auswahl.
-
Sie müssen zusätzliche Ports haben, die Patroni gewidmet sind.