Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
L'ibernazione in Microsoft Dev Box consente di gestire in modo efficiente gli ambienti di sviluppo cloud riducendo al contempo i costi. Abilitando l'ibernazione, è possibile mantenere lo stato delle applicazioni e delle finestre aperte, risparmiando i costi delle macchine virtuali senza interrompere i flussi di lavoro. Questo articolo illustra come configurare l'ibernazione a livello di immagine e definizione della finestra di sviluppo, automatizzare le pianificazioni di ibernazione e risolvere le considerazioni sulla compatibilità.
Con l'introduzione di Dev Box Hibernation, è possibile abilitare questa funzionalità nei nuovi box di sviluppo e ibernarli e riprenderli. Questa funzionalità offre un modo pratico per gestire le finestre di sviluppo mantenendo l'ambiente di lavoro.
Seguire questi tre passaggi per abilitare l'ibernazione:
- Abilitare l'ibernazione nell'immagine della casella di sviluppo.
- Abilitare l'ibernazione nella definizione della casella di sviluppo.
- Automatizzare l'ibernazione per i pool di macchine di sviluppo usando pianificazioni di arresto automatico o arresto in caso di disconnessione RDP.
Considerazioni sulle immagini abilitate per l'ibernazione
Prima di abilitare l'ibernazione nella casella di sviluppo, esaminare le considerazioni seguenti per le immagini abilitate per l'ibernazione.
Attualmente due SKU supportano l'ibernazione: 8 e 16 SKU vCPU. 32 SKU vCPU non supportano l'ibernazione.
È possibile abilitare l'ibernazione solo nelle nuove caselle di sviluppo create con definizioni di box di sviluppo abilitate per l'ibernazione. Non è possibile abilitare l'ibernazione nelle caselle di sviluppo esistenti.
È possibile ibernare una finestra di sviluppo usando il portale per sviluppatori Microsoft, l'interfaccia della riga di comando di Azure, PowerShell, gli SDK o l'API REST. L'ibernazione dall'interno della casella di sviluppo in Windows non è supportata.
Se si utilizza un'immagine di Azure Marketplace, è consigliabile usare le immagini della macchina di sviluppo di Visual Studio.
L'immagine Windows 11 Enterprise CloudPC + Ottimizzazione del sistema operativo contiene impostazioni di risparmio energia ottimizzate e non possono essere usate con l'ibernazione.
Dopo aver abilitato l'ibernazione, non è possibile disabilitare la funzionalità in tale casella di sviluppo. Tuttavia, è possibile disabilitare il supporto di ibernazione nella definizione della casella di sviluppo in modo che le caselle di sviluppo create in futuro non abbiano ibernazione.
Per abilitare l'ibernazione, è necessario abilitare la virtualizzazione annidata nel sistema operativo Windows. Se la funzionalità "Virtual Machine Platform" non è abilitata nell'immagine DevBox, DevBox abilita automaticamente la virtualizzazione annidata se si sceglie di abilitare l'ibernazione.
L'ibernazione non supporta le funzionalità di integrità del codice protetto dall'hypervisor (HVCI)/Integrità della memoria. La casella di sviluppo disabilita automaticamente questa funzionalità.
Le pianificazioni di arresto automatico ibernano le finestre di sviluppo create dopo aver abilitato l'ibernazione nella definizione di Dev Box associata. Le macchine di sviluppo create prima di aver abilitato l'ibernazione sulla definizione di macchina di sviluppo continueranno a essere arrestate.
Impostazioni non compatibili con l'ibernazione
Le impostazioni seguenti sono note come incompatibili con l'ibernazione e non sono supportate per gli scenari di ibernazione:
Integrità della memoria/Integrità del codice hypervisor
Per disabilitare l'integrità della memoria/l'integrità del codice hypervisor:
- Nel menu Start di Windows trovare e aprire Sicurezza di Windows.
- Passare a Sicurezza del dispositivo.
- In Isolamento core, selezionare Dettagli isolamento core
- In Integrità della memoria impostare il selettore su Disattivato.
Dopo aver modificato questa impostazione, è necessario riavviare il computer. Dopo aver modificato questa impostazione, riavviare il computer.
Funzionalità basate sulla modalità sicura virtuale guest senza virtualizzazione annidata abilitata
Per abilitare la virtualizzazione annidata:
- Nel menu Start cercare Attiva o disattiva le funzionalità di Windows.
- Nella finestra di dialogo selezionare la casella di controllo Piattaforma macchina virtuale .
- Selezionare OK per salvare le modifiche alle impostazioni.
Abilitare l'ibernazione nell'immagine della casella di sviluppo
Se si prevede di usare un'immagine personalizzata da una raccolta di calcolo di Azure, è necessario abilitare le funzionalità di ibernazione quando si crea la nuova immagine. Non è possibile abilitare l'ibernazione per le immagini esistenti.
Annotazioni
Le immagini di Visual Studio e Microsoft 365 fornite da Microsoft Dev Box in Azure Marketplace sono già configurate per supportare l'ibernazione. Non è necessario abilitare l'ibernazione su queste immagini, ma sono pronte per l'uso.
Per abilitare le funzionalità di ibernazione, impostare il IsHibernateSupported flag su true quando si crea l'immagine:
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
Se si usa sysprep e una macchina virtuale generalizzata per creare un'immagine personalizzata, acquisire l'immagine usando l'interfaccia della riga di comando di Azure:
az sig image-version create
--resource-group <resourceGroupName> --gallery-name <galleryName> --gallery-image-definition <imageName>
--gallery-image-version <versionNumber> --virtual-machine <VMResourceId>
Per altre informazioni sulla creazione di un'immagine personalizzata, vedere Configurare una casella di sviluppo usando Image Builder di macchine virtuali di Azure.
Per altre informazioni sulla creazione di un'immagine personalizzata, vedere Configurare una casella di sviluppo usando Image Builder di macchine virtuali di Azure.
Abilitare l'ibernazione in una definizione di dev box
In Microsoft Dev Box è possibile abilitare l'ibernazione per una nuova definizione della casella di sviluppo quando la definizione usa un'immagine personalizzata abilitata per l'ibernazione o Azure Marketplace. È anche possibile aggiornare una definizione di finestra di sviluppo esistente che usa un'immagine personalizzata o di Azure Marketplace abilitata per l'ibernazione.
Tutte le nuove macchine di sviluppo create nei pool di macchine di sviluppo che usano una definizione di macchina di sviluppo con ibernazione abilitata possono sia ibernare che arrestare. Se un pool dispone di macchine di sviluppo create prima dell'abilitazione dell'ibernazione, tali macchine di sviluppo continuano a supportare solo l'arresto.
Microsoft Dev Box convalida l'immagine per il supporto all'ibernazione. La definizione della macchina di sviluppo potrebbe non riuscire a convalidare se l'ibernazione non può essere abilitata correttamente usando l'immagine.
È possibile abilitare l'ibernazione in una definizione di dev box usando il portale di Azure o l'interfaccia della riga di comando di Azure.
Abilitare l'ibernazione nel portale di Azure
Accedi al portale di Azure.
Nella casella di ricerca, immettere Dev Center. Nell'elenco dei risultati, selezionare Centri di sviluppo.
Aprire il Dev Center che contiene la definizione della macchina di sviluppo che si vuole aggiornare, quindi selezionare Definizioni macchina di sviluppo.
Selezionare la definizione della casella di sviluppo da aggiornare e quindi selezionare il pulsante modifica (matita).
Nella pagina Modifica definizione della casella di sviluppo selezionare la casella di controllo Abilita ibernazione .
Seleziona Salva.
Abilitare l'ibernazione con l'interfaccia della riga di comando di Azure
Per abilitare l'ibernazione per la definizione della macchina di sviluppo dall'interfaccia della riga di comando di Azure, impostare il flag hibernateSupport su Enabled quando si crea l'immagine:
az devcenter admin devbox-definition update
--dev-box-definition-name <devBoxDefinitionName> -–dev-center-name <devCenterName> --resource-group <resourceGroupName> –-hibernateSupport Enabled
Abilitare l'ibernazione automatica per le caselle di sviluppo a cui non è mai stato eseguito l'accesso
Questa funzionalità consente di ridurre al minimo i costi eseguendo automaticamente l'ibernazione delle caselle di sviluppo che iniziano ma a cui nessun utente si connette. Se una casella di sviluppo viene avviata e nessuno si connette con RDP, entra in ibernazione dopo il periodo di tolleranza impostato. Questa impostazione garantisce che le caselle di sviluppo inattive non usino inutilmente le risorse, in modo da ottimizzare i costi e l'utilizzo delle risorse.
Per configurare l'ibernazione per i dev box a cui non è mai stato eseguito l'accesso, è necessario abilitare l'impostazione nel pool di dev box.
Accedi al portale di Azure.
Nella casella di ricerca immettere progetti. Nell'elenco dei risultati selezionare Progetti.
Aprire il progetto con il pool di caselle di sviluppo da aggiornare e quindi selezionare Pool di caselle di sviluppo.
Selezionare il pool di caselle di sviluppo da aggiornare, quindi scegliere Modifica dal menu Operazioni della casella di sviluppo (...).
Nella pagina Modifica pool di macchine di sviluppo, selezionare Iberna le macchine di sviluppo a cui non è mai stato eseguito l'accesso.
Quando si seleziona Iberna le macchine di sviluppo a cui non è mai stato eseguito l'accesso, è possibile impostare un periodo di tolleranza. In questo modo gli utenti si connettono alla casella di sviluppo prima che si iberni. Impostare il periodo di tolleranza in minuti sul tempo desiderato.
Seleziona Salva.
Risoluzione dei problemi
Se si abilita l'ibernazione in una definizione di Dev Box e la definizione segnala che l'ibernazione non è abilitata:
- È consigliabile usare le immagini del marketplace di Visual Studio per Dev Box, direttamente o come immagini di base per generare l'immagine personalizzata.
- L'immagine di Ottimizzazioni Windows + sistema operativo contiene impostazioni dell'energia ottimizzate e non è compatibile con l'ibernazione.
- Se si usa un'immagine personalizzata della Galleria di calcolo di Azure, abilitare l'ibernazione nell'immagine della Galleria di calcolo di Azure prima di abilitare l'ibernazione nella definizione Dev Box.
- Se l'ibernazione non può essere abilitata nella definizione anche dopo averla abilitata nell'immagine della raccolta, è probabile che l'immagine personalizzata abbia una configurazione di Windows che impedisce l'ibernazione.
- Se si verificano problemi durante il provisioning delle macchine di sviluppo, assicurarsi che l'immagine supporti l'ibernazione.
- Se l'immagine supporta l'ibernazione ma si verificano ancora errori durante il provisioning, vedere Risoluzione dei problemi di ibernazione nelle macchine virtuali Windows.
Per altre informazioni, vedere Impostazioni non compatibili con l'ibernazione.
Disabilitare l'ibernazione in una definizione di dev box
Se si verificano problemi durante il provisioning di nuove macchine virtuali dopo aver abilitato l'ibernazione in un pool, disabilitare l'ibernazione nella definizione dell'ambiente di sviluppo.
Se si verificano problemi durante il provisioning di nuove macchine virtuali dopo aver abilitato l'ibernazione in un pool, è possibile disabilitare l'ibernazione nella definizione della casella di sviluppo. È anche possibile disabilitare l'ibernazione quando si vuole ripristinare l'impostazione in modo da arrestare solo le macchine di sviluppo.
È possibile disabilitare l'ibernazione in una definizione di dev box usando il portale di Azure o l'interfaccia della riga di comando.
Disabilitare l'ibernazione nel portale di Azure
Accedi al portale di Azure.
Nella casella di ricerca, immettere Dev Center. Nell'elenco dei risultati, selezionare Centri di sviluppo.
Aprire il Dev Center che contiene la definizione della macchina di sviluppo che si vuole aggiornare, quindi selezionare Definizioni macchina di sviluppo.
Selezionare la definizione della casella di sviluppo da aggiornare e quindi selezionare il pulsante modifica (matita).
Nella pagina Modifica definizione della casella di sviluppo è necessario deselezionare la casella di controllo Abilita ibernazione.
Seleziona Salva.
Disabilitare l'ibernazione con l'interfaccia della riga di comando di Azure
Per disabilitare l'ibernazione per la definizione della dev box dall'Azure CLI, impostare il flag hibernateSupport su Disabled quando si crea l'immagine:
az devcenter admin devbox-definition update
--dev-box-definition-name <devBoxDefinitionName> -–dev-center-name <devCenterName> --resource-group <resourceGroupName> –-hibernateSupport Disabled


