Konfigurowanie hibernacji w usłudze Microsoft Dev Box

Z tego artykułu dowiesz się, jak włączyć i wyłączyć hibernacji w usłudze Microsoft Dev Box. Hibernacja jest kontrolowana na poziomie obrazu pola deweloperskiego i definicji pola deweloperskiego.

Hibernacji pól deweloperskich na końcu dnia roboczego może pomóc zaoszczędzić znaczną część kosztów maszyny wirtualnej. Eliminuje to konieczność zamknięcia skrzynki deweloperów i utraty otwartych okien i aplikacji.

Wraz z wprowadzeniem hibernacji usługi Dev Box (wersja zapoznawcza) możesz włączyć tę funkcję w nowych polach deweloperskich i hibernacji i wznowić ich działanie. Ta funkcja zapewnia wygodny sposób zarządzania skrzynkami deweloperskimi przy zachowaniu środowiska pracy.

Istnieją dwa kroki umożliwiające włączenie hibernacji:

  1. Włączanie hibernacji na obrazie usługi Dev Box
  2. Włączanie hibernacji w definicji pola deweloperskiego

Ważne

Hibernacji usługi Dev Box jest obecnie dostępna w wersji zapoznawczej. Aby uzyskać więcej informacji na temat stanu wersji zapoznawczej, zobacz Dodatkowe warunki użytkowania dla wersji zapoznawczych platformy Microsoft Azure. Dokument definiuje postanowienia prawne, które mają zastosowanie do funkcji platformy Azure, które są w wersji beta, wersji zapoznawczej lub w inny sposób nie zostały jeszcze wydane do ogólnej dostępności.

Zagadnienia dotyczące obrazów z obsługą hibernacji

Przed włączeniem hibernacji w polu deweloperskim zapoznaj się z poniższymi zagadnieniami dotyczącymi obrazów z obsługą hibernacji.

  • Obecnie dwie jednostki SKU obsługują hibernacji: 8 i 16 jednostek SKU procesorów wirtualnych. Obecnie 32 jednostki SKU procesorów wirtualnych nie obsługują hibernacji.

  • Hibernacji można włączyć tylko w nowych polach deweloperskich utworzonych przy użyciu definicji pól deweloperskich z obsługą hibernacji. Nie można włączyć hibernacji w istniejących polach deweloperskich.

  • Możesz hibernować pole deweloperskie tylko przy użyciu portalu deweloperów firmy Microsoft, interfejsu wiersza polecenia platformy Azure, programu PowerShell, zestawów SDK i interfejsu API REST. Hibernacji z poziomu pola deweloperskiego w systemie Windows nie jest obsługiwane.

  • Jeśli pracujesz z obrazem witryny Azure Marketplace, zalecamy użycie programu Visual Studio dla obrazów pól deweloperskich.

  • Obraz optymalizacji systemu Windows 11 Enterprise CloudPC + OS zawiera zoptymalizowane ustawienia zasilania i nie można ich używać z hibernacji.

  • Po włączeniu hibernacji nie można wyłączyć tej funkcji w tym polu deweloperskim. Można jednak wyłączyć obsługę hibernacji w definicji pola deweloperskiego, aby pola deweloperskie utworzone w przyszłości nie miały hibernacji.

  • Aby włączyć hibernacji, należy włączyć wirtualizację zagnieżdżonych w systemie operacyjnym Windows. Jeśli funkcja "Platforma maszyny wirtualnej" nie jest włączona na obrazie DevBox, usługa DevBox automatycznie włącza wirtualizację zagnieżdżonych dla Ciebie, jeśli zdecydujesz się włączyć hibernacji.

  • Hibernacji nie obsługuje funkcji integralności kodu chronionego przez funkcję hypervisor (HVCI) / funkcji integralności pamięci. Pole deweloperskie powoduje automatyczne wyłączenie tej funkcji.

  • Harmonogramy automatycznego zatrzymywania nadal zamykają pola deweloperskie. Jeśli chcesz hibernować swoje pole deweloperskie, możesz to zrobić za pośrednictwem portalu dla deweloperów lub przy użyciu interfejsu wiersza polecenia platformy Azure.

    Uwaga

    Funkcja planowania automatycznego hibernacji pól deweloperskich jest dostępna w wersji zapoznawczej. Możesz zarejestrować się w celu uzyskania wersji zapoznawczej na stronie Microsoft Dev Box — automatyczne harmonogramy hibernacji (wersja zapoznawcza).

