Często zadawane pytania dotyczące ponownego uruchamiania wystąpienia roli spowodowanego uaktualnieniami systemu operacyjnego maszyny wirtualnej

Ten artykuł zawiera odpowiedzi na często zadawane pytania dotyczące ponownego uruchamiania wystąpienia roli, które są spowodowane uaktualnieniami do systemu operacyjnego Windows na maszynie wirtualnej platformy Microsoft Azure jako usługi (PaaS).

Jak mogę zrezygnować z aktualizacji systemu operacyjnego?

Nie można zrezygnować z aktualizacji systemu operacyjnego hosta. Firma Microsoft musi obsługiwać aktualne systemy operacyjne hosta w centrum danych. Możesz zrezygnować z aktualizacji systemu operacyjnego gościa, określając wersję systemu operacyjnego gościa. Jeśli jednak to zrobisz, usługa nie będzie już otrzymywać aktualizacji zabezpieczeń i może być podatna na ataki. Aby uzyskać więcej informacji, zobacz Zarządzanie wersją systemu operacyjnego gościa.

Jak mogę wymuszać aktualizacje i ponowne uruchamianie tylko w godzinach poza godzinami pracy?

Nie można kontrolować, kiedy pojedyncze wystąpienie lub usługa jest uaktualniona dla systemu operacyjnego hosta. Uaktualnienie jest uruchamiane we wszystkich centrach danych platformy Azure na całym świecie mniej więcej w tym samym czasie. Sieć szkieletowa stale pracuje nad uaktualnianiem każdego centrum danych. Ze względu na złożoność zapewniania, że reguły uaktualniania domeny są przestrzegane dla wszystkich usług w chmurze, ten proces trwa kilka dni. Nie ma możliwości kontrolowania ani określania, kiedy będzie to miało wpływ na określone wystąpienie. Aby kontrolować aktualizację systemu operacyjnego gościa, możesz określić stałą wersję systemu operacyjnego gościa, a następnie zaktualizować ją zawsze, gdy wszystko będzie gotowe.

Zainstalowano coś na maszynie wirtualnej. Ale teraz maszyna wirtualna została ponownie uruchomiona, a zainstalowane oprogramowanie zniknęło! Dlaczego oprogramowanie zniknęło?

Nie ma obsługi nawiązywania połączenia z maszyną wirtualną paaS platformy Azure za pośrednictwem protokołu RDP (Remote Desktop Protocol) i wprowadzania zmian lub instalowania oprogramowania. W dowolnym momencie maszyna wirtualna może zostać ponownie utworzona, a wszelkie wprowadzone zmiany zostaną utracone. Ten scenariusz może wystąpić w przypadku awarii sprzętu i konieczności uruchomienia nowej maszyny wirtualnej na nowym sprzęcie. Nastąpi to również podczas aktualizacji systemu operacyjnego gościa podczas odbudowy partycji systemu Windows. Jeśli musisz zainstalować oprogramowanie lub wprowadzić zmiany na maszynie wirtualnej, utwórz zadanie uruchamiania i wykonaj z tego miejsca pracę. Ten proces gwarantuje, że po ponownym utworzeniu maszyny wirtualnej konfiguracja zostanie uruchomiona ponownie.

Czy jedna z aktualizacji w nowej wersji systemu operacyjnego gościa może złamać moją usługę?

Aktualizacje zainstalowane w nowej wersji systemu operacyjnego gościa są publicznie dostępne i dokładnie przetestowane poprawki. Te poprawki są również wdrażane na serwerach na całym świecie za pośrednictwem Windows Update, a prawdopodobieństwo niekorzystnego wpływu na usługę jest niewielkie. Jeśli chodzi o usługi lokalne, należy zarządzać poprawkami systemu operacyjnego na maszynach wirtualnych platformy Azure przy użyciu środowiska przejściowego, w którym najpierw testujesz aktualizacje.

Jeśli chcesz skonfigurować środowisko przejściowe do testowania aktualizacji przed środowiskiem produkcyjnym, skonfiguruj usługę produkcyjną tak, aby używała ciągu systemu operacyjnego o stałej wersji w pliku cscfg. Następnie, gdy jest dostępny nowy system operacyjny gościa, możesz wdrożyć usługę w miejscu przejściowym przy użyciu najnowszej wersji systemu operacyjnego gościa. Po sprawdzeniu, czy usługa działa poprawnie w najnowszym systemie operacyjnym gościa, możesz tworzyć wymianę adresów VIP. Możesz też przeprowadzić uaktualnienie w miejscu usługi produkcyjnej, aby korzystać z najnowszego systemu operacyjnego.

