Hiberne su instancia Linux - Amazon Elastic Compute Cloud

Hiberne su instancia Linux

Cuando hiberna una instancia, señalamos el sistema operativo que realice la hibernación (suspensión a disco). La hibernación guarda el contenido de la memoria de la instancia (RAM) en su volumen raíz de Amazon EBS. Conservamos el volumen raíz de Amazon EBS de la instancia y cualquier volumen de datos de Amazon EBS asociado. Cuando inicie la instancia:

  • El volumen raíz de Amazon EBS se restaurará a su estado anterior

  • El contenido de la RAM se volverá a cargar

  • Se reanudarán los procesos que se estaban ejecutando anteriormente en la instancia

  • Los volúmenes de datos que estaban adjuntos previamente se vuelven a adjuntar y la instancia conserva su ID de instancia

Puede hibernar una instancia solo si está habilitada para la hibernación y cumple los requisitos previos de hibernación.

Si una instancia o aplicación tarda mucho tiempo en arrancar y crear una huella de memoria para ser totalmente productiva, puede utilizar la hibernación para "precalentar" la instancia. Para "precalentar" la instancia:

  1. Láncela con la hibernación habilitada.

  2. Póngala en un estado deseado.

  3. Hibérnela para prepararla para la reanudación al mismo estado según sea necesario.

No cobramos por el uso de una instancia hibernada cuando está en el estado stopped. Cobramos por el uso de una instancia cuando esta está en el estado stopping, cuando el contenido de la RAM se transfiere al volumen raíz de Amazon EBS. (Esto es diferente de detener una instancia sin hibernarla). No cobramos cargos de uso por transferencia de datos. Sin embargo, cobramos por el almacenamiento de cualquier volumen de Amazon EBS, incluido el almacenamiento para el contenido de la RAM.

Si ya no necesita una instancia, puede terminarla en cualquier momento, incluso si está en el estado stopped (hibernado). Para obtener más información, consulte Terminar una instancia.

nota

Para obtener información acerca del uso de la hibernación en instancias Windows, consulte Hibernar su instancia Windows en la Guía del usuario de Amazon EC2 para instancias de Windows.

Información general acerca de la hibernación

En el siguiente diagrama se muestra información general básica acerca del proceso de hibernación.


				Información general acerca del flujo de hibernación

Cuando se hiberne una instancia en ejecución, ocurrirá lo siguiente:

  • Cuando inicie la hibernación, la instancia pasará al estado stopping. Señalamos al sistema operativo que realice la hibernación (suspensión a disco). La hibernación bloquea todos los procesos, guarda el contenido de la RAM en el volumen raíz de Amazon EBS y, a continuación, realiza un apagado normal.

  • Una vez que se ha completado el apagado, la instancia pasa al estado stopped.

  • Los volúmenes de Amazon EBS siguen asociados a la instancia y sus datos continúan, incluido el contenido guardado de la RAM.

  • En la mayoría de los casos, la instancia se migra a un nuevo equipo host subyacente al iniciarse. Es lo mismo que ocurre cuando detiene e inicia una instancia.

  • Cuando inicie la instancia, la instancia arrancará y el sistema operativo leerá el contenido de la RAM del volumen raíz de Amazon EBS antes de desbloquear los procesos para reanudar su estado.

  • Al hibernar e iniciar la instancia, esta conserva sus direcciones IPv4 privadas y las direcciones IPv6. Se publica su dirección IPv4 pública y se asigna una nueva al iniciarla.

  • La instancia conserva sus direcciones IP elásticas asociadas. Se le cobrará por aquellas direcciones IP elásticas asociadas a una instancia hibernada. Con EC2-Classic, una dirección IP elástica se desasocia de la instancia cuando la pone en hibernación. Para obtener más información, consulte EC2-Classic.

  • Al hibernar una instancia ClassicLink, se desvincula de la VPC a la que estaba vinculada. Tras iniciar la instancia, debe vincularla de nuevo a la VPC. Para obtener más información, consulte ClassicLink.

Para obtener información acerca de las diferencias entre la hibernación y el reinicio, la detención y la terminación, consulte Diferencias entre reinicio, detención, hibernación y terminación.

Requisitos previos de la hibernación

