Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A hibernação no Microsoft Dev Box ajuda você a gerenciar ambientes de desenvolvimento em nuvem com eficiência, reduzindo os custos. Ao habilitar a hibernação, você pode preservar o estado de aplicativos abertos e janelas, salvando custos de VM (máquina virtual) sem interromper fluxos de trabalho. Este artigo explica como configurar a hibernação nos níveis de imagem e definição da caixa de desenvolvimento, automatizar agendas de hibernação e abordar considerações de compatibilidade.
Com a introdução do Dev Box Hibernation, você pode habilitar essa funcionalidade em novas caixas de desenvolvimento e hibernar e retomá-las. Esse recurso fornece uma maneira conveniente de gerenciar suas caixas de desenvolvimento, mantendo seu ambiente de trabalho.
Siga estas três etapas para habilitar a hibernação:
- Habilitar hibernação na imagem do seu computador de desenvolvimento.
- Habilite a hibernação na definição da caixa de desenvolvimento.
- Automatizar a hibernação para pools de computadores de desenvolvimento usando agendas de parada automática ou parando na desconexão RDP.
Considerações sobre imagens habilitadas para hibernação
Antes de habilitar a hibernação na caixa de desenvolvimento, examine as seguintes considerações sobre imagens habilitadas para hibernação.
Atualmente, dois SKUs dão suporte à hibernação: 8 e 16 SKUs de vCPU. 32 SKUs de vCPU não dão suporte à hibernação.
Você pode habilitar a hibernação apenas em novas caixas de desenvolvimento criadas com definições de caixa de desenvolvimento habilitadas para hibernação. Você não pode habilitar a hibernação em caixas de desenvolvimento existentes.
Você pode hibernar uma caixa de desenvolvimento usando o portal do desenvolvedor da Microsoft, a CLI do Azure, o PowerShell, os SDKs ou a API REST. Não há suporte para hibernação de dentro da caixa de desenvolvimento no Windows.
Se você estiver trabalhando com uma imagem do Azure Marketplace, recomendamos usar o Visual Studio para imagens do computador de desenvolvimento.
A imagem do Windows 11 Enterprise CloudPC + Otimizações do sistema operacional contém configurações de energia otimizadas e elas não podem ser usadas com hibernação.
Depois de habilitar a hibernação, você não poderá desabilitar o recurso nessa caixa de desenvolvimento. No entanto, você pode desabilitar o suporte à hibernação na definição da caixa de desenvolvimento para que as caixas de desenvolvimento criadas no futuro não tenham hibernação.
Para habilitar a hibernação, você precisa habilitar a virtualização aninhada no sistema operacional Windows. Se o recurso "Plataforma de Máquina Virtual" não estiver habilitado em sua imagem de DevBox, o DevBox ativará automaticamente a virtualização aninhada caso você opte por habilitar a hibernação.
A hibernação não dá suporte a recursos de integridade de código protegido por hipervisor (HVCI)/ integridade de memória. O Dev box desabilita esse recurso automaticamente.
Os agendamentos de parada automática hibernarão os Computadores de Desenvolvimento que foram criados depois que você ativou a hibernação na definição do Computador de Desenvolvimento associado. As Caixas de Desenvolvimento que foram criadas antes de você habilitar a hibernação na definição de Caixa de Desenvolvimento continuarão a ser desligadas.
Configurações não compatíveis com hibernação
As seguintes configurações são conhecidas por serem incompatíveis com a hibernação e não têm suporte para cenários de hibernação:
Integridade da memória/integridade do código do hipervisor
Para desabilitar a integridade da memória/integridade do código do hipervisor:
- No menu Iniciar do Windows, localize e abra o Windows Security.
- Vá para a Segurança do Dispositivo.
- Em Isolamento Principal, selecione Detalhes do Isolamento Principal
- Em Integridade de memória, defina a alternância como Desativada.
Depois de alterar essa configuração, você precisará reiniciar o computador. Depois de alterar essa configuração, reinicie o computador.
Recursos baseados no Modo de Segurança Virtual Convidado sem Virtualização Aninhada habilitada
Para habilitar a Virtualização Aninhada:
- No menu Iniciar, pesquise por ativar ou desativar os recursos do Windows.
- Na caixa de diálogo, marque a caixa de seleção Plataforma de Máquina Virtual .
- Selecione OK para salvar as alterações de configuração.
Habilitar a hibernação na imagem do seu computador de desenvolvimento
Se você planeja usar uma imagem personalizada de uma galeria de computação do Azure, precisará habilitar os recursos de hibernação ao criar a nova imagem. Você não pode habilitar a hibernação para imagens existentes.
Observação
As imagens do Visual Studio e do Microsoft 365 que o Microsoft Dev Box fornece no Azure Marketplace já estão configuradas para dar suporte à hibernação. Você não precisa habilitar a hibernação nessas imagens, elas estão prontas para uso.
Para habilitar os recursos de hibernação, defina a IsHibernateSupported
flag para true
ao criar a imagem.
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 você estiver usando o sysprep e uma VM generalizada para criar uma imagem personalizada, capture sua imagem usando a CLI do Azure:
az sig image-version create
--resource-group <resourceGroupName> --gallery-name <galleryName> --gallery-image-definition <imageName>
--gallery-image-version <versionNumber> --virtual-machine <VMResourceId>
Para obter mais informações sobre como criar uma imagem personalizada, consulte Configurar uma caixa de desenvolvimento usando o Construtor de Imagens de VM do Azure.
Saiba mais sobre como criar uma imagem personalizada em Configurar uma caixa de desenvolvimento usando o Construtor de Imagens de VM do Azure.
Habilitar a hibernação em uma definição de caixa de desenvolvimento
No Computador de Desenvolvimento da Microsoft, você pode habilitar a hibernação para uma nova definição do computador de desenvolvimento quando a definição usa uma imagem personalizada habilitada para hibernação ou do Azure Marketplace. Você também pode atualizar uma definição do computador de desenvolvimento existente que usa uma imagem personalizada habilitada para hibernação ou do Azure Marketplace.
Todos os novos computadores de desenvolvimento em pools de computador de desenvolvimento que usam uma definição de computador de desenvolvimento com hibernação habilitada podem hibernar e desligar. Se um pool tiver caixas de desenvolvimento que foram criadas antes da hibernação ser habilitada, essas caixas de desenvolvimento continuarão a dar suporte apenas ao desligamento.
O Microsoft Dev Box valida sua imagem para dar suporte à hibernação. Sua definição de caixa de desenvolvimento poderá falhar na validação se a hibernação não puder ser habilitada com êxito usando sua imagem.
Você pode habilitar a hibernação em uma definição de caixa de desenvolvimento usando o portal do Azure ou a CLI do Azure.
Habilitar hibernação no portal do Azure
Entre no portal do Azure.
Na caixa de pesquisa, digite centro de desenvolvimento. Na lista de resultados, selecione Centros de desenvolvimento.
Abra o centro de desenvolvimento que contém a definição do computador de desenvolvimento que você deseja atualizar e selecione Definições do computador de desenvolvimento.
Selecione a definição da caixa de desenvolvimento que você deseja atualizar e, em seguida, selecione o botão editar (lápis).
Na página Editar definição da caixa de desenvolvimento, marque a caixa de seleção Habilitar hibernação.
Clique em Salvar.
Habilitar a hibernação com a CLI do Azure
Para habilitar a hibernação para a definição do computador de desenvolvimento da CLI do Azure, defina o sinalizador hibernateSupport
para Enabled
ao criar a imagem:
az devcenter admin devbox-definition update
--dev-box-definition-name <devBoxDefinitionName> -–dev-center-name <devCenterName> --resource-group <resourceGroupName> –-hibernateSupport Enabled
Habilitar a hibernação automática para caixas de desenvolvimento que nunca foram acessadas
Esse recurso ajuda você a minimizar os custos hibernando automaticamente caixas de desenvolvimento que iniciam, mas nenhum usuário se conecta. Se um computador de desenvolvimento for iniciado e ninguém se conectar com RDP, ele entrará em hibernação após o período de carência definido. Essa configuração garante que as caixas de desenvolvimento ociosas não usem recursos desnecessariamente, portanto, você otimiza os custos e o uso de recursos.
Para configurar a hibernação para caixas de desenvolvimento que nunca foram acessadas, você precisa habilitar a configuração no pool de caixas de desenvolvimento.
Entre no portal do Azure.
Na caixa de pesquisa, insira projetos. Na lista de resultados, selecione Projetos.
Abra o projeto com o pool de computadores de desenvolvimento que você deseja atualizar e selecione Pools de computadores de desenvolvimento.
Selecione o pool de caixas de desenvolvimento que você deseja atualizar e, no menu Dev box operations (...), selecione Editar.
Na página Editar pool de computadores de desenvolvimento, selecione Hibernar computadores de desenvolvimento que nunca foram acessados.
Quando você seleciona caixas de desenvolvimento hibernadas que nunca foram acessadas, você pode definir um período de carência. Isso permite que os usuários se conectem à caixa de desenvolvimento antes de hibernar. Defina o período de Carência em minutos para o tempo desejado.
Clique em Salvar.
Resolução de problemas
Se você habilitar a hibernação em uma definição de Computador de Desenvolvimento e a definição relatar que a hibernação não está habilitada:
- É recomendável usar as imagens do Marketplace do Visual Studio para Dev Box diretamente ou como imagens base para gerar sua imagem personalizada.
- A imagem de otimizações do Windows + SO contém configurações de energia otimizadas e não é compatível com hibernação.
- Se você estiver usando uma imagem personalizada da Galeria de Computação do Azure, habilite a hibernação na imagem da Galeria de Computação do Azure antes de habilitar a hibernação na definição do Dev Box.
- Se a hibernação não puder ser habilitada na definição mesmo depois de habilitá-la na imagem da galeria, sua imagem personalizada provavelmente terá uma configuração do Windows que impede a hibernação.
- Se você tiver problemas ao provisionar caixas de desenvolvimento, certifique-se de que a imagem suporta hibernação.
- Se a imagem der suporte à hibernação, mas ainda houver falhas durante o provisionamento, consulte solução de problemas de hibernação em VMs do Windows.
Para obter mais informações, consulte Configurações não compatíveis com hibernação.
Desabilitar a hibernação em uma configuração de máquina de desenvolvimento
Se você encontrar problemas para provisionar novas VMs depois de habilitar a hibernação em um pool, desabilite a hibernação na definição da caixa de desenvolvimento.
Se você tiver problemas para provisionar novas VMs depois de habilitar a hibernação em um pool, poderá desabilitar a hibernação na definição da caixa de desenvolvimento. Você também pode desabilitar a hibernação quando quiser reverter a configuração para que ela apenas desligue as máquinas de desenvolvimento.
Você pode desabilitar a hibernação em uma definição de caixa de desenvolvimento usando o portal do Azure ou a CLI.
Desabilitar hibernação no portal do Azure
Entre no portal do Azure.
Na caixa de pesquisa, digite centro de desenvolvimento. Na lista de resultados, selecione Centros de desenvolvimento.
Abra o centro de desenvolvimento que contém a definição do computador de desenvolvimento que você deseja atualizar e selecione Definições do computador de desenvolvimento.
Selecione a definição da caixa de desenvolvimento que você deseja atualizar e, em seguida, selecione o botão editar (lápis).
Na página Editar definição da caixa de desenvolvimento, desmarque a caixa de seleção Habilitar hibernação.
Clique em Salvar.
Desabilitar a hibernação com a CLI do Azure
Para desabilitar a hibernação para a definição do ambiente de desenvolvimento no CLI do Azure, configure o sinalizador hibernateSupport
para Disabled
ao criar a imagem.
az devcenter admin devbox-definition update
--dev-box-definition-name <devBoxDefinitionName> -–dev-center-name <devCenterName> --resource-group <resourceGroupName> –-hibernateSupport Disabled