Ustawienia niezgodne z hibernacji

Następujące ustawienia są znane jako niezgodne z hibernacji i nie są obsługiwane w scenariuszach hibernacji:

  • Integralność pamięci/integralność kodu funkcji Hypervisor

    Aby wyłączyć integralność pamięci/integralność kodu funkcji Hypervisor:

    1. W menu Start systemu Windows znajdź i otwórz Zabezpieczenia Windows.
    2. Przejdź do pozycji Zabezpieczenia urządzeń.
    3. W obszarze Izolacja podstawowa wybierz pozycję Szczegóły izolacji podstawowej
    4. W obszarze Integralność pamięci ustaw przełącznik na Wyłączone.

    Po zmianie tego ustawienia należy ponownie uruchomić maszynę.

  • Funkcje oparte na wirtualnym trybie bezpiecznym gościa bez włączonej wirtualizacji zagnieżdżonej

    Aby włączyć wirtualizację zagnieżdżona:

    1. W menu Start wyszukaj pozycję Włącz lub wyłącz funkcje systemu Windows.
    2. W oknie dialogowym zaznacz pole wyboru Platforma maszyny wirtualnej.
    3. Wybierz przycisk OK , aby zapisać zmiany ustawień.

Włączanie hibernacji na obrazie usługi Dev Box

Jeśli planujesz używać obrazu niestandardowego z galerii obliczeniowej platformy Azure, musisz włączyć możliwości hibernacji podczas tworzenia nowego obrazu. Nie można włączyć hibernacji dla istniejących obrazów.

Uwaga

Obrazy programu Visual Studio i platformy Microsoft 365, które udostępnia usługa Microsoft Dev Box w witrynie Azure Marketplace, są już skonfigurowane do obsługi hibernacji. Nie trzeba włączać hibernacji na tych obrazach. Są one gotowe do użycia.

Aby włączyć możliwości hibernacji, ustaw flagę IsHibernateSupported na true podczas tworzenia obrazu:

az sig image-definition create 
--resource-group <resourceGroupName> --gallery-name <galleryName> --gallery-image-definition <imageName> --location <location> 
--publisher <publisherName> --offer <offerName> --sku <skuName> --os-type windows --os-state Generalized 
--features "IsHibernateSupported=true SecurityType=TrustedLaunch" --hyper-v-generation V2 

Jeśli używasz narzędzia sysprep i uogólnionej maszyny wirtualnej do utworzenia obrazu niestandardowego, przechwyć obraz przy użyciu interfejsu wiersza polecenia platformy Azure:

az sig image-version create 
--resource-group <resourceGroupName> --gallery-name <galleryName> --gallery-image-definition <imageName> 
--gallery-image-version <versionNumber> --virtual-machine <VMResourceId>

Aby uzyskać więcej informacji na temat tworzenia obrazu niestandardowego, zobacz Konfigurowanie pola deweloperskiego przy użyciu narzędzia Azure VM Image Builder.

Włączanie hibernacji w definicji pola deweloperskiego

W usłudze Microsoft Dev Box można włączyć hibernacji dla nowej definicji pola deweloperskiego, gdy definicja używa niestandardowego obrazu z obsługą hibernacji lub obrazu witryny Azure Marketplace. Możesz również zaktualizować istniejącą definicję pola deweloperskiego, która używa obrazu niestandardowego z obsługą hibernacji lub witryny Azure Marketplace.

Wszystkie nowe pola deweloperskie utworzone w pulach pól deweloperskich, które używają definicji pola deweloperskiego z włączoną hibernacji, mogą zarówno hibernacji, jak i zamykania. Jeśli pula zawiera pola deweloperskie utworzone przed włączeniem hibernacji, te pola deweloperskie nadal obsługują zamykanie.

Usługa Microsoft Dev Box weryfikuje obraz pod kątem obsługi hibernacji. Definicja pola deweloperskiego może zakończyć się niepowodzeniem, jeśli nie można pomyślnie włączyć hibernacji przy użyciu obrazu.

