Durchführen eines kleineren Versionsupgrades - Amazon Aurora

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.

Durchführen eines kleineren Versionsupgrades

Sie können die folgenden Methoden verwenden, um die Nebenversion eines DB-Clusters zu aktualisieren oder einen DB-Cluster zu patchen:

Vor der Durchführung eines Nebenversions-Upgrades

Wir empfehlen Ihnen, die folgenden Aktionen durchzuführen, um die Ausfallzeit während eines Upgrades einer Nebenversion zu reduzieren:

So führen Sie Upgrades von Nebenversionen durch und wenden Patches an

Kleinere Versions-Upgrades und Patches sind AWS-Regionen erst nach gründlichen Tests verfügbar. Vor der Veröffentlichung von Upgrades und Patches testet Aurora PostgreSQL, um sicherzustellen, dass bekannte Sicherheitsprobleme, Fehler und andere Probleme, die nach der Veröffentlichung der Community-Nebenversion auftreten, die allgemeine Stabilität der Aurora PostgreSQL-Flotte nicht beeinträchtigen.

Sobald Aurora PostgreSQL neue Nebenversionen zur Verfügung stellt, können die Instances, aus denen Ihr Aurora-PostgreSQL-DB-Cluster besteht, während des angegebenen Wartungsfensters automatisch aktualisiert werden. Dazu muss für Ihren Aurora-PostgreSQL-DB-Cluster die Option Enable auto minor version upgrade (Automatische Aktualisierung von Nebenversionen aktivieren) ausgewählt sein. Für alle DB-Instances, aus denen Ihr Aurora-PostgreSQL-DB-Cluster besteht, muss die Option für das automatische Nebenversions-Upgrade (AmVU) aktiviert sein, damit das Nebenversions-Upgrade im gesamten Cluster angewendet werden kann.

Tipp

Stellen Sie sicher, dass die Option Enable auto minor version upgrade (Automatische Aktualisierung von Nebenversionen aktivieren) für alle PostgreSQL-DB-Instances ausgewählt ist, aus denen Ihr Aurora-PostgreSQL-DB-Cluster besteht. Diese Option muss aktiviert sein, damit jede Instance im DB-Cluster funktioniert. Informationen zum Festlegen der Einstellung Automatisches Unterversion-Upgrade und zur Funktionsweise der Einstellung, wenn sie auf Cluster- und Instance-Ebene angewendet wird, finden Sie unter  Automatische Nebenversions-Upgrades für Aurora-DB-Cluster.

Sie können den Wert der Option auto Upgrade der Nebenversion aktivieren für all Ihre Aurora PostgreSQL-DB-Cluster überprüfen, indem Sie den describe-db-instances AWS CLI Befehl mit der folgenden Abfrage verwenden.

aws rds describe-db-instances \ --query '*[].{DBClusterIdentifier:DBClusterIdentifier,DBInstanceIdentifier:DBInstanceIdentifier,AutoMinorVersionUpgrade:AutoMinorVersionUpgrade}'

Diese Abfrage gibt eine Liste aller Aurora-DB-Cluster und ihrer Instances mit dem Wert true oder false für den Status der Einstellung AutoMinorVersionUpgrade zurück. Bei dem abgebildeten Befehl wird davon ausgegangen, dass Sie Ihre AWS CLI Konfiguration so konfiguriert haben, dass sie auf Ihre Standardeinstellung abzielt. AWS-Region

Weitere Informationen zur AmVU-Option und darüber, wie Sie Ihren Aurora-DB-Cluster ändern, um diese u verwenden zu können, finden Sie unter Automatische Nebenversions-Upgrades für Aurora-DB-Cluster.

Sie können Ihren Aurora-PostgreSQL-DB-Cluster auf neue Nebenversionen aktualisieren, indem Sie entweder auf Wartungsaufgaben reagieren oder den Cluster so ändern, dass er die neue Version verwendet.

Sie können alle verfügbaren Upgrades oder Patches für Ihre Aurora-PostgreSQL-DB-Cluster identifizieren, indem Sie die RDS-Konsole verwenden und das Menü Recommendations (Empfehlungen) öffnen. Dort finden Sie eine Liste verschiedener Wartungsprobleme wie Old minor versions (Alte Nebenversionen) aus. Abhängig von Ihrer Produktionsumgebung können Sie mit Schedule (Planen) das Upgrade planen oder mit Apply now (Jetzt anwenden) sofort Maßnahmen ergreifen, wie im Folgenden gezeigt.

Das Konsolenabbild zeigt eine Empfehlung zum Upgrade auf eine neuere Nebenversion.

Weitere Informationen zum Verwalten eines Aurora-DB-Clusters, einschließlich der manuellen Anwendung von Patches und Nebenversions-Upgrades, finden Sie unter Warten eines Amazon Aurora-DB-Clusters.

Nebenversions-Upgrades und Zero-Downtime-Patching

