Compartir a través de


Configuración de la hibernación en Microsoft Dev Box

La hibernación en Microsoft Dev Box le ayuda a administrar los entornos de desarrollo en la nube de forma eficaz, a la vez que reduce los costos. Al habilitar la hibernación, puede conservar el estado de las aplicaciones y ventanas abiertas, lo que ahorra costos de máquina virtual (VM) sin interrumpir los flujos de trabajo. En este artículo se explica cómo configurar la hibernación en los niveles de definición e imagen del equipo de desarrollo, automatizar las programaciones de hibernación y abordar las consideraciones de compatibilidad.

Con la introducción de la hibernación de Dev Box, puede habilitar esta funcionalidad en nuevos Dev Boxes, así como hibernarlos y reanudarlos. Esta característica proporciona una manera cómoda de administrar tus cajas de desarrollo a la vez que mantienes el entorno de trabajo.

Hay tres pasos para habilitar la hibernación:

  1. Active la hibernación en la imagen de su caja de desarrollo.
  2. Habilite la hibernación en la definición del cuadro de desarrollo.
  3. Automatice la hibernación de grupos de cuadros de desarrollo mediante programaciones de detención automática o detención en la desconexión de RDP.

Consideraciones para imágenes habilitadas para hibernación

Antes de habilitar la hibernación en el cuadro de desarrollo, revise las consideraciones siguientes para las imágenes habilitadas para hibernación.

  • Actualmente, dos SKU admiten hibernación: 8 y 16 SKU de vCPU. Las SKU de vCPU 32 no admiten hibernación.

  • Solo puede habilitar la hibernación en los nuevos cuadros de desarrollo creados con definiciones de cuadros de desarrollo habilitados para hibernación. No se puede habilitar la hibernación en los cuadros de desarrollo existentes.

  • Solo puede hibernar un equipo de desarrollo mediante el Portal para desarrolladores de Microsoft, la CLI de Azure, PowerShell, los SDK y la API de REST. No se admite la hibernación desde dentro del cuadro de desarrollo en Windows.

  • Si trabaja con una imagen de Azure Marketplace, se recomienda usar Visual Studio para imágenes de cuadro de desarrollo.

  • La imagen Optimizaciones de Windows 11 Enterprise CloudPC + OS contiene la configuración de energía optimizada y no se pueden usar con hibernación.

  • Después de habilitar la hibernación, no puede deshabilitar la característica en ese cuadro de desarrollo. Sin embargo, puede deshabilitar la compatibilidad con hibernación en el cuadro de desarrollo definición por lo que los cuadros de desarrollo creados en el futuro no tienen hibernación.

  • Para habilitar la hibernación, debe habilitar la virtualización anidada en el sistema operativo Windows. Si la característica "Plataforma de máquina virtual" no está habilitada en la imagen de DevBox, DevBox habilita automáticamente la virtualización anidada si decide habilitar la hibernación.

  • La hibernación no admite características de integridad de código protegida por hipervisor (HVCI)/Integridad de memoria. Dev box deshabilita esta característica automáticamente.

  • Las programaciones de apagado automático pondrán en hibernación las Dev Boxes que se crearon después de que habilitaste la hibernación en la definición de Dev Box asociada. Los Dev Boxes que se crearon antes de habilitar la hibernación en la definición de Dev Box seguirán apagándose.

Configuración no compatible con hibernación

Se sabe que la configuración siguiente no es compatible con la hibernación y no se admite en escenarios de hibernación:

  • Integridad de memoria/Integridad de código del hipervisor

    Para deshabilitar la integridad de memoria o la integridad del código del hipervisor:

    1. En el menú Inicio de Windows, busque y abra Seguridad de Windows.
    2. Vaya a Seguridad de dispositivos.
    3. En Aislamiento básico, seleccione Detalles del aislamiento principal
    4. En Integridad de memoria, establezca el botón de alternancia en Desactivado.

    Después de cambiar esta configuración, debe reiniciar la máquina. Después de cambiar esta configuración, reinicie la máquina.

  • Características basadas en modo seguro virtual invitado sin la virtualización anidada habilitada

    Para habilitar la virtualización anidada:

    1. En el menú Inicio, busque Activar o desactivar las características de Windows.
    2. En el cuadro de diálogo, active la casilla Plataforma de máquina virtual.
    3. Seleccione Aceptar para guardar los cambios de configuración.

Habilitación de la hibernación en la imagen del cuadro de desarrollo

Si planea usar una imagen personalizada desde una galería de proceso de Azure, debe habilitar las funcionalidades de hibernación al crear la nueva imagen. No se puede habilitar la hibernación para las imágenes existentes.

Nota:

Las imágenes de Visual Studio y Microsoft 365 que proporciona Microsoft Dev Box en Azure Marketplace ya están configuradas para admitir la hibernación. No es necesario habilitar la hibernación en estas imágenes, ya están listos para usarse.

Para habilitar las funcionalidades de hibernación, establezca la IsHibernateSupported marca en true al crear la imagen:

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 

Si usa sysprep y una máquina virtual generalizada para crear una imagen personalizada, capture la imagen mediante la CLI de Azure:

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

Para más información sobre cómo crear una imagen personalizada, vea Configuración de un equipo de desarrollo mediante Azure VM Image Builder.

Más información sobre cómo crear una imagen personalizada en Configuración de un equipo de desarrollo mediante Azure VM Image Builder.

Habilitación de la hibernación en una definición de equipo de desarrollo

En Microsoft Dev Box, puede habilitar la hibernación para una nueva definición de cuadro de desarrollo cuando la definición usa una imagen personalizada habilitada para hibernación o Azure Marketplace. También puede actualizar una definición de cuadro de desarrollo existente que use una imagen personalizada o de Azure Marketplace habilitada para hibernación.

Todos los nuevos cuadros de desarrollo creados en grupos de cuadros de desarrollo que usan una definición de cuadro de desarrollo con hibernación habilitada pueden hibernar y apagarse. Si un grupo tiene cuadros de desarrollo que se crearon antes de habilitar la hibernación, esos cuadros de desarrollo solo admiten el apagado.

Microsoft Dev Box valida la imagen para admitir hibernación. La definición del cuadro de desarrollo podría producir un error en la validación si la hibernación no se puede habilitar correctamente mediante la imagen.

Puede habilitar la hibernación en una definición de cuadro de desarrollo mediante Azure Portal o la CLI de Azure.

Habilitación de la hibernación en Azure Portal

  1. Inicie sesión en Azure Portal.

  2. En el cuadro de búsqueda, escriba centro de desarrollo. En la lista de resultados, seleccione Centros de desarrollo.

  3. Abra el centro de desarrollo que contiene la definición del cuadro de desarrollo que desea actualizar y, a continuación, seleccione Definiciones del equipo de desarrollo.

    Captura de pantalla que muestra la página de información general del centro de desarrollo y la opción de menú para las definiciones de cuadro de desarrollo.

  4. Seleccione la definición del cuadro de desarrollo que desea actualizar y, a continuación, seleccione el botón editar (lápiz).

    Captura de pantalla de la lista de definiciones de cuadros de desarrollo existentes y el botón editar (lápiz).

  5. En la página Editar definición de desarrollo, active la casilla Habilitar hibernación.

    Captura de pantalla de la página para editar una definición de cuadro de desarrollo, con la opción Habilitar hibernación seleccionada.

  6. Haga clic en Guardar.

Habilitación de la hibernación con la CLI de Azure

Para habilitar la hibernación para la definición del equipo de desarrollo desde la CLI de Azure, establezca la marca hibernateSupport en Enabled al crear la imagen:

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

Habilitación de la hibernación automática para los cuadros de desarrollo a los que nunca se ha accedido

Esta funcionalidad le ayuda a minimizar los costos al hibernar automáticamente los entornos de desarrollo que se inician, pero a los que ningún usuario se conecta. Si se inicia un cuadro de desarrollo y nadie se conecta con RDP, entra en hibernación después del período de gracia establecido. Esta configuración garantiza que los cuadros de desarrollo inactivos no usen recursos innecesariamente, por lo que se optimizan los costos y el uso de recursos.

Para configurar la hibernación de los cuadros de desarrollo a los que nunca se ha accedido, debe habilitar la configuración en el grupo de cuadros de desarrollo.

  1. Inicie sesión en Azure Portal.

  2. En el cuadro de búsqueda, escriba proyectos. En la lista de resultados, seleccione Proyectos.

  3. Abra el proyecto con el grupo de cuadros de desarrollo que desea actualizar y, a continuación, seleccione Grupos de cuadros de desarrollo.

  4. Seleccione el grupo de cuadros de desarrollo que desea actualizar y, a continuación, en el menú operaciones del cuadro desarrollo (...), seleccione Editar.

  5. En la página Editar grupo de cuadros de desarrollo, seleccione Hibernar los cuadros de desarrollo a los que nunca se ha accedido.

    Captura de pantalla de la página de configuración del grupo de Dev Box que muestra la opción para habilitar la hibernación de los cuadros de desarrollo que no se han conectado.

  6. Al seleccionar cuadros de desarrollo hibernar a los que nunca se ha accedido, puede establecer un período de gracia. Esto permite a los usuarios conectarse al entorno de desarrollo antes de que entre en hibernación. Establezca el período de gracia en minutos en el tiempo que desee.

    Captura de pantalla de la página de configuración del grupo Dev Box, en la que se muestran las opciones de configuración para los cuadros de desarrollo en hibernación que no se han conectado, incluida la configuración del período de gracia.

  7. Haga clic en Guardar.

Solución de problemas

Si habilita la hibernación en una definición de Dev Box, pero la definición informa de que no se pudo habilitar la hibernación:

  • Se recomienda usar las imágenes de marketplace de Visual Studio para Dev Box, ya sea directamente o como imágenes base para generar la imagen personalizada.
  • La imagen de optimizaciones de Windows + OS contiene la configuración de energía optimizada y no se pueden usar con hibernación.
  • Si usa una imagen personalizada de Azure Compute Gallery, habilite la hibernación en la imagen de Azure Compute Gallery antes de habilitar la hibernación en la definición de Dev Box.
  • Si la hibernación no se puede habilitar en la definición incluso después de habilitarla en la imagen de la galería, es probable que la imagen personalizada tenga una configuración de Windows que impida la hibernación.
  • Si experimenta problemas al aprovisionar cuadros de desarrollo, asegúrese de que la imagen admite la hibernación.
  • Si la imagen admite la hibernación, pero todavía hay errores durante el aprovisionamiento, consulte Solución de problemas de hibernación en máquinas virtuales Windows.

Para obtener más información, consulte Configuración no compatible con la hibernación.

Deshabilitar la hibernación en una definición de equipo de desarrollo

Si encuentra problemas al aprovisionar nuevas máquinas virtuales después de habilitar la hibernación en un grupo, deshabilite la hibernación en la definición del equipo de desarrollo.

Si tiene problemas para aprovisionar nuevas máquinas virtuales después de habilitar la hibernación en un grupo, puede deshabilitar la hibernación en la definición del equipo de desarrollo. También puede deshabilitar la hibernación cuando quiera revertir la configuración a solo los cuadros de desarrollo de apagado.

Puede deshabilitar la hibernación en una definición de cuadro de desarrollo mediante Azure Portal o la CLI.

Deshabilitación de la hibernación en Azure Portal

  1. Inicie sesión en Azure Portal.

  2. En el cuadro de búsqueda, escriba centro de desarrollo. En la lista de resultados, seleccione Centros de desarrollo.

  3. Abra el centro de desarrollo que contiene la definición del cuadro de desarrollo que desea actualizar y, a continuación, seleccione Definiciones del equipo de desarrollo.

  4. Seleccione la definición del cuadro de desarrollo que desea actualizar y, a continuación, seleccione el botón editar (lápiz).

  5. En la página Editar definición de desarrollo, desactive la casilla Habilitar hibernación.

  6. Haga clic en Guardar.

Deshabilitación de la hibernación con la CLI de Azure

Para deshabilitar la hibernación de la definición del equipo de desarrollo desde la CLI de Azure, establezca la marca hibernateSupport en Disabled al crear la imagen:

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