Hibernacji można włączyć w definicji pola deweloperskiego przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Włączanie hibernacji w witrynie Azure Portal

  1. Zaloguj się w witrynie Azure Portal.

  2. W polu wyszukiwania wprowadź centrum deweloperów. Na liście wyników wybierz pozycję Centra deweloperów.

  3. Otwórz centrum deweloperów zawierające definicję pola deweloperskiego, którą chcesz zaktualizować, a następnie wybierz pozycję Definicje pól deweloperskich.

    Screenshot that shows the dev center overview page and the menu option for dev box definitions.

  4. Wybierz definicję pola deweloperskiego, którą chcesz zaktualizować, a następnie wybierz przycisk edytuj (ołówek).

    Screenshot of the list of existing dev box definitions and the edit (pencil) button.

  5. Na stronie Edytowanie definicji pola deweloperskiego zaznacz pole wyboru Włącz hibernacji.

    Screenshot of the page for editing a dev box definition, with Enable hibernation selected.

  6. Wybierz pozycję Zapisz.

Włączanie hibernacji za pomocą interfejsu wiersza polecenia platformy Azure

Aby włączyć hibernacji dla definicji pola deweloperskiego z poziomu interfejsu wiersza polecenia platformy Azure, ustaw flagę hibernateSupport na Enabled wartość podczas tworzenia obrazu:

az devcenter admin devbox-definition update 
--dev-box-definition-name <devBoxDefinitionName> -–dev-center-name <devCenterName> --resource-group <resourceGroupName> –-hibernateSupport Enabled

Rozwiązywanie problemów

Jeśli włączysz hibernacji w definicji usługi Dev Box, ale definicja zgłasza, że nie można włączyć hibernacji:

  • Zalecamy używanie obrazów z witryny Marketplace programu Visual Studio for Dev Box bezpośrednio lub jako obrazów podstawowych do generowania obrazu niestandardowego.
  • Obraz optymalizacji systemu Windows i systemu operacyjnego zawiera zoptymalizowane ustawienia zasilania i nie można ich używać z hibernacji.
  • Jeśli używasz niestandardowego obrazu galerii obliczeniowej platformy Azure, włącz hibernacji na obrazie galerii obliczeń platformy Azure przed włączeniem hibernacji w definicji usługi Dev Box.
  • Jeśli nie można włączyć hibernacji w definicji nawet po włączeniu jej na obrazie galerii, obraz niestandardowy prawdopodobnie ma konfigurację systemu Windows, która uniemożliwia hibernacji.

Aby uzyskać więcej informacji, zobacz Ustawienia niezgodne z hibernacji.

Wyłączanie hibernacji w definicji pola deweloperskiego

Jeśli masz problemy z aprowizacją nowych maszyn wirtualnych po włączeniu hibernacji w puli, możesz wyłączyć hibernacji w definicji pola deweloperskiego. Można również wyłączyć hibernacji, gdy chcesz przywrócić ustawienie tylko do zamykania pól deweloperskich.

Hibernacji można wyłączyć w definicji pola deweloperskiego przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia.

Wyłączanie hibernacji w witrynie Azure Portal

  1. Zaloguj się w witrynie Azure Portal.

  2. W polu wyszukiwania wprowadź centrum deweloperów. Na liście wyników wybierz pozycję Centra deweloperów.

  3. Otwórz centrum deweloperów zawierające definicję pola deweloperskiego, którą chcesz zaktualizować, a następnie wybierz pozycję Definicje pól deweloperskich.

  4. Wybierz definicję pola deweloperskiego, którą chcesz zaktualizować, a następnie wybierz przycisk edytuj (ołówek).

  5. Na stronie Edytowanie definicji pola deweloperskiego wyczyść pole wyboru Włącz hibernacji.

  6. Wybierz pozycję Zapisz.

Wyłączanie hibernacji za pomocą interfejsu wiersza polecenia platformy Azure

Aby wyłączyć hibernacji dla definicji pola deweloperskiego z poziomu interfejsu wiersza polecenia platformy Azure, ustaw flagę hibernateSupport na Disabled wartość podczas tworzenia obrazu:

az devcenter admin devbox-definition update 
--dev-box-definition-name <devBoxDefinitionName> -–dev-center-name <devCenterName> --resource-group <resourceGroupName> –-hibernateSupport Disabled