Para hibernar una instancia, deben existir los requisitos previos siguientes:

  • Familias de instancias admitidas: C3, C4, C5, M3, M4, M5, R3, R4, R5 y T2.

  • Tamaño de RAM de la instancia: debe ser inferior a 150 GB.

  • Tamaño de instancias: no admitido para instancias "bare metal" dedicadas.

  • AMI soportada (debe ser una AMI de HVM compatible con la hibernación):

    • AMI de Amazon Linux 2 lanzada el 29/08/2019 o posteriormente.

    • AMI de Amazon Linux 2018.03 lanzada el 16/11/2018 o posteriormente.

    • AMI de Ubuntu 18.04 LTS - Bionic lanzada con el número de serie 20190722.1 o posterior*.

    • AMI de Ubuntu 16.04 LTS - Xenial.* (se requiere Configuración adicional).

      * Recomendamos deshabilitar KASLR en instancias con Ubuntu 18.04 LTS - Bionic y Ubuntu 16.04 LTS - Xenial. Para obtener más información, consulte Deshabilitación de KASLR en una instancia (solo Ubuntu).

    Para configurar su propia AMI para admitir la hibernación, consulte Configurar una AMI existente para admitir la hibernación.

    Se ofrecerá soporte para otras versiones de Ubuntu y otros sistemas operativos próximamente.

    Para obtener información acerca de las AMI soportadas con Windows, consulte Requisitos previos de la hibernación en la Guía del usuario de Amazon EC2 para instancias de Windows.

  • Tipo de volumen raíz: debe ser un volumen de Amazon EBS, no un volumen de almacén de instancias.

  • Tipos de volumen de Amazon EBS admitidos: SSD de uso general (gp2) o SSD de IOPS aprovisionadas (io1). Si elige un tipo de volumen SSD de IOPS aprovisionadas (io1), para lograr un rendimiento óptimo para la hibernación, debe aprovisionar el volumen de EBS con las IOPS adecuadas. Para obtener más información, consulte Tipos de volúmenes de Amazon EBS.

  • Tamaño de volumen raíz de Amazon EBS: debe ser lo suficientemente grande como para almacenar el contenido de la RAM y adaptarse al uso esperado, por ejemplo, del SO o de las aplicaciones. Si habilita la hibernación, se asigna espacio en el volumen raíz en el momento del lanzamiento para almacenar la RAM.

  • Cifrado de volumen raíz de Amazon EBS: para utilizar la hibernación, debe cifrarse el volumen raíz para garantizar la protección de contenido sensible que se encuentre en la memoria en el momento de la hibernación. Cuando los datos de la RAM pasen al volumen raíz de Amazon EBS, siempre se cifran. El cifrado del volumen raíz es obligatorio en el momento del lanzamiento de la instancia. Utilice una de las tres opciones siguientes para asegurarse de que el volumen raíz sea un volumen cifrado con Amazon EBS:

    • Cifrado de un “solo paso” de EBS: puede lanzar instancias EC2 respaldadas por EBS cifradas a partir de una AMI sin cifrado y también activar la hibernación al mismo tiempo. Para obtener más información, consulte Uso del cifrado con AMI con respaldo de EBS.

    • Cifrado de EBS de forma predeterminada: puede habilitar el cifrado de EBS de forma predeterminada para asegurarse de que se cifran todos los volúmenes de EBS nuevos creados en su cuenta de AWS. De esta forma, puede habilitar la hibernación en sus instancias sin especificar el intento de cifrado al lanzar la instancia. Para obtener más información, consulte Cifrado de forma predeterminada.

    • AMI cifrada: puede habilitar el cifrado de EBS utilizando una AMI cifrada para lanzar su instancia. Si su AMI no tiene una instantánea raíz cifrada, puede copiarla a una nueva AMI y solicitar su cifrado. Para obtener más información, consulte Cifrar una imagen sin cifrar durante la copia y Copiar una AMI.

  • Habilitar la hibernación en el momento del lanzamiento: no se puede habilitar la hibernación en una instancia existente (en ejecución o detenida). Para obtener más información, consulte Habilitar la hibernación de una instancia.

  • Opciones de compra: esta característica solo está disponible para Instancias bajo demanda y Instancias reservadas. No está disponible para Instancias de spot. Para obtener más información, consulte Hibernación de las Instancias de spot interrumpidas.

