Monitoraggio dell'integrità sulle VM schermate

Questo argomento descrive come utilizzare Cloud Monitoring per monitorare l'integrità in fase di avvio delle istanze di VM schermate in cui è abilitato il monitoraggio dell'integrità, identificare la causa di un errore di convalida dell'integrità e aggiornare la baseline dei criteri di integrità.

Monitoraggio dell'integrità di avvio delle VM mediante Monitoring

Utilizzare Cloud Monitoring per visualizzare gli eventi di convalida dell'integrità e impostare i relativi avvisi, e Cloud Logging per esaminare i dettagli di questi eventi.

Visualizzazione degli eventi di convalida dell'integrità

Per visualizzare le metriche per una risorsa monitorata utilizzando Metrics Explorer, segui questi passaggi:

  1. Nella console Google Cloud, vai alla pagina  Esplora metriche:

    Vai a Esplora metriche

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

  2. Nell'elemento Metrica, espandi il menu Seleziona una metrica, inserisci Boot Validation nella barra dei filtri e utilizza i sottomenu per selezionare un tipo di risorsa e una metrica specifici:
    1. Nel menu Risorse attive, seleziona Istanza VM.
    2. Nel menu Categorie di metriche attive, seleziona Istanza.
    3. Nel menu Metriche attive, seleziona Convalida avvio anticipato o Convalida avvio tardivo.
      • Convalida avvio anticipato: mostra lo stato Superato/Non riuscito della parte fase iniziale di avvio all'avvio anticipato dell'ultima sequenza di avvio. L'avvio anticipato è la sequenza di avvio dall'inizio del firmware UEFI fino al momento in cui passa il controllo al bootloader.
      • Late Boot Validation: mostra lo stato Superato/Non riuscito della parte relativa all'avvio tardivo dell'ultima sequenza di avvio. Il ritardo boot è la sequenza di avvio dal bootloader fino al completamento. Ciò include il caricamento del kernel del sistema operativo.
    4. Fai clic su Applica.
  3. Per rimuovere le serie temporali dalla visualizzazione, utilizza l'elemento Filter.

  4. Per combinare le serie temporali, utilizza i menu dell'elemento Aggregation. Ad esempio, per visualizzare l'utilizzo della CPU per le VM, in base alla zona, imposta il primo menu su Mean e il secondo su zone.

    Tutte le serie temporali vengono visualizzate quando il primo menu dell'elemento Aggregation è impostato su Non aggregato. Le impostazioni predefinite per l'elemento Aggregazione sono determinate dal tipo di metrica selezionato.

  5. Per la quota e altre metriche che registrano un campione al giorno:
    1. Nel riquadro Visualizzazione, imposta Tipo di widget su Grafico a barre in pila.
    2. Imposta il periodo di tempo su almeno una settimana.

Impostazione di avvisi per gli eventi di convalida dell'integrità

Imposta avvisi sui valori delle metriche Convalida dell'avvio anticipato e Convalida dell'avvio tardivo se vuoi ricevere una notifica in caso di errore di convalida dell'avvio nell'istanza VM. Per informazioni sugli avvisi, consulta Introduzione agli avvisi:

Visualizzazione dei dettagli dell'evento di convalida dell'integrità

  1. Vai alla pagina Istanze VM
  2. Fai clic sull'ID istanza per aprire la pagina Dettagli istanza VM.
  3. In Log, fai clic su Cloud Logging.
  4. Individua la voce di log earlyBootReportEvent o lateBootReportEvent che vuoi esaminare.
  5. Espandi la voce di log > jsonPayload > earlyBootReportEvent o lateBootReportEvent, a seconda dei casi. All'interno di questa sezione, l'elemento policyEvaluationPassed identifica se la sezione specificata della sequenza di avvio ha superato la verifica rispetto alla base di riferimento dei criteri di integrità.
  6. Espandi la sezione actualMeasurements e gli elementi numerati al suo interno per visualizzare i valori del registro di configurazione della piattaforma (PCR) salvati dalla sequenza di avvio più recente. I valori PCR vengono salvati negli elementi value all'interno degli elementi numerati. I valori PCR identificano i componenti di avvio e l'ordine di caricamento dei componenti utilizzati dalla sequenza di avvio più recente e vengono confrontati con la baseline dei criteri di integrità per determinare se si sono verificate modifiche nella sequenza di avvio dell'istanza VM. Per maggiori informazioni su cosa rappresentano le PCR, consulta Eventi di monitoraggio dell'integrità.
  7. Espandi la sezione policyMeasurements per visualizzare i valori PCR salvati per la base di riferimento dei criteri di integrità.

