Udostępnij za pośrednictwem


Nie można ponownie uruchomić lub aprowizować maszyny wirtualnej platformy Azure z starszym jądrem systemu Linux

Dotyczy: ✔️ maszyny wirtualne z systemem Linux

Oryginalny numer KB: 4041171

Uwaga

CentOS, do których odwołuje się ten artykuł, jest dystrybucją systemu Linux i osiągnie koniec życia (EOL). Rozważ odpowiednie użycie i zaplanuj. Aby uzyskać więcej informacji, zobacz CentOS End Of Life guidance (Wskazówki dotyczące zakończenia życia systemu CentOS).

Ten artykuł zawiera rozwiązanie problemu, w którym maszyna wirtualna platformy Azure z uruchomioną starszą wersją jądra systemu Linux nie może zostać uruchomiona ponownie lub aprowizowana.

Objawy

Rozważmy następujący scenariusz:

  • Masz maszynę wirtualną z systemem Linux platformy Microsoft Azure, na której działa jedna z następujących dystrybucji systemu Linux.

    Dystrybucja systemu Linux (dystrybucja) Wersja dystrybucji Wersja jądra
    Ubuntu 12.04 Dowolna wersja
    Ubuntu 14.04 < 4.4.0-75
    Ubuntu 16.04 < 4.4.0-75
    SLES 11 Wszystkie wersje
    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 Dowolna wersja
    Debian 8 < 4.9
    CoreOS Dowolne < 4.9
  • Maszyna wirtualna zostanie uruchomiona ponownie lub zostanie wykonane nowe żądanie aprowizacji maszyny wirtualnej.

W tym scenariuszu maszyna wirtualna przestaje odpowiadać lub upłynął limit czasu aprowizacji. W przypadku wystąpienia tego problemu wpis podobny do następującego jest rejestrowany w dzienniku szeregowym systemu Linux:

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

Uwaga

Ten wpis może zawierać dodatkowe informacje.

Przyczyna

Ten problem występuje, ponieważ maszyna wirtualna z systemem Linux nie komunikuje się z hostem platformy Azure. Ten błąd komunikacji występuje z powodu niezgodnych parametrów chronometrażu wywołań hyper-V w sterownikach funkcji Hyper-V, które istnieją w starszych jądrach systemu Linux.

Rozwiązanie

Aby rozwiązać ten problem, spróbuj ręcznie ponownie uruchomić maszynę wirtualną po pewnym czasie.  Jeśli problem będzie się powtarzać, ponownie wdróż maszynę wirtualną w nowym węźle platformy Azure, uruchom maszynę wirtualną, a następnie zaktualizuj jądro systemu Linux, korzystając z poniższych instrukcji. Należy również wykonać te kroki na obrazie niestandardowym używanym do wdrożenia maszyny wirtualnej.

Dystrybucja systemu Linux Wersja dystrybucji Wersja jądra zawierająca poprawkę Instrukcje dotyczące aktualizacji
Ubuntu 12.04 Brak dostępnych Uaktualnianie do nowszej wersji LTS
Ubuntu 14.x 4.4.0-75 + Uruchom następujące polecenie:
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 + Uruchom następujące polecenie:
sudo apt-get update && sudo apt-get install linux-image-virtual linux-tools-virtual linux-cloud-tools-virtual

SLES 11 Nie dotyczy Uaktualnianie do wersji SLES 12
SLES 12 4.4.59.92.12 + Uruchom następujące polecenie:
sudo zypper update kernel-default

Red Hat Enterprise Linux, CentOS, Oracle
Linux
6.x 2.6.32-671+ Uruchom następujące polecenie:
yum -y update kernel

Red Hat Enterprise Linux, CentOS, Oracle
Linux
7.x 3.10.0-514.16+ Uruchom następujące polecenie:
yum -y update kernel

Debian 7 Brak dostępnych Uaktualnianie do systemu Debian 9
Debian 8 4.9 + Włącz backporty Debiana, a następnie uruchom następujące polecenie:
sudo apt-get update && sudo apt-get install linux-image-amd64 hyperv-daemons

CoreOS Dowolne 4.9 + Postępuj zgodnie z instrukcjami w temacie Strategie ponownego uruchamiania aktualizacji.

Więcej informacji

Aby uzyskać więcej informacji na temat zatwierdzonych dystrybucji systemu Linux i technologii open source na platformie Azure, zobacz Obsługa systemów Linux i technologii open source na platformie Azure.

Zastrzeżenie dotyczące innych firm

Produkty innych firm omówione w tym artykule są wytwarzane przez producentów niezależnych od firmy Microsoft. Firma Microsoft nie udziela żadnych gwarancji, dorozumianych ani żadnego innego rodzaju, w odniesieniu do wydajności lub niezawodności tych produktów.

Skontaktuj się z nami, aby uzyskać pomoc

Jeśli masz pytania lub potrzebujesz pomocy, utwórz wniosek o pomoc techniczną lub zadaj pomoc techniczną społeczności platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii na temat platformy Azure.