Limitaciones

  • Las siguientes acciones no son compatibles con la hibernación:

    • Cambiar el tipo de instancia o tamaño de una instancia hibernada

    • Crear instantáneas o AMI desde instancias para las que la hibernación está habilitada

    • Crear instantáneas o AMI desde instancias hibernadas

  • No puede detener o hibernar instancias con respaldo en el almacenamiento de las instancias.*

  • No puede poner en hibernación una instancia que tenga más de 150 GB de RAM.

  • No puede hibernar una instancia que esté en un grupo de Auto Scaling o esté siendo utilizada por Amazon ECS. Si la instancia está en un grupo de Auto Scaling e intenta hibernarla, el servicio Amazon EC2 Auto Scaling marca la instancia detenida como instancia en mal estado, y puede terminarla y lanzar una instancia de sustitución. Para obtener más información, consulte Comprobaciones de estado de las instancias de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

  • No se admite la hibernación de una instancia durante más de 60 días. Para mantener la instancia durante más de 60 días, debe iniciar la instancia hibernada, detener la instancia e iniciarla.

  • Actualizamos constantemente nuestra plataforma con mejoras y parches de seguridad, que pueden entrar en conflicto con las instancias hibernadas existentes. Le informaremos acerca de las actualizaciones críticas que requieran un inicio de las instancias hibernadas, de manera que podamos realizar un apagado o un reinicio para aplicar las actualizaciones y los parches de seguridad necesarios.

*Para las instancias C3 y R3 habilitadas para la hibernación, no utilice volúmenes de almacenamiento de instancias.

Configurar una AMI existente para admitir la hibernación

Para hibernar una instancia lanzada mediante su propia AMI, primero debe configurar su AMI para admitir la hibernación. Para obtener más información, consulte Actualización del software de instancia en su instancia de Amazon Linux.

Si utiliza una de las AMI soportadas (excepto Ubuntu 16.04 LTS) o si crea una AMI basada en una de las AMI soportadas, no tendrá que configurarla para que admita la hibernación. Estas AMI están preconfiguradas para admitir la hibernación. Para configurar Ubuntu 16.04 LTS para que admita la hibernación, debe instalar el paquete del kernel linux-aws-hwe versión 4.15.0-1058-aws o posterior y ec2-hibinit-agent. Para ver los pasos de configuración, elija la pestaña Ubuntu 16.04 - Xenial a continuación.

Amazon Linux 2

Para configurar una AMI de Amazon Linux 2 para que admita la hibernación

  1. Actualice a la última versión de kernel 4.14.138-114.102 o posterior mediante el siguiente comando:

    [ec2-user ~]$ sudo yum update kernel
  2. Instale el paquete de ec2-hibinit-agent de los repositorios mediante el siguiente comando.

    [ec2-user ~]$ sudo yum install ec2-hibinit-agent
  3. Ejecute el siguiente comando para volver a arrancar la instancia.

    [ec2-user ~]$ sudo reboot
  4. Confirme que la versión de kernel se ha actualizado a la versión 4.14.138-114.102 o posterior mediante el siguiente comando.

    [ec2-user ~]$ uname -a
  5. Detenga la instancia y cree una AMI. Para obtener más información, consulte Creación de una AMI de Linux desde una instancia.

Amazon Linux

Para configurar una AMI de Amazon Linux para que admita la hibernación

  1. Actualice a la última versión de kernel 4.14.77-70.59 o posterior mediante el siguiente comando.

    [ec2-user ~]$ sudo yum update kernel
  2. Instale el paquete de ec2-hibinit-agent de los repositorios mediante el siguiente comando.

    [ec2-user ~]$ sudo yum install ec2-hibinit-agent
  3. Ejecute el siguiente comando para volver a arrancar la instancia.

    [ec2-user ~]$ sudo reboot
  4. Confirme que la versión de kernel se ha actualizado a la versión 4.14.77-70.59 o superior mediante el siguiente comando.

    [ec2-user ~]$ uname -a
  5. Detenga la instancia y cree una AMI. Para obtener más información, consulte Creación de una AMI de Linux desde una instancia.

