Monitoraggio dell'integrità sulle VM schermate

Questo argomento descrive come utilizzare Cloud Monitoring per monitorare l'integrità di avvio delle istanze 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à dell'avvio della VM utilizzando il monitoraggio

Utilizza Cloud Monitoring per visualizzare gli eventi di convalida dell'integrità e impostare avvisi per questi eventi 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 con Esplora metriche, 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, digita Boot Validation nella barra dei filtri e poi 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 superato della parte fase iniziale di avvio dell'ultima sequenza di avvio. La fase iniziale di avvio è la sequenza di avvio dall'inizio del firmware UEFI fino a quando non passa il controllo al bootloader.
      • Late Boot Validation (Convalida avvio tardivo): mostra lo stato superato/non superato della la parte in ritardo dell'ultima sequenza di avvio. La fase finale di avvio è la sequenza di avvio dal bootloader fino al completamento. È incluso il del kernel del sistema operativo.
    4. Fai clic su Applica.
  3. Per rimuovere le serie temporali dalla visualizzazione, utilizza l'elemento Filtro.

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

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

  5. Per la quota e altre metriche che registrano un campione al giorno:
    1. Nel riquadro Visualizza, 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 fase iniziale di avvio e Convalida fase finale di avvio se vuoi ricevere una notifica in caso di errore di convalida dell'avvio nell'istanza VM. Per informazioni sugli avvisi, consulta la pagina 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 dei dettagli dell'istanza VM.
  3. In Log, fai clic su Cloud Logging.
  4. Individua la voce del 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 base 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 dall'ultima sequenza di avvio. I valori PCR vengono salvati nei valori 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 sono state apportate modifiche alla sequenza di avvio dell'istanza VM. Per maggiori informazioni su cosa rappresentano i PCR, consulta Eventi di monitoraggio dell'integrità.
  7. Espandi la sezione policyMeasurements per visualizzare 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 del boot esportando i log di Cloud Logging ed elaborandoli in un altro servizio, ad esempio le funzioni Cloud Run. Per ulteriori informazioni, consulta la panoramica su routing e archiviazione e la sezione Automatizzazione delle risposte a 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 del registro di configurazione della piattaforma (PCR) salvati rispettivamente dalla sequenza di avvio più recente e dalla baseline dei criteri di integrità. I valori della PCR Identificare i componenti di avvio e l'ordine di caricamento dei componenti utilizzati dall'ultimo avvio la sequenza e la base di riferimento dei criteri di integrità.
  7. Confronta i valori della PCR in actualMeasurements e policyMeasurements per determinare dove la variazione tra l'ultima sequenza di avvio e si è verificata la baseline dei criteri di integrità. Qualunque confronto generi con 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, ed elementi numerati simili in actualMeasurements e policyMeasurements potrebbe rappresentare PCR diverse. Ad esempio, nella sequenza di avvio iniziale 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 il PCR modificato e controlla se si tratta di una modifica prevista.

Aggiornamento della baseline dei criteri di integrità

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

Devi aggiornare la base di riferimento dopo eventuali modifiche pianificate specifiche per l'avvio configurazione dell'istanza, ad esempio aggiornamenti del kernel o installazione del driver del kernel, queste causeranno errori di convalida dell'integrità. Se si verifica un errore imprevisto di convalida dell'integrità, devi indagare sul motivo dell'errore e prepararti a interrompere l'istanza, se necessario.

Per poter aggiornare la linea di base del criterio di integrità, devi disporre dell'autorizzazione setShieldedInstanceIntegrityPolicy.

Utilizza la procedura seguente per aggiornare la baseline dei criteri di integrità.

gcloud

Aggiorna la baseline 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 baseline dei criteri di integrità per l'istanza VM my-instance:

gcloud compute instances update INSTANCE_NAME \
    --zone=ZONE --shielded-learn-integrity-policy

Sostituisci quanto segue:

  • INSTANCE_NAME: nome della VM.
  • ZONE: la zona in cui esiste la VM.

API

Aggiorna la base di riferimento dei criteri di integrità dell'istanza VM usando updateAutoLearnPolicy richiede un elemento del corpo con il Metodo setShieldedInstanceIntegrityPolicy.

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

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/setShieldedInstanceIntegrityPolicy?key=YOUR_API_KEY
{
  "updateAutoLearnPolicy": true
}

Sostituisci quanto segue:

  • PROJECT_ID: ID del progetto in cui la VM esiste già.
  • INSTANCE_NAME: il nome della VM.
  • ZONE: zona in cui esiste la VM.
  • YOUR_API_KEY: una chiave API che ti consente di accedere all'API.

Passaggi successivi