Ambiente guest


Quando avvii un'istanza di una macchina virtuale (VM) utilizzando immagini pubbliche fornite da Google, nell'istanza VM viene installato automaticamente un ambiente guest. L'ambiente guest è un insieme di script, daemon e programmi binari che leggono il contenuto del server di metadati per eseguire correttamente una VM su Compute Engine. Un server di metadati è un canale di comunicazione per trasferire le informazioni da un client al sistema operativo guest.

Questo documento fornisce una panoramica dei componenti dell'ambiente guest, dei sistemi operativi supportati e spiega come imparare quando installare o aggiornare manualmente l'ambiente guest.

Quando installare o aggiornare manualmente l'ambiente guest

Le istanze VM create utilizzando immagini pubbliche fornite da Google includono un ambiente guest che è installato per impostazione predefinita.

Per verificare se l'ambiente guest è in esecuzione sull'istanza, consulta Convalidare l'ambiente guest.

In alcuni casi, l'ambiente guest installato può diventare obsoleto. Se l'ambiente guest è disponibile nella tua istanza ma è obsoleto, aggiorna l'ambiente guest.

In caso contrario, potrebbe essere necessario installare manualmente l'ambiente guest nelle seguenti condizioni:

Se devi installare manualmente l'ambiente guest, vedi Installazione dell'ambiente guest.

Sistemi operativi supportati

Ogni sistema operativo supportato disponibile su Compute Engine richiede pacchetti di ambienti guest specifici. Questi pacchetti vengono creati da Google o dal proprietario del sistema operativo. Per informazioni su chi crea i pacchetti dell'ambiente guest, consulta le sezioni delle differenze tra le immagini standard e il documento dei dettagli del sistema operativo.

Ambiente guest Linux

A prescindere dal fatto che l'ambiente guest Linux sia stato creato da Google o dal proprietario del sistema operativo, esistono alcuni componenti chiave applicabili a tutte le build.

I componenti di base di un ambiente guest Linux sono forniti come pacchetti deb o rpm creati con le configurazioni appropriate per le distribuzioni supportate.

Il seguente elenco riepiloga gli script, i daemon e i pacchetti principali inclusi nell'ambiente guest Linux:

  • Il pacchetto google-compute-engine contiene i seguenti componenti:

    • Script di inizializzazione del sistema per systemd.
    • Configurazioni di sistema, ad esempio regole udev, regole sysctl, configurazioni rsyslog e configurazioni dhcp, utilizzate per l'impostazione nome host.
    • Script bash eseguiti durante l'avvio dell'istanza.

    Questo pacchetto dipende dai pacchetti google-guest-agent e google-compute-engine-oslogin.

    Per esaminare il codice sorgente di questo pacchetto, consulta la sezione guest-configs su GitHub.

  • Il pacchetto google-guest-agent contiene gli eseguibili script e metadati eseguibili sul sistema operativo guest per supportare le funzionalità di Compute Engine. tra cui gestione dell'account, integrazione dell'accesso al sistema operativo, disallineamento dell'orologio, gestione dell'interfaccia di rete e configurazione delle istanze.

    L'agente guest Linux comunica con i servizi di Compute Engine nel seguente modo:

    Per esaminare il codice sorgente di questo pacchetto, consulta guest-agent su GitHub.

  • Il pacchetto google-compute-engine-oslogin contiene programmi binari, moduli e script per OS Login. Puoi utilizzare OS Login per gestire l'accesso alle istanze VM utilizzando i ruoli IAM (Identity and Access Management).

    Il pacchetto include quanto segue:

    • Authorized Keys Command (Comando chiavi autorizzate), che fornisce le chiavi SSH del profilo di accesso del sistema operativo dell'utente a sshd per l'autenticazione degli utenti.
    • Moduli di nome (NSS) che forniscono supporto per rendere disponibili al sistema le informazioni relative a utenti e gruppi di OS Login.
    • Moduli PAM (Pluggable Authentication Module) forniscono l'autorizzazione (e l'autenticazione se è attivato il supporto a due fattori) che consente al sistema di utilizzare le autorizzazioni Google Cloud IAM per controllare la capacità di accedere a un'istanza o di eseguire operazioni come root (tramite Sudo).
    • google_oslogin_nss_cache, un'utilità per aggiornare la cache di utenti e gruppi locali.
    • google_oslogin_control Lo script shell attiva o disattiva le funzionalità di OS Login.
    • selinux contiene i file di definizione dei criteri SELinux e un pacchetto di criteri compilato per la configurazione di SELinux per supportare OS Login.

    I componenti OS Login comunicano con i servizi Compute Engine come seguente:

    Per esaminare il codice sorgente di questo pacchetto, consulta guest-oslogin su GitHub.

  • I componenti gce-disk-expand comunicano con i servizi di Compute Engine nel seguente modo:

    • Invia i log alla porta seriale

    Per esaminare il codice sorgente di questo pacchetto, consulta guest-diskexpand su GitHub.

  • Il pacchetto google-osconfig-agent contiene l'agente OS Config, utilizzato per la gestione dell'inventario del sistema operativo, del sistema operativo Patch Management e della gestione della configurazione del sistema operativo, utilizzando VM Manager.

    Gli script comunicano con i servizi di Compute Engine nel seguente modo:

    Per esaminare il codice sorgente per questo agente, consulta la pagina osconfig su GitHub.

Ambiente guest Windows