Ubuntu 18.04 - Bionic

Para configurar una AMI de 18.04 LTS para que admita la hibernación

  1. Actualice a la última versión del kernel 4.15.0-1044 o posterior mediante los siguientes comandos.

    [ec2-user ~]$ sudo apt update [ec2-user ~]$ sudo apt dist-upgrade
  2. Instale el paquete de ec2-hibinit-agent de los repositorios mediante el siguiente comando.

    [ec2-user ~]$ sudo apt install ec2-hibinit-agent
  3. Ejecute el siguiente comando para volver a arrancar la instancia.

    [ec2-user ~]$ sudo reboot
  4. Confirme que la versión del kernel se ha actualizado a la versión 4.15.0-1044 o posterior mediante el siguiente comando.

    [ec2-user ~]$ uname -a
Ubuntu 16.04 - Xenial

Para configurar una AMI Ubuntu 16.04 LTS para que admita la hibernación

  1. Actualice a la última versión del kernel 4.15.0-1058-aws o posterior mediante los siguientes comandos.

    [ec2-user ~]$ sudo apt update [ec2-user ~]$ sudo apt install linux-aws-hwe
    nota

    El paquete linux-aws-hwe kernel es totalmente compatible con Canonical. El paquete continuará recibiendo actualizaciones periódicas hasta que finalice el soporte estándar para Ubuntu 16.04 LTS en abril de 2021, y recibirá actualizaciones de seguridad adicionales hasta que finalice el soporte de mantenimiento de seguridad extendido en 2024. Para obtener más información, consulte Amazon EC2 Hibernation for Ubuntu 16.04 LTS now available en el blog de Canonical Ubuntu.

  2. Instale el paquete de ec2-hibinit-agent de los repositorios mediante el siguiente comando.

    [ec2-user ~]$ sudo apt install ec2-hibinit-agent
  3. Ejecute el siguiente comando para volver a arrancar la instancia.

    [ec2-user ~]$ sudo reboot
  4. Confirme que la versión del kernel se ha actualizado a la versión 4.15.0-1058-aws o posterior mediante el siguiente comando.

    [ec2-user ~]$ uname -a

Habilitar la hibernación de una instancia

Para hibernar una instancia, primero debe estar habilitada para la hibernación. Para habilitar la hibernación, debe hacerlo al lanzar la instancia.

importante

No puede habilitar o deshabilitar la hibernación para una instancia después de lanzarla.

Console

Para habilitar la hibernación utilizando la consola

  1. Siga el procedimiento indicado en Lanzar una instancia con el asistente de lanzamiento de instancias.

  2. En la página Choose an Amazon Machine Image (AMI) (Elegir una imagen de máquina de Amazon (AMI)), seleccione una AMI que admita la hibernación. Para obtener más información acerca de las AMI, consulte Requisitos previos de la hibernación.

  3. En la página Choose an Instance Type (Elegir un tipo de instancia), seleccione un tipo de instancia compatible y elija Next: Configure Instance Details (Siguiente: Configurar detalles de instancia). Para obtener información acerca de los tipos de instancia admitidos, consulte Requisitos previos de la hibernación.

  4. En la página Configure Instance Details (Configurar detalles de instancia), para Stop - Hibernate Behavior (Detener: Comportamiento de hibernación), active la casilla Enable hibernation as an additional stop behavior (Habilitar la hibernación como un comportamiento de detención adicional).

  5. En la página Adición de almacenamiento, para el volumen raíz, especifique la siguiente información:

    • En Tamaño (GiB), introduzca el tamaño del volumen raíz de Amazon EBS. El volumen debe ser lo suficientemente grande como para almacenar el contenido de la RAM y adaptarse al uso esperado.

    • En Tipo de volumen, seleccione un tipo de volumen de Amazon EBS compatible (SSD de uso general (gp2) o SSD de IOPS aprovisionadas (io1)).

    • En Cifrado, seleccione la clave de cifrado del volumen. Si ha habilitado el cifrado de forma predeterminada en esta región de AWS, se selecciona la clave de cifrado predeterminada.

    Para obtener más información acerca de los requisitos previos del volumen raíz, consulte Requisitos previos de la hibernación.

  6. Continúe tal y como se lo indique el asistente. Cuando haya acabado de revisar las opciones de la página Review Instance Launch (Revisar lanzamiento de instancia), elija Launch (Lanzar). Para obtener más información, consulte Lanzar una instancia con el asistente de lanzamiento de instancias.