Beim Upgrade eines AuroraPostgreSQL-DB-Clusters kann es zu einem Ausfall kommen. Beim Upgrade-Prozess wird die Datenbank heruntergefahren, während sie aktualisiert wird. Wenn Sie das Upgrade starten, während die Datenbank ausgelastet ist, verlieren Sie alle Verbindungen und Transaktionen, die der DB-Cluster verarbeitet. Wenn Sie warten, bis die Datenbank im Leerlauf ist, um das Upgrade durchzuführen, müssen Sie möglicherweise lange warten.

Die Funktion „Null-Downtime Patching“ (ZDP, Patchen ohne Ausfallzeiten) verbessert den Upgrade-Prozess. Mit dem ZDP können sowohl Upgrades als auch Patches mit minimalen Auswirkungen auf Ihren Aurora-PostgreSQL-DB-Cluster angewendet werden. ZDP wird verwendet, wenn Patches oder neuere Upgrades von Nebenversionen auf Aurora-PostgreSQL-Versionen und anderen höheren Versionen dieser Nebenversionen und neueren Hauptversionen angewendet werden. Das heißt, bei einem Upgrade auf neue Nebenversionen nach einer dieser Versionen wird ZDP verwendet.

Die folgende Tabelle zeigt die Aurora-PostgreSQL-Versionen und DB-Instance-Klassen, in denen ZDP verfügbar ist:

Version db.r*-Instance-Klassen db.t*-Instance-Klassen db.x*-Instance-Klassen db.serverless-Instance-Klasse
10.21.0 und höhere 10.21-Versionen Ja Ja Ja N/A
11.16.0 und höhere 11.16-Versionen Ja Ja Ja N/A
11.17 und höhere Versionen Ja Ja Ja N/A
12.11.0 und höhere 12.11-Versionen Ja Ja Ja N/A
12.12 und höhere Versionen Ja Ja Ja N/A
13.7.0 und höhere 13.7-Versionen Ja Ja Ja N/A
13.8 und höhere Versionen Ja Ja Ja Ja
14.3.1 und höhere 14.3-Versionen Ja Ja Ja N/A
14.4.0 und höhere 14.4-Versionen Ja Ja Ja N/A
14.5 und höhere Versionen Ja Ja Ja Ja
15.3 und höhere Versionen Ja Ja Ja Ja
16.1 und höhere Versionen Ja Ja Ja Ja

Während des Upgrade-Vorgangs mit ZDP sucht die Datenbank-Engine nach einem ruhigen Punkt, um alle neuen Transaktionen anzuhalten. Diese Aktion schützt die Datenbank bei Patches und Upgrades. Um sicherzustellen, dass Ihre Anwendungen bei unterbrochenen Transaktionen reibungslos laufen, empfehlen wir, die Logik für Wiederholversuche in Ihren Code zu integrieren. Dieser Ansatz stellt sicher, dass das System kurze Ausfallzeiten ohne Fehler bewältigen und die neuen Transaktionen nach dem Upgrade erneut versuchen kann.

Wenn ZDP erfolgreich abgeschlossen wird, werden Anwendungssitzungen, mit Ausnahme von Sitzungen mit unterbrochenen Verbindungen, beibehalten und die Datenbank-Engine wird während des laufenden Upgrades neu gestartet. Der Neustart der Datenbank-Engine kann zwar zu einem vorübergehenden Abfall des Durchsatzes führen, dieser dauert jedoch normalerweise nur wenige Sekunden oder maximal etwa 1 Minute.

In einigen Fällen ist das Zero-Downtime-Patching (ZDP) möglicherweise nicht erfolgreich. Parameteränderungen, die sich auf Ihrem DB-Cluster von Aurora PostgreSQL oder dessen Instances im Status pending befinden, beeinträchtigen ebenfalls ZDP.

Metriken und Ereignisse für ZDP-Operationen finden Sie auf der Seite Events (Ereignisse) in der Konsole. Zu den Ereignissen gehören der Start des ZDP-Upgrades und der Abschluss des Upgrades. In diesem Fall können Sie feststellen, wie lange der Prozess gedauert hat und wie viele Verbindungen während des Neustarts aufrecht erhalten und abgebrochen wurden. Details finden Sie in Ihrem Datenbank-Fehlerprotokoll.

Einschränkungen beim Patchen ohne Ausfallzeiten

