Environnement invité

Ce document présente l'environnement invité, qui contient les scripts, les daemons et les binaires dont les instances ont besoin pour s'exécuter sur Compute Engine.

L'environnement invité communique avec le serveur de métadonnées, qui est un serveur HTTP par instance s'exécutant à côté de chaque instance Compute Engine. Le serveur de métadonnées fournit à l'instance des données de configuration et opérationnelles essentielles. Pour en savoir plus sur les types de métadonnées stockées sur le serveur de métadonnées, consultez la section Métadonnées de VM.

L'environnement invité est automatiquement installé sur les instances Compute Engine créées à l'aide de la plupart des images de système d'exploitation (OS) publiques fournies par Google. Chaque image d'OS nécessite des packages d'environnement invité spécifiques. Ces packages sont créés par Google ou par le distributeur du système d'exploitation. Les mises à jour des packages d'environnement invité sont déployées région par région. Ces mises à jour peuvent prendre jusqu'à deux semaines pour atteindre tous les emplacements dans le monde.

Pour obtenir la liste complète des images d'OS qui incluent l'environnement invité, consultez la section Détails des systèmes d'exploitation.

Composants de l'environnement invité

La section suivante décrit les packages et les services qui permettent à une instance de communiquer avec Compute Engine.

Agent invité

Le composant central de l'environnement invité est l'agent invité, qui gère des tâches telles que la gestion des comptes, l'intégration d'OS Login et la gestion des interfaces réseau. L'agent invité est disponible pour les systèmes d'exploitation Linux et Windows, avec les noms de packages suivants :

  • Linux: google-guest-agent
  • Windows: google-compute-engine-windows

Pour obtenir des informations détaillées sur l'agent invité, y compris ses fonctionnalités, son architecture et sa gestion, consultez la section Agent invité.

Composants Linux

Les composants de base d'un environnement invité Linux sont des packages deb ou rpm. Compute Engine crée ces packages avec les configurations appropriées pour la distribution compatible. Pour afficher la liste des packages installés sur votre instance Linux , connectez-vous à l'instance et exécutez la commande fournie pour votre version d'OS dans le tableau Packages installés par version de système d'exploitation.

L'environnement invité Linux inclut les packages clés suivants.

Nom du package Description Interactions clés Lien vers le code source sur GitHub
google-guest-agent

Ce package est l'agent invité pour l'environnement Linux.

L'agent invité Linux contient les scripts qui s'exécutent sur le système d'exploitation invité pour assurer la compatibilité avec les fonctionnalités de Compute Engine. Pour obtenir des informations détaillées sur l'agent invité, y compris ses fonctionnalités, son architecture et sa gestion, consultez la section Agent invité.

guest-agent
google-compute-engine

Contient les scripts et les fichiers requis pour l'initialisation et la configuration du système.

Ce package contient les éléments suivants :

  • Scripts d'initialisation système pour systemd
  • Configurations système, telles que les règles udev et sysctl et les configurations rsyslog et dhcp, utilisées pour définir le nom d'hôte
  • Scripts Bash exécutés au démarrage de l'instance
  • Un fichier gce-resolved.conf, introduit en octobre 2024, qui garantit que les recherches de domaine pour les domaines Cloud DNS .local sont acheminées vers le serveur de métadonnées. Sans ce fichier, les recherches de domaine sont acheminées via systemd-resolved, ce qui échoue fréquemment.

    Si votre environnement n'utilise pas de .local domaines, vous pouvez supprimer le gce-resolved.conf fichier s'il est en conflit avec vos configurations existantes.

Fonctionne avec les packages suivants pour configurer les instances.
  • google-guest-agent
  • google-compute-engine-oslogin
guest-configs
google-compute-engine-oslogin Contient les fichiers binaires, les modules et les scripts nécessaires pour gérer l'accès aux instances à l'aide d'OS Login. OS Login vous permet de gérer l'accès aux instances à l'aide des rôles IAM. Pour en savoir plus sur OS Login, consultez la section OS Login.

Ce package contient les éléments suivants :

  • Commande "Authorized Keys" : commande qui utilise les clés SSH publiques pour authentifier les utilisateurs lors de la connexion.
  • Modules NSS (Name Service Switch) : service qui fournit au système les informations sur les utilisateurs et les groupes d'OS Login.
  • Modules PAM (Pluggable Authentication Modules) : module qui permet la prise en charge de l'autorisation (et de l'authentification si la prise en charge à deux facteurs est activée). Ce module permet au système d'utiliser Google Cloud les autorisations IAM pour contrôler si le système peut se connecter à une instance ou effectuer des opérations en tant que racine (avec sudo).
  • google_oslogin_nss_cache : utilitaire permettant de mettre à jour le cache des utilisateurs et des groupes locaux.
  • selinux : package contenant les fichiers de définition de règles SELinux et un package de règles compilé pour configurer SELinux de manière à prendre en charge OS Login.
guest-oslogin
gce-disk-expand Contient les composants requis pour redimensionner un disque de démarrage. Il envoie des journaux au port série. gce-disk-expand
google-osconfig-agent Contient l'agent OS Config, que VM Manager utilise pour gérer l'inventaire, les correctifs et les règles du système d'exploitation. Pour en savoir plus sur l'agent OS Config, consultez VM Manager.

Il lit et écrit des données dans les métadonnées de VM.

Par défaut, l'agent OS Config ne collecte et n'envoie aucune information tant que vous ne l'avez pas activé. Une fois l'agent activé, il communique avec le service de l'API OS Config. Pour connaître les opérations effectuées par le agent, consultez la section Journalisation d'audit de VM Manager.

