Comprendere un riavvio del sistema per la macchina virtuale di Azure

Le macchine virtuali (VM) di Azure potrebbero a volte riavviarsi senza motivo apparente, senza che tu abbia avviato l'operazione di riavvio. Questo articolo elenca le azioni e gli eventi che possono causare il riavvio delle macchine virtuali e fornisce informazioni su come evitare problemi di riavvio imprevisti o ridurre l'impatto di tali problemi.

Configurare le macchine virtuali per la disponibilità elevata

Il modo migliore per proteggere un'applicazione in esecuzione in Azure da riavvii di macchine virtuali e tempi di inattività consiste nel configurare le macchine virtuali per la disponibilità elevata.

Per fornire questo livello di ridondanza alla tua applicazione, ti consigliamo di raggruppare due o più macchine virtuali in un set di disponibilità. Questa configurazione garantisce che durante un evento di manutenzione pianificato o non pianificato sia disponibile almeno una macchina virtuale e soddisfi il contratto di servizio di Azure al 99,95%.

Per ulteriori informazioni sui set di disponibilità, vedere Gestire la disponibilità delle macchine virtuali

Informazioni sull'Integrità risorse

Azure Resource Health è un servizio che espone l'integrità delle singole risorse di Azure e fornisce indicazioni utili per la risoluzione dei problemi. In un ambiente cloud in cui non è possibile accedere direttamente ai server o agli elementi dell'infrastruttura, l'obiettivo dell'integrità delle risorse è ridurre il tempo dedicato alla risoluzione dei problemi. In particolare, l'obiettivo è quello di ridurre il tempo impiegato per determinare se la radice del problema risiede nell'applicazione o in un evento all'interno della piattaforma Azure. Per ulteriori informazioni, consulta Comprendere e utilizzare l'integrità delle risorse.

Se Azure dispone di ulteriori informazioni sulla causa principale di un'indisponibilità avviata dalla piattaforma per una macchina virtuale, tali informazioni possono essere pubblicate nell'integrità della risorsa fino a 72 ore dopo l'indisponibilità iniziale.

Tempi di inattività delle macchine virtuali mancanti nel registro attività

              Gli avvisi sullo stato di integrità risorse vengono inviati in base alle informazioni del registro attività. In alcuni casi, i tempi di inattività delle VM potrebbero non essere visualizzati nel registro attività. Se il tempo di inattività non viene visualizzato nel registro attività, gli avvisi sull'integrità delle risorse non verranno inviati per il tempo di inattività. Il tempo di inattività è ancora visibile in Integrità risorse.

Di seguito sono riportati i casi in cui i tempi di inattività delle VM non vengono visualizzati nel registro delle attività:

  • Quando una macchina virtuale viene creata o migrata a un nuovo host, la piattaforma Azure non visualizza correttamente lo stato della macchina virtuale e lo stato diventa sconosciuto. Solo dopo aver stabilito tutta la connettività di rete e i processi del nodo, lo stato della macchina virtuale cambia in Disponibile. Il periodo prolungato dello stato Sconosciuto viene escluso dal registro attività.
  • Quando lo stato di disponibilità della macchina virtuale passa da Disponibile a Non disponibile e quindi torna a Disponibile entro 35 secondi, il tempo di inattività non viene visualizzato nel registro attività. Questo caso non si verificherà se un tempo di inattività correlato viene inviato entro 15 minuti prima del verificarsi della prima transizione.
  • Se l'integrità della macchina virtuale passa da uno stato a sconosciuto e quindi torna allo stato originale, lo stato sconosciuto intermittente e le relative transizioni vengono filtrate dal registro attività.

I tempi di inattività delle macchine virtuali che non vengono visualizzati nel registro attività vengono filtrati sul lato della piattaforma Azure per evitare che errori temporanei mostrino tempi di inattività errati ai clienti. Con gli investimenti in corso nella qualità dell'integrità delle macchine virtuali, i filtri potrebbero non essere più necessari e potrebbero non essere segnalati rapidi cambiamenti nell'integrità delle macchine virtuali. Microsoft sta lavorando a un piano di eliminazione graduale per offrire la migliore esperienza ai clienti.

Azioni ed eventi che possono causare il riavvio della macchina virtuale

Manutenzione pianificata

Microsoft Azure esegue periodicamente aggiornamenti in tutto il mondo per migliorare l'affidabilità, le prestazioni e la sicurezza dell'infrastruttura host alla base delle macchine virtuali. Molti di questi aggiornamenti, inclusi gli aggiornamenti per la conservazione della memoria, vengono eseguiti senza alcun impatto sulle macchine virtuali o sui servizi cloud.

