Google Cloud non è immune ai guasti hardware. Sebbene esistano più livelli di ridondanza, possono verificarsi errori hardware che comportano l'interruzione delle istanze Compute Engine.
Gli errori hardware dell'host possono avere più cause perché l'hardware del server e i relativi componenti associati hanno molti componenti che possono subire guasti. In particolare, i tipi di macchine ottimizzati per la memoria hanno un numero elevato di moduli di memoria, il che può aumentare la probabilità che gli errori hardware siano correlati alla memoria. Esistono due tipi di errori relativi alla memoria:
Errori di memoria correggibili: si tratta di errori che possono essere corretti da meccanismi hardware e software integrati, come la memoria ECC (Error Correction Code). Questi errori non influiscono sull'istanza Compute Engine in esecuzione sull'host. Vengono gestiti in modo trasparente da meccanismi hardware e software.
Errori di memoria non correggibili: si tratta di errori che non possono essere correttati. Sono rari, casuali e imprevedibili. Qualsiasi tentativo di accedere all'area di memoria interessata genera un segnale per il sistema operativo, che comporta l'interruzione dell'istanza Compute Engine o un'eccezione di controllo macchina (MCE) che viene trasmessa all'istanza. Quando un'applicazione nell'istanza Compute Engine tenta di leggere i dati dall'area di memoria non correggibile interessata, l'applicazione consuma questo segnale e termina. Quando il sistema operativo di un'istanza Compute Engine riceve questo segnale, per impostazione predefinita impedisce la riallocazione delle pagine di memoria interessate per evitare un ulteriore utilizzo.
Rileva gli errori dell'host
Per rilevare gli errori dell'host, configura criteri di avviso basati su log che utilizzano le seguenti query Compute Engine predefinite:
Nome della query/del filtro | Descrizione |
---|---|
Errore host Compute Engine (compute.instances.hostError) |
Un errore dell'host indica che si è verificato un errore hardware che ha comportato la necessità di terminare l'istanza Compute Engine. |
Avviso relativo alla memoria dell'host Compute Engine (compute.instances.hostEventNotify) |
Un avviso relativo alla memoria dell'host indica un tipo di errore hardware associato ai moduli di memoria. Questi errori possono derivare da guasti permanenti dei componenti nel tempo o da eventi transitori causati da particelle ad alta energia o raggi cosmici che impediscono il recupero sicuro di una pagina di memoria. |
Proteggere i carichi di lavoro SAP dagli errori dell'host
Per proteggere i tuoi carichi di lavoro SAP dagli errori dell'host, ti consigliamo quanto segue:
Assicurati che il riavvio automatico sia impostato per le istanze Compute Engine.
Compute Engine attiva questa opzione per tutte le istanze per impostazione predefinita. Ti consigliamo di non disattivarla.
Per proteggere i carichi di lavoro SAP HANA e SAP NetWeaver da errori di singole istanze, esegui il loro deployment con una configurazione ad alta disponibilità (HA).
Per ulteriori informazioni, consulta le seguenti guide:
Per proteggere i carichi di lavoro SAP HANA dall'interruzione di qualsiasi processo SAP HANA, implementa gli hook del provider SAP HANA HA/DR e attiva l'opzione di riavvio rapido SAP HANA.
Per informazioni su come eseguire queste operazioni, consulta la guida al deployment per il tuo scenario SAP HANA in Tutte le guide di SAP HANA.
Per proteggere i carichi di lavoro SAP HANA dagli errori di memoria rilevati dagli eventi Avviso di memoria dell'host Compute Engine (
compute.instances.host_event_notify
) per i tipi di macchine M2, M3 o M4, svolgi i seguenti passaggi:Se l'errore non correggibile non può essere gestito dalla VM, questa viene riavviata automaticamente a causa del criterio di riavvio automatico. In un cluster HA, il nodo secondario prende automaticamente il controllo. Non è richiesta alcuna ulteriore azione.
Se l'errore di memoria non correggibile può essere gestito dalla VM e non provoca un arresto anomalo della VM, procedi nel seguente modo:
Se l'istanza interessata è il nodo principale corrente del cluster ad alta disponibilità, avvia un failover manuale al nodo secondario del cluster.
Interrompi l'istanza interessata per rilasciare le pagine di memoria virtuale che sono state colpite dall'evento di errore dell'host.
Sebbene Compute Engine esegui automaticamente la migrazione delle VM interessate a un host funzionante durante questi eventi, alcune pagine di memoria possono rimanere inaccessibili. Se il carico di lavoro SAP HANA tenta di leggere le pagine di memoria interessate per la prima volta dopo l'errore di memoria, il carico di lavoro non va a buon fine e viene terminato. Arrestando l'istanza, libererai le pagine di memoria virtuale interessate che potrebbero essere rimaste dall'errore hardware iniziale.
Avvia l'istanza interessata.
Se non riesci ad arrestare e avviare la VM interessata, le applicazioni in esecuzione potrebbero continuare a funzionare finché non riescono a leggere le pagine di memoria interessate, il che può richiedere alcune ore. Riavviare la VM interessata appena possibile per rilasciare le pagine di memoria interessate.