Condividi tramite


Non è possibile riavviare o effettuare il provisioning di una macchina virtuale di Azure che esegue un kernel Linux precedente

Si applica a: ✔️ macchine virtuali Linux

Numero KB originale: 4041171

Note

CentOS a cui si fa riferimento in questo articolo è una distribuzione Linux e raggiungerà End Of Life (EOL). Valutare le proprie esigenze e pianificare di conseguenza. Per altre informazioni, vedere Indicazioni sulla fine della vita di CentOS.

Questo articolo fornisce una soluzione a un problema in cui la macchina virtuale di Azure che esegue una versione precedente del kernel Linux non viene riavviata o ne viene effettuato il provisioning.

Sintomi

Prendi in considerazione lo scenario seguente:

  • Si dispone di una macchina virtuale Linux di Microsoft Azure che esegue una delle distribuzioni Linux seguenti.

    Distribuzione linux (distribuzione) Versione distribuzione Versione del kernel
    Ubuntu 12.04 Qualsiasi versione
    Ubuntu 14.04 < 4.4.0-75
    Ubuntu 16.04 < 4.4.0-75
    SLES 11 Tutte le versioni
    SLES 12 < 4.4.59.92.12
    Red Hat Enterprise
    Linux, CentOS,
    Oracle Linux
    < 7.3 < 3.10.0-514
    Red Hat Enterprise
    Linux, CentOS
    < 6.9 < 2.6.32-671
    Debian < 7 Qualsiasi versione
    Debian 8 < 4.9
    CoreOS Any < 4.9
  • La macchina virtuale viene riavviata o viene effettuata una nuova richiesta di provisioning di macchine virtuali.

In questo scenario, la macchina virtuale non risponde o si verifica il timeout del provisioning. Quando si verifica questo problema, viene registrata una voce simile alla seguente nel log seriale linux:

[5.464091] hv_vmbus: probe failed for device vmbus_3 (-110) 
 [6.027866] hv_storvsc: probe of vmbus_3 failed with error -110

Note

Questa voce può contenere informazioni aggiuntive.

Causa

Questo problema si verifica perché la macchina virtuale Linux non comunica con l'host di Azure. Questo errore di comunicazione si verifica a causa di parametri di temporizzazione iperchiamata incompatibili nei driver Hyper-V esistenti nei kernel Linux meno recenti.

Risoluzione

Per risolvere questo problema, provare a riavviare manualmente la macchina virtuale dopo qualche tempo.  Se il problema persiste, ridistribuire la macchina virtuale in un nuovo nodo di Azure, avviare la macchina virtuale e quindi aggiornare il kernel Linux seguendo le istruzioni seguenti. È anche necessario eseguire questi passaggi nell'immagine personalizzata usata per distribuire la macchina virtuale.

Distribuzione linux Versione distribuzione Versione del kernel con la correzione Istruzioni per l'aggiornamento
Ubuntu 12.04 Nessuna disponibile Eseguire l'aggiornamento a un LTS successivo
Ubuntu 14.x 4.4.0-75 + Eseguire il seguente comando:
sudo apt-get update && sudo apt-get install linux-virtual-lts-xenial linux-tools-virtual-lts-xenial linux-cloud-tools-virtual-lts-xenial

Ubuntu 16.x 4.4.0-75 + Eseguire il seguente comando:
sudo apt-get update && sudo apt-get install linux-image-virtual linux-tools-virtual linux-cloud-tools-virtual

SLES 11 Non applicabile Eseguire l'aggiornamento a SLES 12
SLES 12 4.4.59.92.12 + Eseguire il seguente comando:
sudo zypper update kernel-default

Red Hat Enterprise Linux, CentOS, Oracle
Linux
6.x 2.6.32-671+ Eseguire il seguente comando:
yum -y update kernel

Red Hat Enterprise Linux, CentOS, Oracle
Linux
7.x 3.10.0-514.16+ Eseguire il seguente comando:
yum -y update kernel

Debian 7 Nessuna disponibile Eseguire l'aggiornamento a Debian 9
Debian 8 4.9 + Abilitare backport Debian e quindi eseguire il comando seguente:
sudo apt-get update && sudo apt-get install linux-image-amd64 hyperv-daemons

CoreOS Any 4.9 + Seguire le istruzioni riportate in Strategie di riavvio per gli aggiornamenti.

Ulteriori informazioni

Per altre informazioni sulle distribuzioni Linux approvate e sulle tecnologie open source in Azure, vedere Supporto per Linux e tecnologia open source in Azure.

Dichiarazione di non responsabilità sulle informazioni di terze parti

I prodotti di terzi citati in questo articolo sono prodotti da società indipendenti da Microsoft. Microsoft non rilascia alcuna garanzia implicita o esplicita relativa alle prestazioni o all'affidabilità di tali prodotti

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.