Agent-Richtlinien ermöglichen die automatische Installation und Wartung des Ops-Agents in einer Reihe von Compute Engine-VMs, die benutzerdefinierten Kriterien entsprechen. Sie können mit einem einzigen Befehl eine Richtlinie für ein Google Cloud-Projekt erstellen, die mit diesem Google Cloud-Projekt verknüpfte vorhandene und neue VMs regelt. So wird eine ordnungsgemäße Installation und Deinstallation des Ops-Agents auf diesen VMs gewährleistet.
Agent-Richtlinien für den Ops-Agent
Unterstützung für Agent-Richtlinien für den Ops-Agent ist im Google Cloud SDK auf zwei Releasestufen verfügbar: GA und Beta. Beide Richtlinientypen beruhen auf OS Config-Features, die von VM Manager bereitgestellt werden. Die Implementierungen unterscheiden sich jedoch. Wir empfehlen, wenn möglich, die GA-Richtlinien zu verwenden. In den meisten Fällen können Sie Beta-Richtlinien in GA-Richtlinien umwandeln.
In diesem Abschnitt werden die Unterschiede zwischen den Beta- und GA-Agent-Richtlinien beschrieben. Informationen zum Erstellen und Verwalten von Agent-Richtlinien finden Sie unter:
Unterschiede zwischen Beta- und GA-Agent-Richtlinien
Agent-Richtlinien, die von den Beta- und GA-compute instances ops-agents policies
-Befehlsgruppen erstellt wurden, unterscheiden sich in folgender Weise:
Unterstützung für den Legacy-Monitoring-Agent und den Logging-Agent
- Beta-Agent-Richtlinien können den Legacy-Monitoring-Agent und den Logging-Agent sowie den Ops-Agent verwalten.
- GA-Agent-Richtlinien verwalten nur den Ops-Agent.
Automatisches Upgrade der Agent-Version
- Beta-Agent-Richtlinien können den Agent durch ein Upgrade des Agents auf die neueste Version aktualisieren.
- GA-Agent-Richtlinien unterstützen keine automatischen Upgrades. Alternative Ansätze finden Sie unter Richtlinien für Beta-Agent-Upgrades ersetzen.
Anwendung von Richtlinie auf benannte Compute Engine-Instanzen
- Beta-Agent-Richtlinien können auf eine Liste benannter Instanzen angewendet werden.
- GA-Agent-Richtlinien bieten keine Unterstützung für benannte Instanzen. Informationen zum selben Verhalten mit GA-Richtlinien finden Sie unter Beta-Richtlinie mit benannten Instanzen in eine GA-Richtlinie umwandeln.
Globale oder zonale Anwendung von Agent-Richtlinien in einem Google Cloud-Projekt
- Beta-Agent-Richtlinien werden global auf alle Instanzen angewendet, die durch die Richtlinienkriterien in Ihrem Google Cloud-Projekt ausgewählt werden.
- GA-Agent-Richtlinien werden auf alle Instanzen angewendet, die durch die Richtlinienkriterien innerhalb der Zone ausgewählt werden, die durch die Richtlinie angegeben wird. Beispielsweise hat eine in der Zone
us-central1-a
erstellte Richtlinie keine Auswirkungen auf VMs in anderen Zonen.
Die Beta- und GA-compute instances ops-agents policies
-Befehlsgruppen unterscheiden sich auch strukturiert:
Die
gcloud beta compute instances ops-agents policies
-Befehle beschreiben Agent-Richtlinien, indem sie einzelne Optionen an die Befehle übergeben. Beispiel:gcloud beta compute instances ops-agents policies
create ops-agents-test-policy \ --agent-rules="type=logging,enable-autoupgrade=false;type=metrics,enable-autoupgrade=false" \ --description="A test policy." \ --os-types=short-name=centos,version=7 \ --instances=zones/us-central1-a/instances/test-instance \ --project PROJECT_IDDie
gcloud compute instances ops-agents policies
-Befehle beschreiben die Agent-Richtlinie mithilfe einer YAML-Konfigurationsdatei und einer Zone. Beispiel:gcloud compute instances ops-agents policies
create test-policy \ --zone us-central1-a \ --file test-policy.yaml \ --project PROJECT_ID
Verwendung von Beta- und GA-Richtlinien
Sie können sowohl Beta- als auch GA-Agent-Richtlinien mit dem Ops-Agent verwenden, solange Sie die Unterschiede zwischen den Richtlinientypen berücksichtigen.
Der größte Verhaltensunterschied zwischen Beta- und GA-Agent-Richtlinien besteht darin, dass GA-Richtlinien zonal und Beta-Agent-Richtlinien innerhalb eines Projekts global sind. Das heißt, GA-Agent-Richtlinien wählen nur VMs in der Zone aus, in der die Richtlinie erstellt wird. Beta-Richtlinien können jedoch jede beliebige VM in Ihrem Google Cloud-Projekt auswählen.
Wenn die Beta-Richtlinien eine Gruppe von VMs und die GA-Richtlinien eine andere Gruppe von VMs auswählen, können die Richtlinien nicht in Konflikt stehen.
Sie können Beta- und GA-Agentenrichtlinien haben, die für dieselbe VM gelten, aber Sie müssen sicherstellen, dass die Richtlinien keine widersprüchlichen Zwecke haben, z. B. eine Beta-Richtlinie, die den Ops Agent installiert, und eine GA-Richtlinie, die den Ops Agent deinstalliert.
Beta-Richtlinien in GA-Richtlinien umwandeln
Sie können Ihre Ops-Agent-Beta-Agent-Richtlinien in GA-Agent-Richtlinien konvertieren, solange es keine Unterschiede zwischen den Richtlinientypen gibt, die Sie nicht umgehen können. Sie können Beta-Agent-Richtlinien für den Legacy-Monitoring-Agent oder Logging-Agent nicht in GA-Agent-Richtlinien konvertieren.
So konvertieren Sie Beta-Agent-Richtlinien in GA-Richtlinien:
Generieren Sie mit dem folgenden Befehl eine Liste aller Beta-Agent-Richtlinien in Ihrem Projekt:
gcloud beta compute instances ops-agents policies
list --project PROJECT_IDIdentifizieren Sie die Beta-Agent-Richtlinien, die Sie in GA-Richtlinien umwandeln möchten.
Gehen Sie für jede Betarichtlinie, die Sie für Conversions festlegen, so vor:
Erstellen Sie eine YAML-Konfigurationsdatei, die sich angesichts der Unterschiede zwischen Beta- und GA-Richtlinien möglichst nahe an der Beta-Richtlinie befindet. Informationen zum YAML-Konfigurationsformat finden Sie unter Agent-Richtlinien beschreiben.
Erstellen Sie in jeder Zone, in der Sie die Richtlinie benötigen, eine GA-Agent-Richtlinie. Informationen zum Erstellen von GA-Agent-Richtlinien finden Sie unter Agent-Richtlinie erstellen.
Löschen Sie die Beta-Agent-Richtlinie mit folgendem Befehl:
gcloud beta compute instances ops-agents policies
delete POLICY_ID --project PROJECT_ID
Sie können möglicherweise keine GA-Agent-Richtlinie für den Ops-Agent schreiben, die genau mit einer vorhandenen Beta-Agent-Richtlinie übereinstimmt. Mit Ausnahme der Option für automatische Upgrades der Beta-Agent-Richtlinie können Sie jedoch ein gleichwertiges Verhalten erzielen.
In den folgenden Abschnitten wird der Umgang mit den folgenden Fällen beschrieben:
Beta-Richtlinie mit benannten Instanzen in eine GA-Richtlinie umwandeln
So konvertieren Sie eine Beta-Agent-Richtlinie, die auf eine benannte Gruppe von VM-Instanzen angewendet wird:
Wenden Sie ein Label auf die Instanzen in der Gruppe von VMs an, die Sie auswählen möchten. Verwenden Sie den Befehl
gcloud compute instances add-labels
, wie im folgenden Befehl gezeigt, um ein Label auf eine vorhandene VM anzuwenden:gcloud compute instances add-labels INSTANCE_NAME --labels=KEY=VALUE
Beschreiben Sie eine GA-Agent-Richtlinie, die VMs mit dem neuen Label mithilfe der Struktur
instanceFilter
in der Konfiguration auswählt. Im folgenden Beispiel wird eine Datei mit dem Namenconfig.yaml
erstellt, die eine Richtlinie enthält, die mit dem im vorherigen Schritt angewendeten Label übereinstimmt:cat > config.yaml << EOF agentsRule: packageState: installed version: 2.47.0 instanceFilter: inclusionLabels: - labels: KEY: VALUE EOF
Weitere Informationen zum Beschreiben von GA-Agent-Richtlinien finden Sie unter Konfigurationsdateien für Agent-Richtlinien.
Erstellen Sie in jeder Zone, die VMs mit dem neuen Label enthält, eine GA-Agent-Richtlinie:
gcloud compute instances ops-agents policies
create POLICY_ID \ --zone ZONE \ --file config.yaml --project PROJECT_IDWeitere Informationen zum Erstellen von GA-Agent-Richtlinien finden Sie unter Agent-Richtlinie erstellen.
Richtlinien für Beta-Agent-Upgrades ersetzen
Sie haben folgende Möglichkeiten, Beta-Agent-Richtlinien zu ersetzen, die den Agent aktualisieren:
- Damit der Ops-Agent immer aktuell ist, verwenden Sie OS Patch, um einen OS Patch-Job zu erstellen und auszuführen, der den Agent auf der neusten Version hält.
So führen Sie ein einmaliges Upgrade durch:
- Ermitteln Sie die neueste Version des Ops-Agents in den Versionshinweisen zum Ops-Agent auf GitHub.
Erstellen oder ändern Sie eine Agent-Richtlinie, die die neueste Agent-Version installiert. Wenn die neueste Version beispielsweise 2.46.0 ist, können Sie eine YAML-Agent-Richtlinie verwenden, die in etwa so aussieht:
agentsRule: packageState: installed version: 2.46.0 instanceFilter: [...]
Wenden Sie die Richtlinie auf VMs in jeder Zone an.
Unterstützte Betriebssysteme
Sie können eine Agent-Richtlinie auf Compute Engine-VM-Instanzen anwenden, auf denen die in der folgenden Tabelle aufgeführten Betriebssysteme ausgeführt werden:
Betriebssystem | Ops-Agent
(GA und Beta†-Richtlinien) |
Logging-Agent
(nur Beta†-Richtlinien) |
Monitoring-Agent
(nur Beta†-Richtlinien) |
---|---|---|---|
CentOS 8 | |||
Rocky Linux 8 | |||
RHEL 6 | |||
RHEL 7: rhel-7, rhel-7-6-sap-ha, rhel-7-7-sap-ha, rhel-7-9-sap-ha |
‡ | ||
RHEL 8: rhel-8, rhel-8-4-sap-ha, rhel-8-6-sap-ha, rhel-8-8-sap-ha |
‡ | ||
Debian 9 (Stretch) | |||
Debian 11 (Bullseye) | |||
Deep Learning-VM-Images auf Basis von Debian 11 (Bullseye) | |||
Ubuntu LTS 18.04 (Bionic Beaver): ubuntu-1804-lts, ubuntu-minimal-1804-lts |
|||
Ubuntu LTS 20.04 (Focal Fossa): ubuntu-2004-lts, ubuntu-minimal-2004-lts |
|||
Ubuntu LTS 22.04 (Jammy Jellyfish): buntu-2204-lts, ubuntu-minimal-2204-lts |
|||
SLES 12: sles-12, sles-12-sp5-sap |
|||
SLES 15: sles-15, sles-15-sp2-sap, sles-15-sp3-sap, sles-15-sp4-sap, sles-15-sp5-sap, sles-15-sp6-sap |
|||
OpenSUSE Leap 15: opensuse-leap (opensuse-leap-15-3-*, opensuse-leap-15-4-*) |
|||
Windows Server: 2016, 2019, 2022, Core 2016, Core 2019, Core 2022 |
gcloud beta compute instances ops-agents policies
create
den Aufruf zugewiesen:- Ops-Agent ist dem Agent-Typ
ops-agent
zugeordnet. - Logging-Agent ist dem Agent-Typ
logging
zugeordnet. - Monitoring-Agent ist dem Agent-Typ
metrics
zugeordnet.
rhel-7-9-sap-ha
, rhel-8-2-sap-ha
oder
rhel-8-4-sap-ha
nicht unterstützt.
Nächste Schritte
Informationen zum Verwenden von Agent-Richtlinien zum Verwalten des Ops-Agents finden Sie hier: