In diesem Dokument wird beschrieben, wie Sie VM-Erweiterungsrichtlinien erstellen, mit denen Sie Erweiterungen automatisch auf einer Flotte von Compute Engine-VMs installieren und verwalten können. Durch das Definieren einer Richtlinie können Sie dafür sorgen, dass bestimmte Erweiterungen auf allen VMs installiert und gewartet werden, die von Ihnen angegebene Kriterien wie VM-Labels erfüllen.
Hinweise
- Installieren Sie die Betakomponente mit dem folgenden Befehl:
gcloud components install beta
- Grundlagen zu VM Extension Manager
- VM Extension Manager-Kontingente
- Aktivieren Sie die Compute Engine API in Ihrem Google Cloud Projekt, falls sie noch nicht aktiviert ist.
- Achten Sie darauf, dass auf Ihrer VM die Gast-Agent-Version
20241209.01oder höher ausgeführt wird. - Wenn Sie Debug-Logs für VM Extension Manager-Ereignisse aufrufen möchten, konfigurieren Sie die Logeinstellungen für den Gast-Agent.
-
Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben.
Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud Dienste und APIs überprüft. Zum Ausführen von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei der Compute Engine authentifizieren:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Installieren Sie die Google Cloud CLI. Initialisieren Sie die Google Cloud CLI nach der Installation mit dem folgenden Befehl:
gcloud initWenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.
- Set a default region and zone.
Erforderliche IAM-Rollen
Um die Berechtigung zum Erstellen einer Erweiterungsrichtlinie zu erhalten, bitten Sie Ihren Administrator, Ihnen die IAM-Rolle VM Extension Policy Admin (
roles/compute.vmExtensionPolicyAdmin) zuzuweisen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.Diese vordefinierte Rolle enthält die Berechtigung
compute.vmExtensionPolicies.create, die zum Erstellen einer Erweiterungsrichtlinie erforderlich ist.Sie können diese Berechtigung auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Weitere Informationen zu IAM-Rollen und ‑Berechtigungen in Compute Engine finden Sie unter Compute Engine-Rollen und ‑Berechtigungen.
VM-Erweiterungsrichtlinie erstellen
Verwenden Sie eine der folgenden Methoden, um eine VM-Erweiterungsrichtlinie zu erstellen. Mit dieser Richtlinie wird festgelegt, welche Erweiterungen auf welchen VMs installiert werden sollen.
Console
- Rufen Sie in der Google Cloud Console die Seite VM-Erweiterungsrichtlinien auf.
- Klicken Sie auf Erweiterungsrichtlinie erstellen.
- Geben Sie im Feld Name einen Namen für die Richtlinie ein.
- Optional: Geben Sie im Feld Beschreibung eine Beschreibung für die Richtlinie ein.
- Geben Sie im Feld Priorität eine Prioritätsnummer an, um Konflikte zwischen Richtlinien zu beheben. Niedrigere Zahlen bedeuten eine höhere Priorität. Der Standardwert ist 1.000.
- Wählen Sie in der Liste Zone die Zone aus, in der Sie diese Richtlinie anwenden möchten.
- Klicken Sie im Bereich Erweiterungen auf Erweiterung hinzufügen und gehen Sie für jede Erweiterung, die Sie auf den Ziel-VMs installieren möchten, so vor:
- Wählen Sie in der Liste Erweiterung eine Erweiterung aus. Weitere Informationen
- Geben Sie in der Liste Version die Versionsnummer der Erweiterung an. Lassen Sie das Feld leer, um die neueste Version auszuwählen.
- Für den Ops-Agent können Sie die Version
2.58.0oder höher angeben. - Lassen Sie das Feld für die Erweiterung für SAP und die Erweiterung für Compute-Arbeitslasten leer, um die aktuelle Version auszuwählen.
- Für den Ops-Agent können Sie die Version
- Optional: Geben Sie im Feld Inhalt der Konfigurationsdatei Konfigurationsparameter für die Erweiterung ein.
- Wählen Sie im Abschnitt Ziel-VM-Instanzen die VMs für die Richtlinie aus. Wenn Sie VMs mit bestimmten Labels auswählen möchten, klicken Sie auf Labels hinzufügen und fügen Sie das Schlüssel/Wert-Paar hinzu.
- Klicken Sie auf Erstellen.
gcloud
Verwenden Sie den Befehl
gcloud beta compute zone-vm-extension-policies create, um eine VM-Erweiterungsrichtlinie zu erstellen und die Richtlinie auf VMs in einer bestimmten Zone anzuwenden:gcloud beta compute zone-vm-extension-policies create POLICY_NAME \ --zone=ZONE \ --description="DESCRIPTION" \ --extensions=EXTENSION_NAME_1,EXTENSION_NAME_2 \ --version=EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2 \ --config-from-file=EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2 \ --inclusion-labels=KEY_1=VALUE_1 \ --priority=PRIORITY
Ersetzen Sie Folgendes:
POLICY_NAME: Ein Name für die VM-Erweiterungsrichtlinie.ZONE: die Zone, in der diese Richtlinie gilt.DESCRIPTION: eine optionale Beschreibung der Richtlinie.EXTENSION_NAME_1,EXTENSION_NAME_2: Eine durch Kommas getrennte Liste der Erweiterungen, die der Richtlinie hinzugefügt werden sollen. Sie müssen mindestens eine Erweiterung angeben. Gültige Werte für die Erweiterungen sind:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2: Eine durch Kommas getrennte Liste von Schlüssel/Wert-Paaren, wobei der Schlüssel der Name der Erweiterung und der Wert die Version der Erweiterung ist. Wenn Sie keine Version für eine Erweiterung angeben, verwendet VM Extension Manager die neueste verfügbare Version und führt automatisch ein Upgrade durch, wenn neue Versionen verfügbar werden.EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2: eine durch Kommas getrennte Liste von Schlüssel/Wert-Paaren, wobei der Schlüssel der Name der Erweiterung und der Wert der Pfad zur Konfigurationsdatei für diese Erweiterung ist. Dieser Pfad befindet sich auf der VM, auf der Sie dengcloud-Befehl ausführen, nicht auf der VM, auf der Sie die Erweiterung installieren.Alternativ können Sie die Konfiguration als Inline-String angeben. Verwenden Sie dazu das Flag
--configanstelle von--config-from-file, z. B.EXTENSION_NAME_1="CONFIG_1". Sie können entweder--config-from-fileoder--configverwenden, aber nicht beides im selben Befehl.KEY_1=VALUE_1: Eine durch Kommas getrennte Liste von Schlüssel/Wert-Paaren, die Einschlusslabels für einen Selektor definieren. VMs müssen alle angegebenen Labels in einem Selektor haben, damit sie als Ziel infrage kommen. Wenn Sie--inclusion-labelsmehrmals angeben, richtet sich die Richtlinie an VMs, die einen beliebigen der angegebenen Selektoren entsprechen (logisches ODER). Wenn Sie dieses Flag weglassen, gilt die Richtlinie für alle VMs in der angegebenen Zone.PRIORITY: Eine Ganzzahl zwischen 0 und 65.535, die die Priorität der Richtlinie definiert. Niedrigere Zahlen bedeuten eine höhere Priorität. Der Standardwert ist 1.000.Der Befehl schlägt fehl, wenn in der Zone bereits eine Richtlinie mit dem angegebenen Namen vorhanden ist.
Beispiel 1
Mit dem folgenden Befehl wird eine Richtlinie mit dem Namen
test-extension-policyerstellt, mit der die Erweiterungops-agentin der Zoneus-central1-ffür das Projekttest-projectinstalliert wird. Das Flag--config-from-filegibt den Pfad zu einer lokalen Datei mit einer YAML-Konfiguration für den Ops-Agent an.gcloud beta compute zone-vm-extension-policies create test-extension-policy \ --project=test-project \ --zone=us-central1-f \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml"
Beispiel 2
Mit dem folgenden Befehl wird eine Richtlinie mit dem Namen
test-extension-policy-2erstellt, die die Erweiterungops-agentin der Zoneus-central1-ffür das Projekttest-projectauf VMs mit dem Labelenv=prodinstalliert. Die Richtlinienpriorität ist auf500festgelegt und das Flag--config-from-filegibt den Pfad zu einer lokalen Datei mit einer YAML-Konfiguration für den Ops-Agent an.gcloud beta compute zone-vm-extension-policies create test-extension-policy-2 \ --project=test-project \ --zone=us-central1-f \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml" \ --priority=500 \ --inclusion-labels=env=prod
Nächste Schritte
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2025-12-10 (UTC).
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-12-10 (UTC)."],[],[]] -