guest-osconfig

Composants Windows

Toutes les images d'OS Windows fournies par Google sont préconfigurées avec l' GooGet outil et Google Cloud dépôts. GooGet installe et gère l'environnement invité pour les instances Windows. Si vous devez installer GooGet et configurer des dépôts, consultez la section Packaging et distribution de packages dans le dépôt GitHub compute-image-windows. Pour afficher la liste des packages installés sur votre instance Windows, connectez-vous à l'instance et exécutez googet installed.

L'environnement invité Windows inclut les packages clés suivants :

Nom du package Description Interactions clés Lien vers le code source sur GitHub
google-compute-engine-windows

Ce package est l'agent invité pour l'environnement Windows.

L'agent invité Windows contient les scripts qui s'exécutent sur le système d'exploitation invité pour assurer la compatibilité avec les fonctionnalités de Compute Engine. Pour obtenir des informations détaillées sur l'agent invité, y compris ses fonctionnalités, son architecture et sa gestion, consultez la section Agent invité.

  • Il lit et écrit des données dans les métadonnées de VM.
  • Il envoie des journaux au journal des événements de l'application de Windows, au port série et à Cloud Logging
guest-agent
google-compute-engine-sysprep Contient des scripts permettant de généraliser une instance Windows en vue de la création d'une image d'OS. Le package inclut également le script instance_setup.ps1, qui s'exécute au premier démarrage pour configurer la nouvelle instance.
  • Il lit et écrit des données dans les métadonnées de VM.
  • Il envoie des journaux au journal des événements de l'application de Windows et au port série.
sysprep
google-compute-engine-metadata-scripts

Contient des scripts et des binaires qui exécutent sysprep-specialize, des scripts de démarrage, et d’arrêt.

  • Il lit et écrit des données dans les métadonnées de VM.
  • Il lit des données à partir des emplacements Cloud Storage lorsque les sysprep-specialize-script-url et les windows-startup-script-url sont utilisés.
  • Il envoie des journaux au journal des événements de l'application de Windows, au port série et à Cloud Logging
google_metadata_script_runner
google-compute-engine-powershell Contient un module PowerShell. Ce module fournit des fonctions courantes utilisées par les scripts PowerShell dans les autres scripts d'environnement invité Windows. Il envoie des journaux au journal des événements de l'application de Windows et au port série. PowerShell
google-compute-engine-auto-updater

Contient des scripts qui mettent à jour quotidiennement les packages Compute Engine.

Ce package n'est pas installé par défaut. Cette approche vous permet de maintenir la stabilité de votre environnement en contrôlant le processus de mise à jour. Si votre environnement peut tolérer les mises à jour sans interruption, vous pouvez installer ce package pour vous assurer que vos packages d'environnement invité sont mis à jour automatiquement.

Pour installer ce package, exécutez la commande suivante : googet -noconfirm install google-compute-engine-auto-updater

  • Il lit les données des métadonnées de VM.
  • Il appelle l'agent GooGet pour envoyer des journaux au journal des événements de l'application de Windows et à la console.
auto_updater
google-compute-engine-diagnostics Contient un binaire qui collecte des informations de diagnostic depuis l'instance et les enregistre dans un bucket Cloud Storage. L'agent invité Windows exécute le binaire. Il enregistre les données dans un bucket Cloud Storage. diagnostics
certgen Contient un binaire qui crée un certificat sur l'instance. certgen
GooGet Contient un binaire qui installe et gère l'environnement invité pour les instances Windows. Il lit les données des Google Cloud dépôts situés à l'adresse packages.cloud.google.com. GooGet
google-compute-engine-vss Installe l'agent et le fournisseur VSS de Compute Engine qui capturent des instantanés de disque persistant à l'aide du service VSS (Volume Shadow Copy Service) de Microsoft. Il communique avec le Google Cloud service d'instantané. vss
google-osconfig-agent Contient l'agent OS Config, que VM Manager utilise pour gérer l'inventaire, les correctifs et les règles du système d'exploitation. Pour en savoir plus sur l'agent OS Config, consultez VM Manager.

Il lit et écrit des données dans les métadonnées de VM.

Par défaut, l'agent OS Config ne collecte et n'envoie aucune information tant que vous ne l'avez pas activé. Une fois l'agent activé, il communique avec le service de l'API OS Config. Pour connaître les opérations effectuées par l'agent, consultez la section Journalisation d'audit de VM Manager.

guest-osconfig
Pilotes Compute Engine pour Windows

Contient plusieurs pilotes pour garantir le bon fonctionnement et les performances des instances. Le GooGet gestionnaire de packages gère ces pilotes et les publie dans les Google Cloud dépôts.

Les pilotes Compute Engine suivants sont gérés pour les images d'OS Windows :

Type de pilote Nom du package de pilote
Adaptateur Ethernet google-compute-engine-driver-netkvm
Disque SCSI google-compute-engine-driver-vioscsi
Adaptateur d'affichage google-compute-engine-driver-gga
Gestionnaire de plantages google-compute-engine-driver-pvpanic
Pilote de ballon de mémoire Virtio google-compute-engine-driver-balloon
Carte d'interface réseau virtuelle Google google-compute-engine-driver-gvnic

Pour installer ou mettre à niveau un pilote spécifique, exécutez la commande suivante :

        googet install DRIVER_PACKAGE_NAME
        
compute-windows-drivers

Étape suivante