Il seguente elenco riepiloga i pacchetti che fanno parte dell'ambiente guest Windows:

  • Il pacchetto google-compute-engine-windows contiene lo user agent Windows, che viene utilizzato per creare account utente locali e impostare/reimpostare le password, configurare l'interfaccia di rete e fornire il supporto del cluster di failover di Windows.

    L'agente guest di Windows comunica con i servizi di Compute Engine come segue:

    • Legge i dati e scrive i dati nei metadati VM
    • Invia i log al log eventi dell'applicazione Windows, alla porta seriale e a Cloud Logging

    Per esaminare il codice sorgente di questo agente, consulta guest-agent su GitHub.

  • Il pacchetto google-compute-engine-sysprep contiene script che servono per generalizzare un'istanza di Windows in preparazione alla creazione di un'immagine. Il pacchetto include anche lo script instance_setup.ps1, utilizzato al primo avvio per configurare la nuova istanza.

    Gli script comunicano con i servizi di Compute Engine nel seguente modo:

    • Legge i dati e scrive i dati nei metadati VM
    • Invia i log al log eventi dell'applicazione Windows e alla porta seriale

    Per esaminare il codice sorgente di questo agente, consulta la pagina compute-image-windows su GitHub

  • Il pacchetto google-compute-engine-metadata-scripts contiene script e binarie utilizzati per eseguire gli script Compute Engine, sysprep-specialize, startup e shutdown.

    Gli script comunicano con i servizi di Compute Engine nel seguente modo:

    • Legge i dati e scrive i dati nei metadati VM
    • Legge dalle località di Cloud Storage quando vengono utilizzati sysprep-specialize-script-url e windows-startup-script-url
    • Invia i log al log eventi dell'applicazione Windows, alla porta seriale e a Cloud Logging

    Per esaminare il codice sorgente di questo agente, consulta la pagina compute-image-windows su GitHub

  • Il pacchetto google-compute-engine-powershell contiene un modulo PowerShell. Questo modulo contiene funzioni comuni utilizzate dagli script di PowerShell negli altri script dell'ambiente guest Windows.

    Gli script comunicano con i seguenti servizi di Compute Engine:

    • La funzione di logging nel modulo PowerShell invia per impostazione predefinita i log al log eventi dell'applicazione Windows e alla porta seriale.

    Per esaminare il codice sorgente di questo agente, consulta la pagina compute-image-windows su GitHub.

  • Il pacchetto google-compute-engine-auto-updater contiene script che vengono utilizzati ogni giorno per aggiornare i pacchetti Compute Engine. Questo pacchetto non è più installato per impostazione predefinita.

    Gli script comunicano con i servizi di Compute Engine nel seguente modo:

    • Legge i dati dai metadati VM
    • Chiama l'agente Google Analytics per inviare i log al log eventi e alla console dell'applicazione Windows

    Per esaminare il codice sorgente di questo agente, consulta la pagina compute-image-windows su GitHub.

  • Il pacchetto google-compute-engine-diagnostics contiene un programma binario utilizzato per osservare informazioni di diagnostica dall'istanza e salvarle in un bucket Cloud Storage. Il programma binario viene eseguito dallo user agent Windows.

    Gli script comunicano con i servizi di Compute Engine nel seguente modo:

    • Salva i dati in un bucket Cloud Storage

    Per esaminare il codice sorgente di questo agente, consulta compute-image-tools su GitHub

  • Il pacchetto certgen contiene un programma binario che crea un certificato nell'istanza.

    Per esaminare il codice sorgente di questo agente, consulta la pagina compute-image-windows su GitHub.

  • Il pacchetto googet contiene un programma binario, che è un gestore di pacchetti utilizzato per installare e gestire l'ambiente guest.

    Gli script comunicano con i servizi di Compute Engine nel seguente modo:

    Per esaminare il codice sorgente di questo agente, consulta la pagina googet on GitHub.

  • Il pacchetto google-compute-engine-vss installa l'agente VSS e il provider Compute Engine che vengono utilizzati per eseguire un istantanea del disco permanente utilizzando Microsoft's Volume Shadow Copy Service (VSS).

    Gli script comunicano con i servizi di Compute Engine nel seguente modo:

    • Comunica con il servizio di snapshot di Google Cloud

    Per esaminare il codice sorgente di questo agente, consulta la pagina compute-image-windows su GitHub

  • Il pacchetto google-osconfig-agent contiene l'agente OS Config, utilizzato per la gestione dell'inventario del sistema operativo, del sistema operativo Patch Management e della gestione della configurazione del sistema operativo, utilizzando VM Manager.

    Gli script comunicano con i servizi di Compute Engine nel seguente modo:

    Per esaminare il codice sorgente per questo agente, consulta la pagina osconfig su GitHub.

Driver di Windows per Compute Engine

Per le immagini Windows sono gestiti i seguenti driver di Compute Engine:

Tipo di driver Nome pacchetto
Adattatore Ethernet google-compute-engine-driver-netkvm
Disco SCSI google-compute-engine-driver-vioscsi
Adattatore display google-compute-engine-driver-gga
Gestore di arresti anomali google-compute-engine-driver-pvpanic

Ogni driver viene pacchettizzato utilizzando GooGet e pubblicato nei repository di Google Cloud. Il codice sorgente dei driver si trova all'indirizzo compute-windows-drivers su GitHub. Tutte le immagini Google Cloud per Windows sono preconfigurate con lo strumento GooGet e con i repository di Google Cloud. Se devi installare GooGet e configurare i repository in autonomia, consulta Imballaggio e distribuzione dei pacchetti.

Per installare o eseguire l'upgrade di un driver specifico, esegui il comando seguente:

googet install DRIVER_PACKAGE_NAME

Passaggi successivi

Per istruzioni dettagliate sull'installazione dell'ambiente guest, vedi Installazione dell'ambiente guest.