AWS CLI

Para habilitar la hibernación utilizando la AWS CLI

Utilice el comando run-instances para lanzar una instancia. Especifique los parámetros del volumen raíz de EBS mediante el parámetro --block-device-mappings file://mapping.json y habilite la hibernación mediante el parámetro --hibernation-options Configured=true.

aws ec2 run-instances \ --image-id ami-0abcdef1234567890 \ --instance-type m5.large \ --block-device-mappings file://mapping.json \ --hibernation-options Configured=true \ --count 1 \ --key-name MyKeyPair

En mapping.json, especifique lo siguiente:

[ { "DeviceName": "/dev/xvda", "Ebs": { "VolumeSize": 30, "VolumeType": "gp2", "Encrypted": true } } ]
nota

El valor de DeviceName debe coincidir con el nombre del dispositivo raíz asociado a la AMI. Para buscar el nombre del dispositivo raíz, utilice el comando describe-images de la siguiente manera:

aws ec2 describe-images --image-id ami-0abcdef1234567890

Si ha habilitado el cifrado de forma predeterminada en esta región de AWS, puede omitir "Encrypted": true.

Herramientas de AWS para Windows PowerShell

Para habilitar la hibernación utilizando la Herramientas de AWS para Windows PowerShell

Utilice el comando New-EC2Instance para lanzar una instancia. Especifique el volumen raíz de EBS definiendo primero la asignación de dispositivos de bloque y, a continuación, agregándola al comando mediante el parámetro -BlockDeviceMappings. Habilite la hibernación con el parámetro -HibernationOptions_Configured $true.

PS C:\> $ebs_encrypt = New-Object Amazon.EC2.Model.BlockDeviceMapping PS C:\> $ebs_encrypt.DeviceName = "/dev/xvda" PS C:\> $ebs_encrypt.Ebs = New-Object Amazon.EC2.Model.EbsBlockDevice PS C:\> $ebs_encrypt.Ebs.VolumeSize = 30 PS C:\> $ebs_encrypt.Ebs.VolumeType = "gp2" PS C:\> $ebs_encrypt.Ebs.Encrypted = $true PS C:\> New-EC2Instance ` -ImageId ami-0abcdef1234567890 ` -InstanceType m5.large ` -BlockDeviceMappings $ebs_encrypt ` -HibernationOptions_Configured $true ` -MinCount 1 ` -MaxCount 1 ` -KeyName MyKeyPair
nota

El valor de DeviceName debe coincidir con el nombre del dispositivo raíz asociado a la AMI. Para buscar el nombre del dispositivo raíz, utilice el comando Get-EC2Image de la siguiente manera:

Get-EC2Image -ImageId ami-0abcdef1234567890

Si ha habilitado el cifrado de forma predeterminada en esta región de AWS, puede omitir Encrypted = $true de la asignación de dispositivos de bloque.

 

Console

Para ver si la instancia está habilitada para la hibernación utilizando la consola

  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, seleccione Instances (Instancias).

  3. Seleccione la instancia y, en el panel de detalles, inspeccione Stop - Hibernation behavior (Detener: comportamiento de hibernación). Enabled (Habilitado) indica que la instancia está habilitada para la hibernación.

AWS CLI

Para ver si la instancia está habilitada para la hibernación utilizando la AWS CLI

Utilice el comando describe-instances y especifique el parámetro --filters "Name=hibernation-options.configured,Values=true" para filtrar instancias que están habilitadas para la hibernación.

aws ec2 describe-instances \ --filters "Name=hibernation-options.configured,Values=true"

El siguiente campo del resultado indica que la instancia está habilitada para la hibernación.

"HibernationOptions": { "Configured": true }
Herramientas de AWS para Windows PowerShell

Para ver si la instancia está habilitada para la hibernación utilizando la Herramientas de AWS para Windows PowerShell

Utilice el comando Get-EC2Instance y especifique el parámetro -Filter @{ Name="hibernation-options.configured"; Value="true"} para filtrar instancias que están habilitadas para la hibernación.

Get-EC2Instance ` -Filter @{ Name="hibernation-options.configured"; Value="true"}

