Wenn Sie eine VM-Instanz mit öffentlichen Images von Google starten, wird automatisch eine Gastumgebung auf der VM-Instanz installiert. Die Gastumgebung besteht aus einer Reihe von Skripts, Daemons und Binärdateien, die den Inhalt des Metadatenservers lesen, damit eine VM ordnungsgemäß in Compute Engine ausgeführt wird. Ein Metadatenserver ist ein Kommunikationskanal zum Übertragen von Informationen von einem Client zum Gastbetriebssystem.
In diesem Dokument erhalten Sie einen Überblick über die Komponenten der Gastumgebung und über unterstützte Betriebssysteme und lernen, wann Sie die Gastumgebung manuell installieren oder aktualisieren müssen.
Zeitpunkt zur manuellen Installation oder Aktualisierung der Gastumgebung
VM-Instanzen, die mit öffentlichen Images von Google erstellt werden, enthalten eine standardmäßig installierte Gastumgebung.
Unter Gastumgebung validieren können Sie prüfen, ob die Gastumgebung auf Ihrer Instanz ausgeführt wird.
Unter Umständen kann die installierte Gastumgebung veraltet sein. Wenn die Gastumgebung auf Ihrer Instanz verfügbar, aber veraltet ist, aktualisieren Sie die Gastumgebung.
Möglicherweise müssen Sie die Gastumgebung auch manuell installieren. Das ist bei folgenden Bedingungen der Fall:
Sie importieren ein benutzerdefiniertes Image oder ein virtuelles Laufwerk auf die Compute Engine-Plattform und wählen die Option zur automatischen Installation der Gastumgebung nicht aus.
Wenn Sie virtuelle Laufwerke oder benutzerdefinierte Images importieren, können Sie Compute Engine veranlassen, die Gastumgebung für Sie zu installieren. Wenn Sie die Gastumgebung jedoch nicht während des Importvorgangs installieren möchten, müssen Sie die Schritte zur manuellen Installation ausführen, um die Gastumgebung zu installieren.
Sie migrieren VMs mithilfe von Migrate zu virtuellen Maschinen zu Compute Engine.
Sie verwenden ein Image, das nicht die Gastumgebungsoptimierungen für lokales SSDs nutzt.
Sie haben Instanzen, die ein älteres Image als
v20141218
verwenden.
Falls Sie die Gastumgebung manuell installieren müssen, finden Sie weitere Informationen dazu unter Gastumgebung installieren.
Unterstützte Betriebssysteme
Jedes unterstützte Betriebssystem, das in Compute Engine verfügbar ist, erfordert bestimmte Gastumgebungspakete. Diese Pakete werden entweder von Google oder vom Inhaber des Betriebssystems erstellt. Weitere Informationen darüber, wer die Gastumgebungspakete erstellt, finden Sie im Dokument Details zu Betriebssystemen in den Abschnitten zu Standard-Images.
Die Linux-Gastumgebung
Unabhängig davon, ob die Linux-Gastumgebung von Google oder dem Eigentümer des Betriebssystems erstellt wird, gibt es einige Schlüsselkomponenten, die auf alle Builds anwendbar sind.
Die Basiskomponenten einer Linux-Gastumgebung werden als deb
- oder rpm
-Pakete bereitgestellt, die mit den entsprechenden Konfigurationen für die unterstützten Distributionen erstellt werden.
Im Folgenden werden die Hauptskripts, Daemons und Pakete zusammengefasst, die in der Linux-Gastumgebung verpackt sind:
Das Paket
google-compute-engine
enthält die folgenden Komponenten:- Systeminitialisierungsskripts für
systemd
- Systemkonfigurationen wie
udev
-Regeln,sysctl
-Regeln,rsyslog
-Konfigurationen unddhcp
-Konfigurationen, die für die Einstellung des Hostnamens verwendet werden - Bash-Skripts, die beim Starten der Instanz ausgeführt werden.
Dieses Paket hängt von den Paketen
google-guest-agent
undgoogle-compute-engine-oslogin
ab.Informationen zum Quellcode für dieses Paket finden Sie unter guest-configs auf GitHub.
- Systeminitialisierungsskripts für
Das Paket
google-guest-agent
enthält die ausführbaren Dateien des Gast-Agents und des Metadatenskripts, die auf dem Gastbetriebssystem ausgeführt werden, um die Compute Engine-Features zu unterstützen. Zu diesen Features gehören die Kontoverwaltung, die OS Login-Integration, die Taktabweichung, die Verwaltung der Netzwerkschnittstelle und die Instanzeinrichtung.Der Linux-Gast-Agent kommuniziert so mit Compute Engine-Diensten:
- Liest Daten aus den VM-Metadaten und schreibt sie in diese.
- Sendet Logs an den seriellen Port und optional an Cloud Logging.
Informationen zum Quellcode für dieses Paket finden Sie unter Guest-Agent auf GitHub.
Das Paket
google-compute-engine-oslogin
enthält die Binärdateien, Module und Skripts für OS Login. Mit OS Login können Sie den Zugriff auf VM-Instanzen mithilfe von IAM-Rollen (Identity and Access Management) verwalten.Das Paket umfasst Folgendes:
- Befehl "Authorized Keys", der SSH-Schlüssel aus dem OS Login-Profil des Nutzers anr SSHD zur Authentifizierung von Nutzern bei der Anmeldung bereitstellt.
- NSS-Module (Name Service Switch), die das Verfügbarmachen von OS Login-Nutzer- und Gruppeninformationen für das System unterstützen.
- PAMs (Pluggable Authentication Modules), die Autorisierungsunterstützung bieten (und Authentifizierung, wenn die Bestätigung in zwei Schritten aktiviert ist), die es dem System ermöglicht, Google Cloud IAM-Berechtigungen zu verwenden, um die Fähigkeit zu steuern, sich bei einer Instanz anzumelden oder Vorgänge als Root (über sudo) auszuführen.
google_oslogin_nss_cache
ist ein Dienstprogramm zum Aktualisieren des lokalen Nutzer- und Gruppen-Cache.google_oslogin_control
-Shell-Skript aktiviert oder deaktiviert die OS Login-Features.selinux
enthält SELinux-Richtliniendefinitionsdateien und ein kompiliertes Richtlinienpaket zur Konfiguration von SELinux für die Unterstützung von OS Login.
Die OS Login-Komponenten kommunizieren folgendermaßen mit Compute Engine-Diensten:
- Liest Daten aus den VM-Metadaten und schreibt sie in diese.
- Sendet Logs an den seriellen Port und optional an Cloud Logging.
Informationen zum Quellcode für dieses Paket finden Sie unter guest-oslogin auf GitHub.
Die
gce-disk-expand
-Komponenten kommunizieren mit Compute Engine-Diensten:- Sendet Logs an den seriellen Port
Informationen zum Quellcode für dieses Paket finden Sie unter guest-diskexpand auf GitHub.
Das Paket
google-osconfig-agent
enthält den OS Config-Agent, der für OS Inventory Management, OS Patch Management und OS Configuration Management mithilfe von VM Manager verwendet wird.Die Skripts kommunizieren so mit Compute Engine-Diensten:
- Liest Daten aus den VM-Metadaten und schreibt sie in diese.
- Standardmäßig erfasst oder sendet der OS Config-Agent keine Informationen, bis der OS Config-Agent aktiviert ist. Nachdem Sie den Agent aktiviert haben, kommuniziert der Agent mit dem OS Config API-Dienst. Informationen zum Prüfen der vom Agent abgeschlossenen Vorgänge finden Sie unter Audit-Logs von VM Manager ansehen.
Informationen zum Quellcode für diesen Agent finden Sie unter osconfig auf GitHub.
Die Windows-Gastumgebung
Im Folgenden werden die Pakete zusammengefasst, die Teil der Windows-Gastumgebung sind:
Das Paket
google-compute-engine-windows
enthält den Windows-Gast-Agent, der zum Erstellen lokaler Nutzerkonten und Festlegen/Zurücksetzen von Passwörtern, zum Konfigurieren der Netzwerkschnittstelle und zum Bereitstellen der Windows-Failover-Clusterunterstützung verwendet wird.Der Windows-Gast-Agent kommuniziert so mit Compute Engine-Diensten:
- Liest Daten aus den VM-Metadaten und schreibt sie in diese.
- Senden von Logs an das Windows-Anwendungsereignisprotokoll, den seriellen Port und Cloud Logging
Informationen zum Quellcode für diesen Agent finden Sie unter Guest-Agent auf GitHub.
Das Paket
google-compute-engine-sysprep
enthält Skripts zur Generalisierung einer Windows-Instanz in Vorbereitung auf das Erstellen eines Images. Das Paket enthält außerdem das Skriptinstance_setup.ps1
, das beim ersten Start zum Konfigurieren der neuen Instanz verwendet wird.Die Skripts kommunizieren so mit Compute Engine-Diensten:
- Liest Daten aus den VM-Metadaten und schreibt sie in diese.
- Senden von Logs an das Windows-Anwendungsereignisprotokoll und den seriellen Port
Informationen zum Quellcode für diesen Agent finden Sie unter compute-image-windows auf GitHub.
Das Paket
google-compute-engine-metadata-scripts
enthält Skripts und Binärdateien, die zum Ausführen der Compute Engine "sysprep-Spezialisierung" verwendet werden, d. h. zum Starten und Herunterfahren von Skripts.Die Skripts kommunizieren so mit Compute Engine-Diensten:
- Liest Daten aus den VM-Metadaten und schreibt sie in diese.
- Lesen von Cloud Storage-Speicherorten, wenn
sysprep-specialize-script-url
undwindows-startup-script-url
verwendet werden - Senden von Logs an das Windows-Anwendungsereignisprotokoll, den seriellen Port und Cloud Logging
Informationen zum Quellcode für diesen Agent finden Sie unter compute-image-windows auf GitHub.
Das Paket
google-compute-engine-powershell
enthält ein PowerShell-Modul. Dieses Modul enthält gängige Funktionen, die von PowerShell-Skripts in den anderen Skripts der Windows-Gastumgebung verwendet werden.Die Skripts kommunizieren mit den folgenden Compute Engine-Diensten:
- Standardmäßiges Senden von Logs von der Logging-Funktion im PowerShell-Modul an das Windows-Anwendungsereignisprotokoll und den seriellen Port
Informationen zum Quellcode für diesen Agent finden Sie unter compute-image-windows auf GitHub.
Das Paket
google-compute-engine-auto-updater
enthält Skripts, die für die tägliche Aktualisierung der Compute Engine-Pakete verwendet werden. Dieses Paket wird nicht mehr standardmäßig installiert.Die Skripts kommunizieren so mit Compute Engine-Diensten:
- Lesen von Daten aus VM-Metadaten
- Aufrufen des Googet-Agents zum Senden von Logs an das Windows-Anwendungsereignisprotokoll und die Konsole
Informationen zum Quellcode für diesen Agent finden Sie unter compute-image-windows auf GitHub.
Das Paket
google-compute-engine-diagnostics
enthält eine Binärdatei, die zum Abrufen von Diagnoseinformationen aus der Instanz verwendet wird, und zum Speichern der Informationen in einem Cloud Storage-Bucket. Die Binärdatei wird vom Windows-Gast-Agent ausgeführt.Die Skripts kommunizieren so mit Compute Engine-Diensten:
- Speichern von Daten in einem Cloud Storage-Bucket
Informationen zum Quellcode für diesen Agent finden Sie unter compute-image-tools auf GitHub.
Das Paket
certgen
enthält eine Binärdatei, die ein Zertifikat für die Instanz erstellt.Informationen zum Quellcode für diesen Agent finden Sie unter compute-image-windows auf GitHub.
Das Paket
googet
enthält eine Binärdatei, die ein Paketmanager ist, der zur Installation und Verwaltung der Gastumgebung verwendet wird.Die Skripts kommunizieren so mit Compute Engine-Diensten:
- Lesen von Daten aus den Google Cloud-Repositories
Informationen zum Quellcode für diesen Agent finden Sie unter googet on GitHub.
Das Paket
google-compute-engine-vss
installiert den Compute Engine VSS-Agent und den Anbieter, die zum Erstellen eines Snapshots von nichtflüchtigem Speicher mithilfe von Microsofts Volumeschattenkopie-Dienst (VSS).Die Skripts kommunizieren so mit Compute Engine-Diensten:
- Kommunizieren mit dem Google Cloud-Snapshot-Dienst
Informationen zum Quellcode für diesen Agent finden Sie unter compute-image-windows auf GitHub.
Das Paket
google-osconfig-agent
enthält den OS Config-Agent, der für OS Inventory Management, OS Patch Management und OS Configuration Management mithilfe von VM Manager verwendet wird.Die Skripts kommunizieren so mit Compute Engine-Diensten:
- Liest Daten aus den VM-Metadaten und schreibt sie in diese.
- Standardmäßig erfasst oder sendet der OS Config-Agent keine Informationen, bis der OS Config-Agent aktiviert ist. Nachdem Sie den Agent aktiviert haben, kommuniziert der Agent mit dem OS Config API-Dienst. Informationen zum Prüfen der vom Agent abgeschlossenen Vorgänge finden Sie unter Audit-Logs von VM Manager ansehen.
Informationen zum Quellcode für diesen Agent finden Sie unter osconfig auf GitHub.
Windows-Treiber für Compute Engine
Die folgenden Compute Engine-Treiber werden für Windows-Images verwaltet:
Treibertyp | Paketname |
---|---|
Ethernet Adapter | google-compute-engine-driver-netkvm |
SCSI Disk | google-compute-engine-driver-vioscsi |
Display Adapter | google-compute-engine-driver-gga |
Crash Handler | google-compute-engine-driver-pvpanic |
Jeder Treiber wird mit GooGet verpackt und in Google Cloud Repositories veröffentlicht. Der Quellcode für die Treiber befindet sich unter compute-windows-drivers on GitHub. Alle Google Cloud-Windows-Images sind mit dem GooGet-Tool und Google Cloud-Repositories vorkonfiguriert. Wenn Sie selbst GooGet installieren und Repositories einrichten möchten, finden Sie unter Verpackung und Paketverteilung weitere Informationen dazu.
Führen Sie den folgenden Befehl aus, um einen bestimmten Treiber zu installieren oder zu aktualisieren:
googet install DRIVER_PACKAGE_NAME
Nächste Schritte
Eine detaillierte Anleitung zur Installation der Gastumgebung finden Sie unter Gastumgebung installieren.