Tuttavia, alcuni aggiornamenti richiedono un riavvio. In tali casi, le macchine virtuali vengono arrestate mentre applichiamo l'infrastruttura, quindi le macchine virtuali vengono riavviate.

Per comprendere cos'è la manutenzione pianificata di Azure e in che modo può influire sulla disponibilità delle macchine virtuali Linux, vedere gli articoli elencati qui. Gli articoli forniscono informazioni di base sul processo di manutenzione pianificata di Azure e su come pianificare la manutenzione pianificata per ridurre ulteriormente l'impatto.

Aggiornamenti che preservano la memoria

Per questa classe di aggiornamenti in Microsoft Azure, gli utenti non hanno alcun impatto sulle macchine virtuali in esecuzione. Molti di questi aggiornamenti riguardano componenti o servizi che possono essere aggiornati senza interferire con l'istanza in esecuzione. Alcuni sono aggiornamenti dell'infrastruttura della piattaforma nel sistema operativo host che possono essere applicati senza riavviare le macchine virtuali.

Questi aggiornamenti che preservano la memoria vengono eseguiti con una tecnologia che consente la migrazione in tempo reale sul posto. Quando viene aggiornata, la VM viene posta in uno stato in pausa. Questo stato preserva la memoria nella RAM mentre il sistema operativo host sottostante riceve gli aggiornamenti e le patch necessari. La VM viene ripresa in genere entro 30 secondi dalla sospensione. Dopo che la macchina virtuale è stata ripristinata, il relativo orologio viene sincronizzato automaticamente.

A causa del breve periodo di pausa, la distribuzione degli aggiornamenti tramite questo meccanismo riduce notevolmente l'impatto sulle macchine virtuali. Tuttavia, non tutti gli aggiornamenti possono essere distribuiti in questo modo.

Gli aggiornamenti a più istanze (per le macchine virtuali in un set di disponibilità) vengono applicati un dominio di aggiornamento alla volta.

Nota

Le macchine Linux con vecchie versioni del kernel sono interessate da un kernel panic durante questo metodo di aggiornamento. Per evitare questo problema, eseguire l'aggiornamento alla versione del kernel 3.10.0-327.10.1 o successiva. Per ulteriori informazioni, vedere Una macchina virtuale di Azure Linux su un kernel basato su 3.10 restituisce un errore grave dopo l'aggiornamento di un nodo host.

Azioni di riavvio o arresto avviate dall'utente

Se si esegue un riavvio dal portale di Azure, da Azure PowerShell, dall'interfaccia della riga di comando o dall'API REST, è possibile trovare l'evento nel registro attività di Azure.

Se esegui l'azione dal sistema operativo della VM, puoi trovare l'evento nei log di sistema.

Altri scenari che in genere causano il riavvio della macchina virtuale includono più azioni di modifica della configurazione. Normalmente vedrai un messaggio di avviso che indica che l'esecuzione di una particolare azione comporterà il riavvio della VM. Gli esempi includono qualsiasi operazione di ridimensionamento della macchina virtuale, la modifica della password dell'account amministrativo e l'impostazione di un indirizzo IP statico.

Microsoft Defender per cloud e Windows Update

Microsoft Defender for Cloud monitora quotidianamente le macchine virtuali Windows e Linux per verificare l'assenza di aggiornamenti del sistema operativo. Defender for Cloud recupera un elenco di aggiornamenti critici e di sicurezza disponibili da Windows Update o da Windows Server Update Services (WSUS), a seconda del servizio configurato su una macchina virtuale Windows. Defender for Cloud controlla anche gli ultimi aggiornamenti per i sistemi Linux. Se la macchina virtuale non dispone di un aggiornamento di sistema, Defender for Cloud consiglierà di applicare gli aggiornamenti di sistema. L'applicazione di questi aggiornamenti di sistema è controllata tramite Defender for Cloud nel Portale di Azure. Dopo aver applicato alcuni aggiornamenti, potrebbe essere necessario riavviare la VM. Per ulteriori informazioni, vedi Applicare gli aggiornamenti di sistema in Microsoft Defender per il cloud.

Analogamente ai server locali, Azure non esegue il push degli aggiornamenti da Windows Update alle macchine virtuali Windows, perché queste macchine devono essere gestite dagli utenti. Tuttavia, sei incoraggiato a lasciare abilitata l'impostazione automatica di Windows Update. L'installazione automatica degli aggiornamenti da Windows Update può anche causare il riavvio dopo l'applicazione degli aggiornamenti. Per ulteriori informazioni, vedere Domande frequenti su Windows Update.

Altre situazioni che influenzano la disponibilità della tua VM