Automazione delle risposte agli eventi di convalida dell'integrità

Puoi automatizzare le risposte agli eventi di convalida di avvio esportando i log di Cloud Logging ed elaborandoli in un altro servizio come Cloud Functions. Per ulteriori informazioni, consulta Panoramica su routing e archiviazione e Automazione delle risposte agli errori di convalida dell'integrità.

Determinazione della causa dell'errore di convalida dell'integrità di avvio

  1. Vai alla pagina Istanze VM
  2. Fai clic sull'ID istanza per aprire la pagina Dettagli istanza VM.
  3. In Log, fai clic su Cloud Logging.
  4. Individua le voci di log earlyBootReportEvent e lateBootReportEvent più recenti e controlla quale ha un valore policyEvaluationPassed pari a false.
  5. Espandi la voce di log > jsonPayload > earlyBootReportEvent o lateBootReportEvent, a seconda dei casi.
  6. Espandi le sezioni actualMeasurements e policyMeasurements e gli elementi numerati al loro interno per visualizzare i valori PCR (registro di configurazione della piattaforma) salvati rispettivamente dalla sequenza di avvio più recente e dalla base di riferimento dei criteri di integrità. I valori PCR identificano i componenti di avvio e l'ordine di caricamento dei componenti utilizzati dalla sequenza di avvio più recente e dalla base di riferimento dei criteri di integrità.
  7. Confronta i valori della PCR nelle sezioni actualMeasurements e policyMeasurements per determinare dove si è verificata la variazione tra la sequenza di avvio più recente e la baseline dei criteri di integrità. Qualunque confronto generi valori diversi, è il problema che ha causato l'errore di convalida. Tieni presente che i numeri degli elementi in queste sezioni raramente corrispondono ai numeri PCR e che elementi con numerazione simile in actualMeasurements e policyMeasurements potrebbero rappresentare PCR diverse. Ad esempio, nella sequenza fase iniziale di avvio sia per Windows che per Linux, l'elemento 3 in actualMeasurements e l'elemento 2 in policyMeasurements rappresentano entrambi PCR7.

  8. Controlla gli eventi di monitoraggio dell'integrità per determinare cosa rappresenta la PCR modificata e verifica se si tratta di un cambiamento previsto.

Aggiornamento della base di riferimento dei criteri di integrità

La base di riferimento dei criteri di integrità iniziale deriva dall'immagine di avvio implicitamente attendibile al momento della creazione dell'istanza. L'aggiornamento della base di riferimento aggiorna la baseline dei criteri di integrità utilizzando la configurazione dell'istanza attuale. L'istanza VM deve essere in esecuzione quando aggiorni la baseline.

Dovresti aggiornare la base di riferimento dopo qualsiasi modifica pianificata specifica per l'avvio nella configurazione dell'istanza, ad esempio aggiornamenti del kernel o installazione del driver del kernel, che causeranno errori di convalida dell'integrità. Se si verifica un errore imprevisto di convalida dell'integrità, devi indagare sul motivo dell'errore ed essere pronto ad arrestare l'istanza, se necessario.

Per poter aggiornare la base di riferimento dei criteri di integrità, devi disporre dell'autorizzazione setShieldedInstanceIntegrityPolicy.

Usa la procedura seguente per aggiornare la base di riferimento dei criteri di integrità.

gcloud

Aggiorna la base di riferimento dei criteri di integrità dell'istanza VM utilizzando il comando compute instances update con il flag --shielded-learn-integrity-policy.

L'esempio seguente reimposta la base dei criteri di integrità per l'istanza VM my-instance:

gcloud compute instances update my-instance \
    --shielded-learn-integrity-policy

API

Aggiorna la base di riferimento dei criteri di integrità dell'istanza VM utilizzando l'elemento del corpo della richiesta updateAutoLearnPolicy con il metodo setShieldedInstanceIntegrityPolicy.

L'esempio seguente reimposta la base di riferimento dei criteri di integrità per un'istanza VM.

PATCH https://compute.googleapis.com/compute/alpha/projects/my-project/zones/us-central1-b/instances/my-instance/setShieldedInstanceIntegrityPolicy?key={YOUR_API_KEY}
{
  "updateAutoLearnPolicy": true
}

Passaggi successivi