Jak długo potrwa uaktualnienie? Jak długo moja maszyna wirtualna będzie wyłączona?

Typowym błędem jest to, że tym więcej aktualizacji jest stosowanych, tym dłużej trwa proces. To założenie opiera się na przekonaniu, że uaktualnienie działa podobnie do uaktualnienia Windows Update na komputerze stacjonarnym. W przypadku uaktualnienia systemu Windows wiele aktualizacji jest kopiowanych do systemu Windows i instalowanych przez uwzględnienie kolejnych ponownych uruchomień. Jednak ten proces nie działa na platformie Azure.

Po wydaniu nowej wersji systemu operacyjnego na platformie Azure zespół systemu operacyjnego pobiera najnowszy obraz, stosuje aktualizacje, a następnie tworzy wirtualny dysk twardy (VHD), który zawiera ten nowy obraz podstawowy. Ten obraz podstawowy jest następnie kopiowany do repozytorium na platformie Azure. Gdy sieć szkieletowa zostanie poinstruowana o uaktualnieniu systemu operacyjnego, najpierw dokona przekazania kopii. W centrum danych, które ma zostać uaktualnione, sieć szkieletowa kopiuje ten nowy dysk VHD obrazu podstawowego na dysk twardy na każdym serwerze. Po zakończeniu tego procesu sieć szkieletowa rozpoczyna proces uaktualniania zgodnie ze zwykłymi regułami domeny uaktualniania.

Gdy gość ma zostać zaktualizowany, sieć szkieletowa wykonuje bezproblemowe zamknięcie systemu operacyjnego, a następnie uruchamia nową maszynę wirtualną przy użyciu nowego obrazu podstawowego. Czas wymagany do uaktualnienia danej maszyny wirtualnej dla systemu operacyjnego gościa to mniej więcej tyle samo czasu, ile potrzeba do bezproblemowego zamknięcia i ponownego uruchomienia systemu Windows.

Czas aktualizacji systemu operacyjnego hosta jest inny. Po uaktualnieniu hosta następuje następująca sekwencja:

  • Host wysyła komunikat o zamknięciu do każdego systemu operacyjnego gościa uruchomionego na tym hoście.

  • Każdy system operacyjny gościa ma standardowe OnStop zdarzenie i czas zamknięcia systemu Windows, aby zakończyć zamykanie.

  • Po zamknięciu każdego systemu operacyjnego gościa system operacyjny hosta wykonuje bezproblemowe zamknięcie i przechodzi normalną procedurę zamykania.

  • Po zamknięciu systemu operacyjnego hosta host jest ponownie uruchamiany przy użyciu nowego obrazu systemu operacyjnego.

  • Po uruchomieniu hosta uruchamiany jest każdy system operacyjny gościa.

Ten proces aktualizacji systemu operacyjnego hosta zwykle trwa od 15 do 20 minut. Czas może się różnić w zależności od tego, ilu innych gości jest na tym hoście i ile czasu jest konieczne do ich przetworzenia. Jednak zawsze będą występować wyjątki, jeśli wystąpi awaria w określonym węźle, a sieć szkieletowa platformy Azure określi, że goście w tym węźle muszą zostać przeniesieni do innego węzła.

Jak mogę obsługiwać zamykanie systemu operacyjnego?

Po zaktualizowaniu systemu operacyjnego usługa Azure Fabric przeprowadza bezproblemowe zamknięcie wystąpienia roli. To rozwiązanie oznacza, że kod ASP.NET otrzyma Application_End zdarzenie, a środowisko uruchomieniowe usługi platformy Azure zgłosi Stopping zdarzenia i OnStop . Kod będzie miał pięć minut na zakończenie pracy OnStop czyszczenia przed zamknięciem procesu. Po zamknięciu procesu hosta platformy Azure system Windows przejdzie normalne bezproblemowe zamknięcie, które obejmuje podniesienie standardu OnStop i powiązanych zdarzeń dla usług systemu Windows.

Aby uzyskać więcej informacji na temat sposobu obsługi zamykania wystąpienia, zobacz Właściwy sposób obsługi zdarzeń onStop platformy Azure, Dostosowywanie cyklu życia roli Sieci Web lub procesu roboczego na platformie .NET oraz Metoda RoleEntryPoint.OnStop().

Więcej informacji

Skontaktuj się z nami, aby uzyskać pomoc

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