Hinweis:
- Dieses Tutorial erfordert Zugriff auf Oracle Cloud. Informationen zur Registrierung für einen kostenlosen Account finden Sie unter Erste Schritte mit Oracle Cloud Infrastructure Free Tier.
- Es verwendet Beispielwerte für Oracle Cloud Infrastructure-Zugangsdaten, -Mandanten und -Compartments. Ersetzen Sie diese Werte nach Abschluss der Übung durch Werte, die für Ihre Cloud-Umgebung spezifisch sind.
Automatisieren Sie Switchover- und Failover-Pläne für OCI Kubernetes Engine (zustandsbehaftet) mit OCI Full Stack Disaster Recovery
Einführung
Oracle Cloud Infrastructure Full Stack Disaster Recovery (OCI Full Stack DR) orchestriert den Übergang von Compute, Datenbank und Anwendungen zwischen Oracle Cloud Infrastructure-(OCI-)Regionen aus der ganzen Welt mit einem einzigen Klick. Kunden können die erforderlichen Schritte zur Wiederherstellung eines oder mehrerer Geschäftssysteme automatisieren, ohne vorhandene Infrastruktur, Datenbanken oder Anwendungen neu zu entwerfen oder neu zu strukturieren und ohne spezielle Verwaltungs- oder Konvertierungsserver zu benötigen.
Oracle Cloud Infrastructure Kubernetes Engine (OKE) ist ein verwalteter Kubernetes-Service, der die Entwicklung, Bereitstellung und den Betrieb von containerisierten Workloads in großem Maßstab vereinfacht. Mit OKE können Sie schnell Kubernetes-Cluster erstellen, verwalten und nutzen, die zugrunde liegende OCI Compute-, Netzwerk- und Speicherservices nutzen.
Deployment-Architektur
Ziele
Die folgenden Aufgaben werden in diesem Tutorial behandelt.
- Aufgabe 1: Dynamische Gruppe und Policys für OKE und OCI Full Stack Disaster Recovery erstellen
- Aufgabe 2: Primäres OKE-Cluster zu den primären DR-Schutzgruppen hinzufügen
- Aufgabe 3: Volume-Gruppen zu den primären DR-Schutzgruppen hinzufügen
- Aufgabe 4: Standby-OKE-Cluster zu den Standby-DR-Schutzgruppen hinzufügen
- Aufgabe 5: Start-Drill-Plan erstellen
- Aufgabe 6: Start-Drill-Plan ausführen
- Aufgabe 7: Prüfen Sie die Anwendung, die auf dem Standby-OKE-Cluster ausgeführt wird
- Aufgabe 8: Stopp-Drill-Plan erstellen
- Aufgabe 9: Aufgliederungsplan stoppen
- Aufgabe 10: Bereinigung auf Standby-OKE-Cluster prüfen
Hinweis: In diesem Tutorial lautet die primäre Region Frankfurt, die Standbyregion Amsterdam.
Voraussetzungen
-
In diesem Tutorial wird davon ausgegangen, dass die DR-Schutzgruppen (DRPG) bereits vorhanden sind und dass in beiden Regionen DR-Pläne vorhanden sind.
-
In diesem Tutorial wird davon ausgegangen, dass der Reader über Administratorberechtigungen verfügt und dass die erforderlichen Oracle Cloud Infrastructure Identity and Access Management-(OCI IAM-)Policys für OCI Full Stack DR bereits vorhanden sind. Weitere Informationen finden Sie unter Identity and Access Management-(IAM-)Policys zur Verwendung von Full Stack DR konfigurieren und Policys für Full Stack Disaster Recovery.
-
In diesem Tutorial wird davon ausgegangen, dass für den Reader ein OKE-Cluster in der primären Region und ein Peer-Cluster in der Standbyregion bereitgestellt ist. Weitere Informationen finden Sie unter Cluster erstellen.
-
In diesem Tutorial wird davon ausgegangen, dass der Reader die MuShop-Anwendung, die im primären OKE-Cluster bereitgestellt ist, getrennt (gespielt) hat. Weitere Informationen finden Sie unter MuShop bereitstellen.
-
Die vom OKE-Cluster generierten Block-Volumes wurden bereits der Volume-Gruppe (
vg_oke_mushop
) hinzugefügt. Sie müssen eine Volume-Gruppe mit regionsübergreifender Replikation erstellen. Weitere Informationen finden Sie unter Volume-Gruppen erstellen. -
Erstellen Sie den OCI Object Storage-Bucket in der primären Region und der Standbyregion, um OKE-Backups zu speichern. Weitere Informationen finden Sie unter Object Storage.
Aufgabe 1: Dynamische Gruppe und Policys für OKE und OCI Full Stack DR erstellen
Mit diesen Policys kann der OCI Full Stack DR-Service auf den OCI Object Storage-Bucket zugreifen, um das Konfigurationsbackup hochzuladen. Die Policy für den Zugriff auf OCI Object Storage-Buckets aus dem OKE-Cluster hängt vom Clustertyp ab.
-
Erstellen Sie eine dynamische Gruppe und Policys für den Pool verwalteter Knoten.
-
Erstellen Sie eine dynamische Gruppe namens
<cluster1_dg>
.All {instance.compartment.id = '<compartment_ocid>'}
-
Erstellen Sie die folgenden Policys.
Allow dynamic-group cluster1_dg to manage object-family in compartment <compartment> Allow dynamic-group cluster1_dg to manage cluster-family in compartment <compartment>
-
-
Erstellen Sie die folgenden Policys für den virtuellen Knotenpool.
Allow any-user to manage objects in tenancy where all { request.principal.type = 'workload', request.principal.namespace = 'brie', request.principal.service_account = 'brie-reader', request.principal.cluster_id = '<Cluster_OCID>'} Allow any-user to manage objects in tenancy where all { request.principal.type = 'workload', request.principal.namespace = 'brie', request.principal.service_account = 'brie-creator', request.principal.cluster_id = '<Cluster_OCID>'}
Diese Policys erteilen Pods, die im Brie-Namespace mit dem Serviceaccount
brie-reader
oderbrie-creator
ausgeführt werden, um in den OCI Object Storage-Bucket zu lesen und zu schreiben. -
Erstellen Sie eine dynamische Gruppe und Policys für die Containerinstanz. Mit diesen Policys können vom OCI Full Stack DR-Service erstellte Laufzeitcontainerinstanzen auf das OKE-Cluster und den OCI Object Storage-Bucket zugreifen.
-
Erstellen Sie eine dynamische Gruppe namens
<bastion1_dg>
.All {resource.type='computecontainerinstance'}
-
Erstellen Sie die folgenden Policys.
Allow dynamic-group bastion1_dg to manage object-family in compartment <compartment> Allow dynamic-group bastion1_dg to manage cluster-family in compartment <compartment>
-
-
Erstellen Sie eine dynamische Gruppe und Policy für den Jump-Host.
Wenn Sie einen Jump-Host verwenden, kann OCI Full Stack DR mit dieser Policy auf das OKE-Cluster und die OCI-Objektspeicher-Buckets zugreifen. Wenn sich Jump-Host und Cluster in demselben Compartment befinden, können Sie Schritte zum Erstellen einer neuen dynamischen Gruppe und Policy vermeiden, um Zugriff auf den OCI Object Storage-Bucket zu erteilen.
-
Erstellen Sie eine dynamische Gruppe namens
<bastion1_dg>
.All {instance.compartment.id = '<compartment_ocid>'}
-
Erstellen Sie die folgende Policy.
Allow dynamic-group bastion1_dg to manage cluster-family in compartment <compartment>Allow dynamic-group bastion1_dg to manage cluster in compartment <compartment>
-
Hinweis: Wenn Sie
identity_domain_name
nicht vordynamic-group
aufnehmen, wird die Policy-Anweisung ausgewertet, als gehört die Gruppe zur Standardidentitätsdomain. Weitere Informationen finden Sie unter Funktionsweise von Policys.
Aufgabe 2: Primäres OKE-Cluster zu den primären DR-Schutzgruppen hinzufügen
-
Wählen Sie im primären DRPG (
DRPG_MUSHOP_FRA
) die Option Mitglieder aus, und klicken Sie auf Element hinzufügen. -
Wählen Sie OKE-Cluster als Ressourcentyp aus.
-
Geben Sie die folgenden erforderlichen Informationen ein.
- OKE-Cluster: Geben Sie ein OKE-Cluster ein.
- Backup: Geben Sie Backupinformationen ein.
- Backup-Bucket: Wählen Sie einen Bucket aus.
- Wählen Sie Backupzeitplan angeben aus.
- Plantyp: Geben Sie die Planart ein.
- Startzeit: Geben Sie die Startzeit in UTC ein.
- Intervall: Geben Sie das Intervall in Tagen ein.
- Die maximale Anzahl Backups, die aufbewahrt werden sollen (optional): Geben Sie die maximale Anzahl Backups ein.
- Wählen Sie Imagereplikation aus:
- Imagereplikations-Secret (optional): Wählen Sie das Image aus.
- Namespace (optional): Geben Sie den Namespace ein.
- Peer-OKE-Cluster: Wählen Sie das Peer-OKE-Cluster aus.
-
Wählen Sie Ich habe verstanden, dass ich alle vorhandenen Pläne aktualisieren und prüfen muss, und klicken Sie auf Hinzufügen.
Aufgabe 3: Volume-Gruppen zu den primären DR-Schutzgruppen hinzufügen
-
Wählen Sie im primären DRPG (
DRPG_MUSHOP_FRA
) die Option Mitglieder aus, und klicken Sie auf Element hinzufügen. -
Wählen Sie Volume-Gruppe als Ressourcentyp aus.
-
Geben Sie die folgenden erforderlichen Informationen ein.
- Volume-Gruppe: Wählen Sie die Volume-Gruppe aus.
-
Wählen Sie Ich habe verstanden, dass ich alle vorhandenen Pläne aktualisieren und prüfen muss, und klicken Sie auf Hinzufügen.
Aufgabe 4: Standby-OKE-Cluster zu Standby-DR-Schutzgruppen hinzufügen
-
Wählen Sie im Standby-DRPG (
DRPG_MUSHOP_AMS
) die Option Mitglieder aus, und klicken Sie auf Element hinzufügen. -
Wählen Sie OKE-Cluster als Ressourcentyp aus.
-
Geben Sie die folgenden erforderlichen Informationen ein.
- OKE-Cluster: Geben Sie ein OKE-Cluster ein.
- Backup: Geben Sie Backupinformationen ein.
- Backup-Bucket: Wählen Sie einen Bucket aus.
- Peer-OKE-Cluster: Wählen Sie das Peer-OKE-Cluster aus.
-
Wählen Sie Ich habe verstanden, dass ich alle vorhandenen Pläne aktualisieren und prüfen muss, und klicken Sie auf Hinzufügen.
Aufgabe 5: Startaufgliederungsplan erstellen
-
Wählen Sie im Standby-DRPG (
DRPG_MUSHOP_AMS
) die Option Pläne aus, und klicken Sie auf Plan erstellen. -
Geben Sie einen Namen für den Plan ein, wählen Sie unter Plantyp die Option Drill starten aus, und klicken Sie auf Erstellen.
Nach einigen Minuten zeigt der Plan den Status Aktiv an.
-
Wählen Sie den erstellten Plan aus, um dessen Inhalt anzuzeigen.
Aufgabe 6: Aufgliederungsplan starten ausführen
-
Wählen Sie den in Aufgabe 5 erstellten Plan aus.
-
Wählen Sie Vorabprüfungen aktivieren aus, und klicken Sie auf Plan ausführen.
Nach einigen Minuten zeigen alle Gruppen den Status Erfolgreich an.
Aufgabe 7: Auf dem Standby-OKE-Cluster ausgeführte Anwendung prüfen
Stellen Sie eine Verbindung zum Standby-OKE-Cluster her, und prüfen Sie, ob die Anwendung ausgeführt wird. Führen Sie für die Anwendung MuShop den folgenden Befehl aus.
kubectel get all -n mushop
Aufgabe 8: Aufgliederungsplan stoppen erstellen
-
Wählen Sie im Standby-DRPG (
DRPG_MUSHOP_AMS
) die Option Pläne aus, und klicken Sie auf Plan erstellen. -
Geben Sie einen Namen für den Plan ein, wählen Sie unter Plantyp die Option Drill starten aus, und klicken Sie auf Erstellen.
Nach einigen Minuten zeigt der Plan den Status Aktiv an.
Aufgabe 9: Aufgliederungsplan stoppen ausführen
-
Wählen Sie den in Aufgabe 8 erstellten Plan aus.
-
Wählen Sie Vorabprüfungen aktivieren aus, und klicken Sie auf Plan ausführen.
Nach einigen Minuten zeigen alle Gruppen den Status Succuss an.
Aufgabe 10: Bereinigung für Standby-OKE-Cluster prüfen
Melden Sie sich beim Standby-OKE-Cluster an, und prüfen Sie die Liste der Namespaces mit dem folgenden Befehl.
kubectl get namespaces
Nächste Schritte
Nachdem Sie die Aufgliederungspläne erstellt und ausgeführt haben, ist es jetzt an der Zeit, einen Switchover-Plan und einen Failover-Plan zu erstellen.
Es gibt zwei Best Practices, die in den normalen täglichen Betrieb integriert werden sollten, um die Bereitschaft Ihrer DR-Pläne sicherzustellen.
- Regelmäßige regelmäßige Ausführung von Prechecks.
- Regelmäßige regelmäßige Ausführung von DR-Drills.
Planen Sie wöchentliche Vorabprüfungen aller DR-Pläne in der Standby-DR-Schutzgruppe. Vorabprüfungen können jederzeit ausgeführt werden und haben keine Auswirkungen auf Produktions-Workloads. Dadurch wird die Integrität Ihrer DR-Pläne sichergestellt, fehlende Mitgliederressourcen, fehlende Netzwerke, die Unfähigkeit, erwartete Skripte zu finden, die von benutzerdefinierten Schritten aufgerufen werden, usw. abgefangen.
Eine weitere sehr wichtige Methode zur Validierung der Disaster Recovery-Bereitschaft besteht darin, regelmäßige DR-Drills einmal im Monat oder Quartal zu planen. DR-Drills haben auch keine Auswirkungen auf Produktions-Workloads, bieten Ihnen jedoch die Möglichkeit, das Recovery von Compute-, Speicher-, Oracle-Datenbanken und Backend-Sets für Load Balancer in der Standbyregion mit nur einem Mausklick zu validieren. Weitere Informationen:
-
OCI Full Stack Disaster Recovery erweitert seine integrierten Funktionen für Datenbank und Speicher
-
OCI Full Stack Disaster Recovery Load Balancer-Unterstützung
Verwandte Links
-
Oracle Cloud Infrastructure (OCI) Full Stack Disaster Recovery
-
OKE-Cluster zu einer Disaster-Recovery-Schutzgruppe hinzufügen
Danksagungen
- Autor – Raphael Teixeira (Hauptmitglied des technischen Personals für Full Stack DR-Engineering)
Weitere Lernressourcen
Sehen Sie sich andere Übungen zu docs.oracle.com/learn an, oder greifen Sie im Oracle Learning YouTube-Channel auf weitere kostenlose Lerninhalte zu. Besuchen Sie außerdem education.oracle.com/learning-explorer, um Oracle Learning Explorer zu werden.
Die Produktdokumentation finden Sie im Oracle Help Center.
Automate Switchover and Failover Plans for OCI Kubernetes Engine (Stateful) with OCI Full Stack Disaster Recovery
G26595-01
February 2025
Copyright ©2025, Oracle and/or its affiliates.