La salida enumera las instancias EC2 que están habilitadas para la hibernación.

Deshabilitación de KASLR en una instancia (solo Ubuntu)

Para ejecutar la hibernación en una instancia recién lanzada con Ubuntu 16.04 LTS - Xenial o Ubuntu 18.04 LTS - Bionic lanzada con el número de serie 20190722.1 o posterior, le recomendamos que deshabilite KASLR (Kernel Address Space Layout Randomization). En Ubuntu 16.04 LTS o Ubuntu 18.04 LTS, KASLR está habilitado de forma predeterminada. KASLR es una característica de seguridad de kernel de Linux estándar que contribuye a mitigar la exposición y ramificaciones de vulnerabilidades de acceso a memoria aún no detectadas aleatorizando el valor de dirección base del kernel. Con KASLR habilitado, existe la posibilidad de que la instancia no se pueda reanudar si se ha hibernado.

Para obtener más información sobre KASLR, consulte Características de Ubuntu.

Para deshabilitar KASLR en una instancia lanzada con Ubuntu

  1. Conéctese a la instancia mediante SSH. Para obtener más información, consulte Conexión a la instancia de Linux mediante SSH.

  2. Abra el archivo /etc/default/grub.d/50-cloudimg-settings.cfg con el editor que prefiera. Edite la línea GRUB_CMDLINE_LINUX_DEFAULT para adjuntar la opción nokaslr a su extremo, tal como se muestra en el ejemplo siguiente.

    GRUB_CMDLINE_LINUX_DEFAULT="console=tty1 console=ttyS0 nvme_core.io_timeout=4294967295 nokaslr"
  3. Guarde el archivo y salga del editor.

  4. Ejecute el siguiente comando para volver a compilar la configuración de grub.

    [ec2-user ~]$ sudo update-grub
  5. Reinicie la instancia.

    [ec2-user ~]$ sudo reboot
  6. Confirme que se ha agregado nokaslr al ejecutar el comando siguiente.

    [ec2-user ~]$ cat /proc/cmdline

    La salida del comando debería incluir la opción nokaslr.

Hibernar una instancia

Puede hibernar una instancia si está habilitada para la hibernación y cumple los requisitos previos de hibernación. Si una instancia no se puede hibernar correctamente, se produce un apagado normal.

Console

Para hibernar una instancia respaldada por Amazon EBS utilizando la consola

  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, seleccione Instances (Instancias).

  3. Seleccione una instancia y elija Actions (Acciones), Instance State (Estado de la instancia) y Stop - Hibernate (Detener: hibernar). Si la opción Stop - Hibernate (Detener: hibernar) está deshabilitada, la instancia ya está hibernada o detenida, o no se puede hibernar. Para obtener más información, consulte Requisitos previos de la hibernación.

  4. En el cuadro de diálogo de confirmación, elija Yes, Stop - Hibernate (Sí, detener: hibernar). Puede que transcurran unos minutos hasta que la instancia se hiberne. Instance State (Estado de la instancia) cambia a Stopping (Deteniendo) mientras la instancia se está hibernando y, a continuación, a Stopped (Detenido) cuando la instancia se ha hibernado.

AWS CLI

Para hibernar una instancia respaldada por Amazon EBS utilizando la AWS CLI

Use el comando stop-instances y especifique el parámetro --hibernate.

aws ec2 stop-instances \ --instance-ids i-1234567890abcdef0 \ --hibernate
Herramientas de AWS para Windows PowerShell

Para hibernar una instancia respaldada por Amazon EBS utilizando la Herramientas de AWS para Windows PowerShell

Use el comando Stop-EC2Instance y especifique el parámetro -Hibernate $true.

Stop-EC2Instance ` -InstanceId i-1234567890abcdef0 ` -Hibernate $true

 

Console