Esistono altri casi in cui Azure potrebbe sospendere attivamente l'uso di una macchina virtuale. Riceverai notifiche via email prima che venga intrapresa questa azione, quindi avrai la possibilità di risolvere i problemi sottostanti. Esempi di problemi che influiscono sulla disponibilità delle macchine virtuali includono violazioni della sicurezza e la scadenza dei metodi di pagamento.

Errori del server host

La macchina virtuale è ospitata in un server fisico in esecuzione all'interno di un data center di Azure. Il server fisico esegue un agente denominato agente host oltre ad alcuni altri componenti di Azure. Quando questi componenti software di Azure nel server fisico non rispondono, il sistema di monitoraggio attiva un riavvio del server host per tentare il ripristino. Di solito la macchina virtuale è nuovamente disponibile entro 10-15 minuti e continua a operare sullo stesso host di prima.

Gli errori del server sono in genere causati da guasti hardware, come il guasto di un disco rigido o di un'unità a stato solido. Azure monitora continuamente queste occorrenze, identifica i bug sottostanti e distribuisce gli aggiornamenti dopo che la mitigazione è stata implementata e testata.

Poiché alcuni errori del server host possono essere specifici di quel server, una situazione di riavvio ripetuto della VM potrebbe essere migliorata ridistribuendo manualmente la VM su un altro server host. Questa operazione può essere attivata utilizzando l'opzione redeploy nella pagina dei dettagli della macchina virtuale, oppure arrestando e riavviando la macchina virtuale di Azure.

Ripristino automatico

Se il server host non può riavviarsi per qualsiasi motivo, la piattaforma Azure avvia un'azione di ripristino automatico per escludere dalla rotazione il server host difettoso per ulteriori indagini.

Tutte le macchine virtuali su quell'host vengono riposizionate automaticamente su un server host diverso e integro. Anche se questo processo si completa in genere entro 15 minuti, il tempo necessario per il ripristino può variare in base a diversi fattori, tra cui la dimensione della memoria dell'host e i metodi di ripristino utilizzati. Per ulteriori informazioni sul processo di ripristino automatico, consulta Ripristino automatico delle macchine virtuali.

Manutenzione non pianificata

In rare occasioni, il team operativo di Azure potrebbe dover eseguire attività di manutenzione per garantire l'integrità generale della piattaforma Azure. Questo comportamento potrebbe influire sulla disponibilità della macchina virtuale e in genere comporta la stessa azione di ripristino automatico descritta in precedenza.

La manutenzione non pianificata include quanto segue:

  • Deframmentazione urgente del nodo
  • Aggiornamenti urgenti dello switch di rete

La macchina virtuale si arresta in modo anomalo

Le VM potrebbero riavviarsi a causa di problemi all'interno della VM stessa. Il carico di lavoro o il ruolo in esecuzione nella macchina virtuale potrebbe attivare un controllo dei bug all'interno del sistema operativo guest. Per informazioni su come determinare il motivo dell'arresto anomalo, visualizzare i log di sistema e dell'applicazione per le macchine virtuali Windows e i log seriali per le macchine virtuali Linux.

Le macchine virtuali in Azure si basano su dischi virtuali per il sistema operativo e l'archiviazione dei dati ospitati nell'infrastruttura di archiviazione di Azure. Ogni volta che la disponibilità o la connettività tra la VM e i dischi virtuali associati è interessata per più di 120 secondi, la piattaforma Azure esegue un arresto forzato delle VM per evitare il danneggiamento dei dati. Le macchine virtuali vengono riaccese automaticamente dopo il ripristino della connettività di archiviazione. La durata dell'arresto può essere di soli cinque minuti, ma può essere significativamente più lunga.

Altri incidenti

In rare circostanze, un problema diffuso può interessare più server in un data center di Azure. Se si verifica questo problema, il team di Azure invia notifiche tramite posta elettronica alle sottoscrizioni interessate. È possibile controllare il dashboard di integrità del servizio di Azure e il portale di Azure per lo stato delle interruzioni in corso e degli incidenti passati.

Diagnostica riavvii VM

È possibile utilizzare il pannello Diagnostica e risoluzione dei problemi sul pannello della macchina virtuale per eseguire una diagnostica aggiuntiva. Questo potrebbe scoprire ragioni più specifiche per il tuo recente riavvio della VM. In caso di problemi con il sistema operativo guest, raccogliere il dump della memoria e contattare il supporto tecnico.

Contattaci per ricevere assistenza

In caso di domande o bisogno di assistenza, creare una richiesta di supporto tecnico oppure formula una domanda nel Supporto della community di Azure. È possibile anche inviare un feedback sul prodotto al feedback della community di Azure.