In diesem Dokument erhalten Sie einen Überblick über globale Richtlinien in VM Extension Manager. Mit globalen Erweiterungsrichtlinien können Sie Erweiterungen in mehreren Zonen und Regionen innerhalb eines Projekts verwalten. Wenn Sie eine globale Richtlinie anwenden, sorgt VM Extension Manager dafür, dass auf VMs in allen Regionen oder Zonen, die den Richtlinienkriterien entsprechen, die angegebenen Erweiterungen installiert und ausgeführt werden.
Weitere Informationen finden Sie unter VM Extension Manager.
Das folgende Diagramm veranschaulicht, wie Sie mit einer globalen Erweiterungsrichtlinie Erweiterungen auf VMs in verschiedenen Zonen und Regionen in Ihrem Projekt anwenden können:
Wie im vorherigen Diagramm gezeigt, können Sie eine globale Erweiterungsrichtlinie auf Projektebene definieren. VM Extension Manager wendet diese Richtlinie auf alle VMs an, die Ihren Auswahlkriterien entsprechen. Sie können beispielsweise VMs mit dem Label env=prod in allen Zonen und Regionen des Projekts auswählen. In diesem Fall wendet VM Extension Manager die von Ihnen angegebenen Erweiterungen wie Ops-Agent und Extension for SAP nur auf diese VMs an.
Rolloutpläne für globale Richtlinien
Globale Richtlinien verwenden Rolloutpläne, um die Bereitstellung von Erweiterungen in Zonen und Regionen zu verwalten. Mit einem Rolloutplan können Sie die Bereitstellung von Erweiterungen steuern und so das Risiko weit verbreiteter Probleme minimieren. Mit einem Rolloutplan können Sie die Reihenfolge und den Zeitpunkt von Updates definieren, um einen schrittweisen und kontrollierten Rollout zu gewährleisten.
Wenn Sie eine globale Richtlinie erstellen oder aktualisieren, können Sie einen der folgenden Rolloutpläne angeben:
- Langsamer Rollout. Bei diesem Rollout werden Erweiterungen über einen bestimmten Zeitraum hinweg schrittweise in verschiedenen Zonen bereitgestellt. Der Standardzeitraum für diesen Rollout beträgt fünf Tage. Dieser Ansatz wird empfohlen, da Sie so potenzielle Probleme bei früheren Rollouts erkennen und beheben können, bevor sie sich auf Ihre gesamte Flotte auswirken.
- Schneller Rollout. Bei diesem Rollout werden Erweiterungen sofort auf allen Ziel-VMs in allen Zonen und Regionen bereitgestellt. Dieser Ansatz ist nützlich, wenn Sie eine Erweiterung oder einen Patch schnell in Nicht-Produktionsumgebungen bereitstellen müssen.
Sie können auch benutzerdefinierte Rolloutpläne definieren, um die Bereitstellungswellen basierend auf Zonen oder Regionen und die Wartezeit zwischen den Wellen anzugeben. Weitere
Informationen finden Sie in der rolloutPlans.insert
Methode.
Rollout-Konfliktverhalten
Wenn Sie eine globale Erweiterungsrichtlinie erstellen oder aktualisieren, kann es in den folgenden Situationen zu einem Konflikt kommen:
- Beim Erstellen einer globalen Richtlinie. Ein Konflikt im Richtliniennamen tritt auf, wenn in einer Zone bereits eine zonale Richtlinie mit demselben Namen wie die globale Richtlinie vorhanden ist.
- Beim Aktualisieren einer globalen Richtlinie. Ein Konflikt im Richtlinieninhalt tritt auf, wenn eine vorhandene zonale Richtlinie unabhängig vom Rollout der globalen Richtlinie geändert wurde. Wenn Sie beispielsweise eine zonale Richtlinie mit einem zonalen API-Aufruf ändern und bei einem nachfolgenden Rollout der globalen Richtlinie versucht wird, dieselbe zonale Richtlinie zu ändern, tritt ein Konflikt auf.
Um diese Konflikte zu vermeiden, können Sie ein Konfliktverhalten für den Rollout angeben. Mit dieser Einstellung wird festgelegt, ob die globale Richtlinie bei einem Rollout in Konflikt stehende zonale Richtlinien überschreiben soll. Sie können eines der folgenden Verhaltensweisen angeben:
- Nicht überschreiben (Standard). Wenn Sie kein Konfliktverhalten angeben, werden bei einem Rollout der globalen Richtlinie keine in Konflikt stehenden zonalen Richtlinien überschrieben. Die Konfiguration der zonalen Richtlinie hat in dieser Zone Vorrang.
- Überschreiben. Wenn Sie das Konfliktverhalten auf
overwritesetzen, überschreibt die globale Richtlinie in Konflikt stehende zonale Richtlinien und die Konfiguration der globalen Richtlinie wird in dieser Zone angewendet.
Rolloutkonflikte und Richtlinienpriorität sind separate Funktionen, die unabhängig voneinander funktionieren. Weitere Informationen zur Richtlinienpriorität finden Sie unter Richtlinienpriorität und Konflikt lösung.
Weitere Informationen zu Rolloutkonflikten finden Sie im conflictBehavior Parameter in der globalVmExtensionPolicies.insert
Methode.
Rollout wiederholen
Wenn Sie eine globale Erweiterungsrichtlinie aktualisieren oder löschen, startet VM Extension Manager einen neuen Rollout, um die Änderungen gemäß dem Rolloutplan anzuwenden. Wenn ein Rollout unterbrochen wird oder neue Zonen hinzugefügt werden, können Sie den Vorgang wiederholen, indem Sie einen neuen Rollout für dieselbe Richtlinie starten.
Rollout einer Updaterichtlinie wiederholen
In der folgenden Liste werden Szenarien beschrieben, in denen Sie möglicherweise den Rollout einer Updaterichtlinie wiederholen müssen:
- Neue Zonen hinzugefügt. Wenn nach dem Rollout einer globalen Richtlinie neue Google Cloud Zonen verfügbar werden, wendet VM Extension Manager vorhandene Richtlinien nicht automatisch auf die VMs in der neuen Zone an. Sie können den Rollout des Updates wiederholen, um die Erweiterungsrichtlinie auf VMs in den neuen Zonen anzuwenden.
- Änderungen an zonalen Richtlinien rückgängig machen. Wenn zonale Richtlinien unabhängig geändert wurden, z. B. durch einen zonalen API-Aufruf, können Sie einen Rollout des Updates wiederholen, wobei
conflictBehavioraufoverwritegesetzt ist. Mit dieser Einstellung wird die Konfiguration der globalen Richtlinie wieder angewendet und die Änderungen an der zonalen Richtlinie werden überschrieben. - Unterbrochener Rollout. Wenn ein vorheriger Rollout vor Abschluss fehlschlägt, können Sie einen neuen Rollout starten, um das Update zu wiederholen.
- Rollout beschleunigen. Wenn ein laufender Rollout zu langsam voranschreitet, können Sie einen neuen Rollout mit einem
FAST_ROLLOUT-Plan oder einem benutzerdefinierten Rolloutplan starten, um den Updatevorgang zu beschleunigen.
Weitere Informationen finden Sie im retryUuid Parameter in der
globalVmExtensionPolicies.update Methode.
Wenn Sie einen Rollout wiederholen, müssen Sie eine universell eindeutige Kennung (Universally Unique Identifier, UUID) angeben, um die Wiederholungsanfrage zu identifizieren.
Sie können einen beliebigen UUID-Generator verwenden, um eine UUID zu erstellen. Die UUID muss das hexadezimale 32-Zeichen-Format verwenden, z. B. a1a2a3a4-b1b2-c1c2-d1d2-d3d4d5d6d7d8.
Rollout zum Löschen einer Richtlinie wiederholen
In der folgenden Liste werden Szenarien beschrieben, in denen Sie möglicherweise den Rollout zum Löschen einer Richtlinie wiederholen müssen:
- Unterbrochener Rollout. Wenn ein vorheriger Rollout zum Löschen einer Richtlinie unterbrochen wurde oder nicht erfolgreich abgeschlossen wurde, können Sie einen neuen Rollout starten, um den Löschvorgang zu wiederholen.
- Rollout beschleunigen. Wenn ein laufender Rollout zum Löschen zu langsam voranschreitet, können Sie einen neuen Rollout mit einem
FAST_ROLLOUT-Plan oder einem benutzerdefinierten Rolloutplan starten, um den Löschvorgang zu beschleunigen.
Weitere Informationen finden Sie im retryUuid Parameter in der
globalVmExtensionPolicies.delete Methode.
Nächste Schritte
Weitere Informationen zum Verwalten von Erweiterungen finden Sie in den folgenden Ressourcen:
- VM-Erweiterungen durch Erstellen von Erweiterungsrichtlinien installieren
- VM-Erweiterungen mit Erweiterungsrichtlinien verwalten