Die folgenden Einschränkungen gelten für Patches ohne Ausfallzeiten:

  • ZDP versucht, die aktuellen Client-Verbindungen zu Ihrer Aurora PostgreSQL Writer-Instance während des Aurora PostgreSQL-Upgrade-Vorgangs beizubehalten. In den folgenden Fällen werden die Verbindungen jedoch unterbrochen, damit ZDP den Vorgang abschließen kann:

    • Wenn lang dauernde Abfragen oder Transaktionen ausgeführt werden.

    • Data Definition Language (DDL)-Anweisungen werden ausgeführt.

    • Es werden temporäre Tabellen verwendet oder Tabellensperren sind aktiv.

    • Alle Sitzungen überwachen Benachrichtigungskanäle.

    • Ein Cursor mit dem Status 'WITH HOLD' wird verwendet.

    • TLSv1.1 Verbindungen werden verwendet. Beginnend mit Aurora PostgreSQL-Versionen nach 16.1, 15.3, 14.8, 13.11, 12.15 und 11.20 wird ZDP mit 3.3-Verbindungen unterstützt. TLSv1

  • ZDP wird in folgenden Fällen nicht unterstützt:

    • Wenn Aurora PostgreSQL-DB-Cluster konfiguriert sind als Aurora Serverless v1.

    • Während des Upgrades aller Aurora-Reader-Instanzen.

    • Während des Upgrades aller Aurora-Reader-Instances, die Teil eines Aurora Global Database-Clusters in einer sekundären Region sind.

    • Während Betriebssystem-Patches und Betriebssystem-Upgrades.

Durchführen eines Upgrades der Aurora-PostgreSQL-Engine auf eine neue Nebenversion

Sie können Ihren Aurora PostgreSQL-DB-Cluster mithilfe der Konsole, der oder der RDS-API auf eine neue Nebenversion aktualisieren. AWS CLI Bevor Sie das Aktualisieren durchführen, wird das Befolgen der selben bewährten Methoden empfohlen, die für Upgrades der Hauptversion empfohlen wird. Wie bei neuen Hauptversionen können auch neue Nebenversionen Optimizer-Verbesserungen aufweisen, z. B. Korrekturen, die Regressionen des Abfrageplans verursachen können. Um die Stabilität des Plans zu gewährleisten, wird die Verwendung der Erweiterung Query Plan Management (QPM) empfohlen, wie inSicherstellen der Planstabilität nach einem größeren Versions-Upgrade.

So aktualisieren Sie die Engine-Version Ihres Aurora-PostgreSQL-DB-Clusters.
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Databases (Datenbanken) und dann den DB-Cluster aus, den Sie upgraden möchten.

  3. Wählen Sie Ändern aus. Die Seite DB-Cluster ändern wird angezeigt.

  4. Wählen Sie für Motorversion die neue Version.

  5. Klicken Sie auf Weiter und überprüfen Sie die Zusammenfassung aller Änderungen.

  6. Wählen Sie Apply immediately, um die Änderungen sofort anzuwenden. Die Auswahl dieser Option kann in einigen Fällen einen Ausfall verursachen. Weitere Informationen finden Sie unter Ändern eines Amazon Aurora-DB-Clusters.

  7. Überprüfen Sie auf der Bestätigungsseite Ihre Änderungen. Wenn sie korrekt sind, wählen Sie Modify Cluster (Cluster ändern) aus, um Ihre Änderungen zu speichern.

    Oder klicken Sie auf Zurück, um Ihre Änderungen zu bearbeiten, oder auf Abbrechen, um Ihre Änderungen zu verwerfen.

Um die Engine-Version eines DB-Clusters zu aktualisieren, verwenden Sie den modify-db-cluster AWS CLI Befehl mit den folgenden Parametern:

  • --db-cluster-identifier – Der Name Ihres Aurora-PostgreSQL-DB-Clusters.

  • --engine-version – die Versionsnummer der Datenbank-Engine, auf die das Upgrade durchgeführt wird Verwenden Sie den AWS CLI describe-db-engine-versionsBefehl, um Informationen zu gültigen Engine-Versionen zu erhalten.

  • --no-apply-immediately – Änderungen im nächsten Wartungszeitraum anwenden Verwenden Sie --apply-immediately, um Änderungen sofort anzuwenden.

Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Linux, macOS, oder Unix:

aws rds modify-db-cluster \ --db-cluster-identifier mydbcluster \ --engine-version new_version \ --no-apply-immediately

Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Windows:

aws rds modify-db-cluster ^ --db-cluster-identifier mydbcluster ^ --engine-version new_version ^ --no-apply-immediately

Verwenden Sie den DBCluster Vorgang Ändern, um die Engine-Version eines DB-Clusters zu aktualisieren. Geben Sie die folgenden Parameter an:

  • DBClusterIdentifier – der Name des DB-Clusters, z. B mydbcluster

  • EngineVersion – die Versionsnummer der Datenbank-Engine, auf die das Upgrade durchgeführt wird Informationen zu gültigen Engine-Versionen erhalten Sie mit dem Vorgang DBEngineDescribe Versions.

  • ApplyImmediately – Änderungen sofort oder während des nächsten Wartungszeitraums anwenden Legen Sie den Wert auf fest, um Änderungen sofort anzuwende true. Legen Sie den Wert auf fest, um Änderungen im nächsten Wartungszeitraum durchzuführe false.