Hibernacji maszyn wirtualnych z systemem Linux
Dotyczy: ✔️ maszyny wirtualne z systemem Linux
Hibernacji umożliwia wstrzymywanie maszyn wirtualnych, które nie są używane, i oszczędzanie na kosztach obliczeń. Jest to efektywna funkcja zarządzania kosztami w scenariuszach, takich jak:
- Pulpity wirtualne, serwery deweloperskie/testowe i inne scenariusze, w których maszyny wirtualne nie muszą działać 24/7.
- Systemy z długim czasem rozruchu ze względu na aplikacje intensywnie korzystające z pamięci. Te aplikacje można zainicjować na maszynach wirtualnych i hibernacji. Te "wstępnie" maszyny wirtualne mogą być szybko uruchamiane w razie potrzeby, a aplikacje są już uruchomione w żądanym stanie.
Jak działa hibernacja
Aby dowiedzieć się, jak działa hibernacji, zapoznaj się z omówieniem hibernacji.
Obsługiwane konfiguracje
Obsługa hibernacji jest ograniczona do niektórych rozmiarów maszyn wirtualnych i wersji systemu operacyjnego. Przed użyciem hibernacji upewnij się, że masz obsługiwaną konfigurację.
Aby uzyskać listę rozmiarów maszyn wirtualnych zgodnych z hibernacji, zapoznaj się z sekcją Obsługiwane rozmiary maszyn wirtualnych w przeglądzie hibernacji.
Obsługiwane dystrybucje systemu Linux
Następujące systemy operacyjne Linux obsługują hibernacji:
- Ubuntu 22.04 LTS
- Ubuntu 20.04 LTS
- Ubuntu 18.04 LTS
- Debian 11
- Debian 10 (z jądrem backports)
- RHEL 9.0 i nowsze (z minimalną wersją jądra 5.14.0-70)
- RHEL 8.3 i nowsze (z minimalną wersją jądra 4.18.0.240)
Wymagania wstępne i ograniczenia konfiguracji
- Hibernacji nie jest obsługiwana w przypadku zaufanego uruchamiania dla maszyn wirtualnych z systemem Linux
Aby uzyskać ogólne ograniczenia, ograniczenia funkcji platformy Azure obsługiwane rozmiary maszyn wirtualnych i wymagania wstępne dotyczące funkcji, zapoznaj się z sekcją "Obsługiwane konfiguracje" w przeglądzie hibernacji.
Tworzenie maszyny wirtualnej z systemem Linux z włączoną hibernacji
Aby hibernować maszynę wirtualną, musisz najpierw włączyć tę funkcję na maszynie wirtualnej.
Aby włączyć hibernacji podczas tworzenia maszyny wirtualnej, możesz użyć witryny Azure Portal, interfejsu wiersza polecenia, programu PowerShell, szablonów usługi ARM i interfejsu API.
Aby włączyć hibernacji w witrynie Azure Portal, zaznacz pole "Włącz hibernacji" podczas tworzenia maszyny wirtualnej.
Po utworzeniu maszyny wirtualnej z włączoną hibernacji należy skonfigurować system operacyjny gościa w celu pomyślnego hibernacji maszyny wirtualnej.
Włączanie hibernacji na istniejącej maszynie wirtualnej z systemem Linux
Aby włączyć hibernacji na istniejącej maszynie wirtualnej, możesz użyć interfejsu wiersza polecenia platformy Azure, programu PowerShell lub interfejsu API REST. Przed kontynuowaniem upewnij się, że wersja systemu operacyjnego gościa obsługuje hibernacji na platformie Azure. Aby uzyskać więcej informacji, zobacz obsługiwane wersje systemu operacyjnego.
Aby włączyć hibernacji na istniejącej maszynie wirtualnej przy użyciu interfejsu wiersza polecenia platformy Azure, najpierw cofnij przydział maszyny wirtualnej za pomocą polecenia az vm deallocate. Po cofnięciu przydziału maszyny wirtualnej zaktualizuj dysk systemu operacyjnego i maszynę wirtualną.
Zaktualizuj dysk systemu operacyjnego, aby ustawić wartość obsługuje hibernacji na
true
. Jeśli wartość supportsHibernation jest już ustawiona natrue
wartość , możesz pominąć ten krok i przejść do następnego kroku.az disk update --resource-group myResourceGroup \ --name MyOSDisk \ --set supportsHibernation=true
Zaktualizuj maszynę wirtualną, aby włączyć hibernacji.
az vm update --resource-group myResourceGroup \ --name myVM \ --enable-hibernation true
Uruchom maszynę wirtualną, a następnie przejdź do konfigurowania hibernacji w systemie operacyjnym gościa.
az vm start --resource-group myResourceGroup \ --name myVM \
Konfigurowanie hibernacji w systemie operacyjnym gościa
Po upewnieniu się, że konfiguracja maszyny wirtualnej jest obsługiwana, można włączyć hibernacji na maszynie wirtualnej z systemem Linux przy użyciu jednej z dwóch opcji:
Opcja 1. LinuxHibernateExtension
Opcja 2: hibernation-setup-tool
LinuxHibernateExtension
Uwaga
Jeśli zainstalowano już narzędzie hibernation-setup-tool, nie musisz instalować rozszerzenia LinuxHibernateExtension. Są to nadmiarowe metody włączania hibernacji na maszynie wirtualnej z systemem Linux.
Podczas tworzenia maszyny wirtualnej z obsługą hibernacji za pośrednictwem witryny Azure Portal rozszerzenie LinuxHibernationExtension jest instalowane automatycznie na maszynie wirtualnej.
Jeśli brakuje rozszerzenia, możesz ręcznie zainstalować rozszerzenie LinuxHibernateExtension na maszynie wirtualnej z systemem Linux, aby skonfigurować system operacyjny gościa pod kątem hibernacji.
Uwaga
Rozszerzenia platformy Azure są obecnie domyślnie wyłączone dla obrazów Debiana. Aby ponownie włączyć rozszerzenia, zapoznaj się z przewodnikiem rozwiązywania problemów z hibernacji systemu Linux.
Uwaga
W przypadku systemu RHEL LVM należy rozwinąć wolumin główny i upewnić się, że jest wystarczająca ilość miejsca do utworzenia pliku zamiany. Aby rozwinąć wolumin, zapoznaj się z przewodnikiem rozszerzania dysku.
Aby zainstalować rozszerzenie LinuxHibernateExtension za pomocą interfejsu wiersza polecenia platformy Azure, uruchom następujące polecenie:
az vm extension set -n LinuxHibernateExtension --publisher Microsoft.CPlat.Core --version 1.0 \ --vm-name MyVm --resource-group MyResourceGroup --enable-auto-upgrade true
Narzędzie Hibernation-setup-tool
Uwaga
Jeśli zainstalowano już rozszerzenie LinuxHibernateExtension, nie musisz instalować narzędzia hibernation-setup-tool. Są to nadmiarowe metody włączania hibernacji na maszynie wirtualnej z systemem Linux.
Pakiet narzędzia hibernation-setup-tool można zainstalować na maszynie wirtualnej z systemem Linux z repozytorium oprogramowania systemu Linux firmy Microsoft pod adresem packages.microsoft.com.
Aby użyć repozytorium oprogramowania systemu Linux, postępuj zgodnie z instrukcjami w repozytorium pakietów systemu Linux dla oprogramowania firmy Microsoft.
Aby użyć narzędzia hibernation-setup-tool w wersjach Debian i Ubuntu, otwórz powłokę git bash i uruchom następujące polecenie:
curl -sSL https://packages.microsoft.com/keys/microsoft.asc | sudo tee etc/apt/trusted.gpg.d/microsoft.asc
sudo apt-add-repository https://packages.microsoft.com/ubuntu/20.04/prod
sudo apt-get update
Aby zainstalować pakiet, uruchom to polecenie w powłoce git bash:
sudo apt-get install hibernation-setup-tool
Uwaga
W przypadku systemu RHEL LVM należy rozwinąć wolumin główny i upewnić się, że jest wystarczająca ilość miejsca do utworzenia pliku zamiany. Aby rozwinąć wolumin, zapoznaj się z przewodnikiem rozszerzania dysku.
Po pomyślnym zainstalowaniu pakietu system operacyjny gościa systemu Linux jest skonfigurowany pod kątem hibernacji. Możesz również utworzyć nowy obraz galerii obliczeniowej platformy Azure na podstawie tej maszyny wirtualnej i użyć obrazu do utworzenia maszyn wirtualnych. Maszyny wirtualne utworzone za pomocą tego obrazu mają wstępnie zainstalowany pakiet hibernacji, co upraszcza środowisko tworzenia maszyny wirtualnej.
Hibernacji maszyny wirtualnej
Po utworzeniu maszyny wirtualnej z włączoną hibernacji i skonfigurowaniu systemu operacyjnego gościa pod kątem hibernacji można przełączyć maszynę wirtualną za pośrednictwem witryny Azure Portal, interfejsu wiersza polecenia platformy Azure, programu PowerShell lub interfejsu API REST.
Aby hibernacji maszyny wirtualnej w witrynie Azure Portal, kliknij przycisk "Hibernate" na stronie Przegląd maszyny wirtualnej.
Wyświetlanie stanu hibernacji maszyny wirtualnej
Aby wyświetlić stan maszyny wirtualnej w portalu, sprawdź stan "Stan" na stronie przeglądu. Powinien on zgłaszać wartość "Hibernated (cofnięto przydział)"
Uruchamianie hibernacji maszyn wirtualnych
Możesz uruchomić hiberowane maszyny wirtualne, tak jak można uruchomić zatrzymaną maszynę wirtualną. Można to zrobić za pośrednictwem witryny Azure Portal, interfejsu wiersza polecenia platformy Azure, programu PowerShell lub interfejsu API REST.
Aby uruchomić hiberowaną maszynę wirtualną przy użyciu witryny Azure Portal, kliknij przycisk "Uruchom" na stronie Przegląd maszyny wirtualnej.
Wdrażanie maszyn wirtualnych z włączoną hibernacji z galerii obliczeń platformy Azure
Maszyny wirtualne utworzone na podstawie obrazów galerii obliczeniowej można również włączyć dla hibernacji. Upewnij się, że wersja systemu operacyjnego skojarzona z obrazem galerii obsługuje hibernacji na platformie Azure. Zapoznaj się z listą obsługiwanych wersji systemu operacyjnego.
Aby utworzyć maszyny wirtualne z włączoną hibernacji przy użyciu obrazów galerii, należy najpierw utworzyć nową definicję obrazu z włączoną właściwością hibernacji. Po włączeniu tej właściwości funkcji w definicji obrazu galerii możesz utworzyć wersję obrazu i użyć tej wersji obrazu, aby utworzyć maszyny wirtualne z włączoną hibernacji.
Uwaga
W przypadku wyspecjalizowanych obrazów systemu Windows lokalizacja pliku strony musi być ustawiona na C: aby platforma Azure pomyślnie skonfigurowała system operacyjny gościa pod kątem hibernacji. Jeśli tworzysz wersję obrazu z istniejącej maszyny wirtualnej, najpierw przenieś plik stronicowania na dysk systemu operacyjnego, a następnie użyj maszyny wirtualnej jako źródła wersji obrazu.
Aby utworzyć definicję obrazu z włączoną właściwością hibernacji, wybierz znacznik wyboru "Włącz hibernacji".
Wdrażanie maszyn wirtualnych z włączoną hibernacji z dysku systemu operacyjnego
Maszyny wirtualne utworzone na podstawie dysków systemu operacyjnego można również włączyć dla hibernacji. Upewnij się, że wersja systemu operacyjnego skojarzona z dyskiem systemu operacyjnego obsługuje hibernacji na platformie Azure. Zapoznaj się z listą obsługiwanych wersji systemu operacyjnego.
Aby utworzyć maszyny wirtualne z włączoną hibernacji przy użyciu dysków systemu operacyjnego, upewnij się, że dysk systemu operacyjnego ma włączoną właściwość hibernacji. Zapoznaj się z przykładem interfejsu API, aby włączyć tę właściwość na dyskach systemu operacyjnego. Po włączeniu właściwości hibernacji na dysku systemu operacyjnego można utworzyć maszyny wirtualne z włączoną hibernacji przy użyciu tego dysku systemu operacyjnego.
PATCH https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-12-01
{
"properties": {
"supportsHibernation": true
}
}
Rozwiązywanie problemów
Aby uzyskać więcej informacji, zapoznaj się z przewodnikiem rozwiązywania problemów z hibernatem i przewodnikiem rozwiązywania problemów z hibernacji maszyny wirtualnej z systemem Linux.
Często zadawane pytania
Aby uzyskać więcej informacji, zobacz Często zadawane pytania dotyczące hibernacji.