Para ver si la hibernación se inició en una instancia utilizando la consola

  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, seleccione Instances (Instancias).

  3. Seleccione la instancia y, en el panel de detalles, inspeccione State transition reason message (Mensaje de motivo de transición de estado). El mensaje Client.UserInitiatedHibernate: User initiated hibernate (Client.UserInitiatedHibernate: hibernación iniciada por el usuario) indica que la hibernación se inició en la instancia.

AWS CLI

Para ver si la hibernación se inició en una instancia utilizando la AWS CLI

Utilice el comando describe-instances y especifique el filtro state-reason-code para ver instancias en las que se ha iniciado la hibernación.

aws ec2 describe-instances \ --filters "Name=state-reason-code,Values=Client.UserInitiatedHibernate"

El siguiente campo del resultado indica que la hibernación se inició en la instancia.

"StateReason": { "Code": "Client.UserInitiatedHibernate" }
Herramientas de AWS para Windows PowerShell

Para ver si la hibernación se inició en una instancia utilizando la Herramientas de AWS para Windows PowerShell

Utilice el comando Get-EC2Instance y especifique el filtro state-reason-code para ver instancias en las que se ha iniciado la hibernación.

Get-EC2Instance ` -Filter @{Name="state-reason-code";Value="Client.UserInitiatedHibernate"}

La salida enumera las instancias EC2 en las que se ha iniciado la hibernación.

Iniciar una instancia hibernada

Inicie una instancia hibernada iniciándola de la misma forma que iniciaría una instancia detenida.

Console

Para iniciar una instancia hibernada utilizando la consola

  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, seleccione Instances (Instancias).

  3. Seleccione una instancia hibernada y elija Actions (Acciones), Instance State (Estado de la instancia) y Start (Comenzar). Puede que transcurran unos minutos hasta que la instancia pase al estado running. Durante este tiempo, las comprobaciones de estado de la instancia muestran la instancia en un estado erróneo hasta que esta se inicie.

AWS CLI

Para iniciar una instancia hibernada utilizando la AWS CLI

Utilice el comando start-instances.

aws ec2 start-instances \ --instance-ids i-1234567890abcdef0
Herramientas de AWS para Windows PowerShell

Para iniciar una instancia hibernada utilizando la Herramientas de AWS para Windows PowerShell

Utilice el comando Start-EC2Instance.

Start-EC2Instance ` -InstanceId i-1234567890abcdef0

Solucionar problemas de hibernación

Utilice esta información como ayuda para diagnosticar y solucionar problemas que pueda encontrar al hibernar una instancia.

No se puede hibernar de inmediato después de un lanzamiento

Si intenta hibernar una instancia demasiado rápido después de haberla lanzado, recibirá un error.

Debe esperar al menos dos minutos después del lanzamiento antes de hibernar.

La transición tarda demasiado de stopping a stopped, y el estado de la memoria no se reinicia después del inicio

Si su instancia de hibernación tarda mucho en realizar la transición del estado stopping a stopped y si el estado de la memoria no se restablece después del inicio, esto podría indicar que la hibernación no se configuró correctamente.

Compruebe el registro del sistema de la instancia y busque mensajes que estén relacionados con la hibernación. Para obtener acceso al registro del sistema, conéctese a la instancia o utilice el comando get-console-output. Busque líneas de registro desde hibinit-agent. Si las líneas de registro indican un error o faltan, es más probable que se produzca un error al configurar la hibernación en el momento del lanzamiento.

Por ejemplo, el siguiente mensaje indica que el volumen raíz de la instancia no es lo suficientemente grande: hibinit-agent: Insufficient disk space. Cannot create setup for hibernation. Please allocate a larger root device.

Si la última línea de registro de hibinit-agent es hibinit-agent: Running: swapoff /swap, la hibernación se ha configurado correctamente.

Si no ve los registros de estos procesos, es posible que su AMI no admita la hibernación. Para obtener información acerca de las AMI soportadas, consulte Requisitos previos de la hibernación. Si utilizó su propia AMI, asegúrese de que ha seguido las instrucciones para Configurar una AMI existente para admitir la hibernación.

Instancia “bloqueada” en el estado de detención

Si hibernó su instancia y aparece bloqueada en el estado stopping, puede forzar la detención. Para obtener más información, consulte Solucionar problemas al detener la instancia.