Menú
Amazon Elastic Compute Cloud
Guía del usuario de instancias de Linux

Crear alarmas que paran, terminan, reinician o recuperan una instancia

Mediante las acciones de alarma de Amazon CloudWatch, puede crear alarmas que paran, terminan, reinician o recuperan automáticamente las instancias. Puede utilizar las acciones parar o terminar para ayudarle a ahorrar dinero cuando ya no necesita que se ejecute una instancia. Puede utilizar las acciones reiniciar y recuperar para reiniciar automáticamente dichas instancias o recuperarlas en nuevo hardware si se produce un deterioro del sistema.

El rol vinculado a servicio AWSServiceRoleForCloudWatchEvents permite a AWS realizar acciones de alarma en su nombre. La primera vez que se crea una alarma en la Consola de administración de AWS, la CLI de IAM o la API de IAM, CloudWatch crea el rol vinculado a servicio automáticamente.

Hay una serie de situaciones en las que es posible que desee parar o terminar la instancia automáticamente. Por ejemplo, es posible que tenga instancias dedicadas a trabajos de procesamiento de nóminas por lotes o tareas de cálculo científico que se ejecutan durante un período de tiempo y después completan su trabajo. En lugar de dejar dichas instancias inactivas (y acumulando cargos), puede pararlas o terminarlas, lo que le permitirá ahorrar dinero. La principal diferencia entre utilizar las acciones de alarma parar y terminar es que puede reiniciar fácilmente una instancia parada si necesita ejecutarla de nuevo más tarde y puede mantener el mismo ID de instancia y volumen raíz. Sin embargo, no se puede reiniciar una instancia terminada. En su lugar, debe lanzar una nueva instancia.

Puede añadir las acciones de parar, terminar, reiniciar o recuperar a cualquier alarma establecida en una métrica por instancia Amazon EC2, incluidas las métricas de monitorización básicas y detalladas proporcionadas por Amazon CloudWatch (en el espacio de nombres AWS/EC2), así como cualquier métrica personalizada que incluya la dimensión InstanceId, siempre que su valor se refiera a una instancia Amazon EC2 válida en ejecución.

Soporte de consola

Puede crear alarmas mediante la consola de Amazon EC2 o la consola de CloudWatch. Los procedimientos de esta documentación utilizan la consola de Amazon EC2. Para los procedimientos que utilizan la consola de CloudWatch, consulte Create Alarms That Stop, Terminate, Reboot, or Recover an Instance en la guía Guía del usuario de Amazon CloudWatch.

Permisos

Si es usuario de AWS Identity and Access Management (IAM), debe contar con los siguientes permisos para crear o modificar una alarma:

  • ec2:DescribeInstanceStatus y ec2:DescribeInstances: para todas las alarmas sobre métricas de estado de instancias Amazon EC2

  • ec2:StopInstances: para las alarmas con acciones de parada

  • ec2:TerminateInstances: para las alarmas con acciones de terminación

  • No se requieren permisos específicos para las alarmas con acciones de recuperación

Si dispone de permisos de lectura/escritura para Amazon CloudWatch pero no para Amazon EC2, puede seguir creando una alarma pero las acciones para parar o terminar no se realizarán en la instancia Amazon EC2. No obstante, si más tarde se le concede permiso para utilizar las API de Amazon EC2 asociadas, se ejecutarán las acciones de alarma que creó con anterioridad. Para obtener más información acerca de los permisos de IAM, consulte Permisos y políticas en la Guía del usuario de IAM.

Agregar acciones de parada a alarmas de Amazon CloudWatch

Puede crear una alarma que pare una instancia Amazon EC2 cuando se alcance un umbral determinado. Por ejemplo, podría ejecutar instancias de desarrollo o de prueba y en ocasiones olvidarse de apagarlas. Puede crear una alarma que se active cuando el porcentaje de uso medio de la CPU haya estado por debajo del 10 por ciento durante 24 horas, hecho indicativo de que ha estado inactiva y que ya no se está usando. Puede ajustar el umbral, la duración y el periodo que mejor se adapten a sus necesidades, y además puede añadir una notificación de Amazon Simple Notification Service (Amazon SNS) para recibir un correo electrónico cuando se active la alarma.

Las instancias utilizan un volumen de Amazon EBS como dispositivo raíz se pueden parar o terminar, mientras que aquellas que utilizan el almacén de instancias como dispositivo raíz solo se pueden terminar.

Para crear una alarma para parar una instancia inactiva mediante la consola de Amazon EC2

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

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

  3. Seleccione la instancia. En la pestaña Monitoring, elija Create Alarm.

  4. En el cuadro de diálogo Create Alarm (Crear alarma), haga lo siguiente:

    1. Para recibir un correo electrónico cuando se active la alarma, en Send a notification to (Enviar una notificación a), elija un tema de Amazon SNS existente o elija Create Topic (Crear tema) para crear uno nuevo.

      Para crear un tema nuevo, en Send a notification to, escriba un nombre para el tema y, a continuación, en With these recipients, escriba las direcciones de correo electrónico de los destinatarios (separadas por comas). Después de crear la alarma, recibirá un email de confirmación de la suscripción que deberá aceptar antes de poder recibir notificaciones para este tema.

    2. Elija Take this action (Realizar esta acción), Stop this instance (Detener esta instancia).

    3. En Whenever, elija la estadística que desee usar y, a continuación, elija la métrica. En este ejemplo, elija Average y CPU Utilization.

    4. En Is (Es), especifique el umbral de la métrica. En este ejemplo, introduzca 10 por ciento.

    5. En For at least (Para al menos), especifique el periodo de evaluación de la alarma. En este ejemplo, introduzca 24 periodos consecutivos de 1 Hour (1 hora).

    6. Para cambiar el nombre de la alarma, en Name of alarm, escriba un nuevo nombre. Los nombres de alarma solo pueden contener caracteres ASCII.

      Si no escribe un nombre para la alarma, Amazon CloudWatch creará uno automáticamente.

      nota

      Puede ajustar la configuración de la alarma en función de sus propios requisitos antes de crear la alarma, o puede editarla más adelante. Esto incluye la configuración de la métrica, el umbral, la duración, la acción y la notificación. Sin embargo, después de crear una alarma, no podrá editar su nombre más adelante.

    7. Elija Create Alarm.

Agregar acciones de terminación a alarmas de Amazon CloudWatch

Puede crear una alarma que termina una instancia EC2 automáticamente cuando se alcanza un umbral determinado (siempre y cuando la protección de terminación no esté habilitada para la instancia). Por ejemplo, es posible que desee terminar una instancia cuando haya completado su trabajo y no necesite la instancia de nuevo. En caso de que desee utilizar la instancia en otro momento, debe parar la instancia en lugar de terminarla. Para obtener más información acerca de la activación y desactivación de la protección de terminación de una instancia, consulte Enabling Termination Protection for an Instance en la Guía del usuario de Amazon EC2 para instancias de Linux.

Para crear una alarma para terminar una instancia inactiva mediante la consola de Amazon EC2

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

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

  3. Seleccione la instancia. En la pestaña Monitoring, elija Create Alarm.

  4. En el cuadro de diálogo Create Alarm (Crear alarma), haga lo siguiente:

    1. Para recibir un correo electrónico cuando se active la alarma, en Send a notification to (Enviar una notificación a), elija un tema de Amazon SNS existente o elija Create Topic (Crear tema) para crear uno nuevo.

      Para crear un tema nuevo, en Send a notification to, escriba un nombre para el tema y, a continuación, en With these recipients, escriba las direcciones de correo electrónico de los destinatarios (separadas por comas). Después de crear la alarma, recibirá un email de confirmación de la suscripción que deberá aceptar antes de poder recibir notificaciones para este tema.

    2. Elija Take this action (Realizar esta acción), Terminate this instance (Terminar esta instancia).

    3. En Whenever, elija una estadística y, a continuación, elija la métrica. En este ejemplo, elija Average y CPU Utilization.

    4. En Is (Es), especifique el umbral de la métrica. En este ejemplo, introduzca 10 por ciento.

    5. En For at least (Para al menos), especifique el periodo de evaluación de la alarma. En este ejemplo, introduzca 24 periodos consecutivos de 1 Hour (1 hora).

    6. Para cambiar el nombre de la alarma, en Name of alarm, escriba un nuevo nombre. Los nombres de alarma solo pueden contener caracteres ASCII.

      Si no escribe un nombre para la alarma, Amazon CloudWatch creará uno automáticamente.

      nota

      Puede ajustar la configuración de la alarma en función de sus propios requisitos antes de crear la alarma, o puede editarla más adelante. Esto incluye la configuración de la métrica, el umbral, la duración, la acción y la notificación. Sin embargo, después de crear una alarma, no podrá editar su nombre más adelante.

    7. Elija Create Alarm.

Agregar acciones de reinicio a alarmas de Amazon CloudWatch

Puede crear una alarma de Amazon CloudWatch que monitorice una instancia Amazon EC2 y reinicie la instancia automáticamente. La acción de alarma de reinicio se recomienda para errores de comprobación de estado de instancia (en contraposición a la acción de alarma recuperar, que es adecuada para los errores de comprobación de estado del sistema). Un reinicio de instancia es equivalente a un reinicio del sistema operativo. En la mayoría de los casos, solo necesita unos minutos para reiniciar su instancia. Cuando se reinicia una instancia, sigue estando en el mismo host físico, por lo que la instancia mantiene su nombre de DNS público, dirección IP privada y todos los datos en sus volúmenes de almacén de instancia.

El reinicio de una instancia no comienza un nuevo periodo de facturación de instancia, con un cargo mínimo de un minuto, a diferencia de parar y reiniciar la instancia. Para obtener más información, consulte Reboot Your Instance en la Guía del usuario de Amazon EC2 para instancias de Linux.

importante

Para evitar una condición de carrera entre las acciones de reinicio y de recuperación, evite configurar el mismo número de periodos de evaluación para una alarma de reinicio y otra de recuperación. Le recomendamos que configure las alarmas de reinicio en tres periodos de un minuto cada uno. Para obtener más información, consulte Evaluación de una alarma en la Guía del usuario de Amazon CloudWatch.

Para crear una alarma para reiniciar una instancia mediante la consola de Amazon EC2

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

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

  3. Seleccione la instancia. En la pestaña Monitoring, elija Create Alarm.

  4. En el cuadro de diálogo Create Alarm (Crear alarma), haga lo siguiente:

    1. Para recibir un correo electrónico cuando se active la alarma, en Send a notification to (Enviar una notificación a), elija un tema de Amazon SNS existente o elija Create Topic (Crear tema) para crear uno nuevo.

      Para crear un tema nuevo, en Send a notification to, escriba un nombre para el tema y en With these recipients, escriba las direcciones de correo electrónico de los destinatarios (separadas por comas). Después de crear la alarma, recibirá un email de confirmación de la suscripción que deberá aceptar antes de poder recibir notificaciones para este tema.

    2. Seleccione Take this action (Realizar esta acción), Reboot this instance (Reiniciar esta instancia).

    3. En Whenever, elija Comprobación de estado no superada (instancia).

    4. En For at least (Para al menos), especifique el periodo de evaluación de la alarma. En este ejemplo, introduzca 3 periodos consecutivos de 1 Minute (1 minuto).

    5. Para cambiar el nombre de la alarma, en Name of alarm, escriba un nuevo nombre. Los nombres de alarma solo pueden contener caracteres ASCII.

      Si no escribe un nombre para la alarma, Amazon CloudWatch creará uno automáticamente.

    6. Elija Create Alarm.

Agregar acciones de recuperación a alarmas de Amazon CloudWatch

Puede crear una alarma de Amazon CloudWatch que monitoree una instancia Amazon EC2. Si la instancia deja de funcionar debido a un error de hardware subyacente o a un problema que requiera la implicación de AWS para la reparación, puede recuperar automáticamente la instancia. Las instancias terminadas no se pueden recuperar. Una instancia recuperada es idéntica a la instancia original, incluido el ID de instancia, direcciones IP privadas, direcciones IP elásticas y todos los metadatos de la instancia.

Cuando se activa la alarma StatusCheckFailed_System se inicia la acción de recuperación, se le notificará mediante el tema de Amazon SNS tema que eligió al crear la alarma y la acción de recuperación asociada. Durante la recuperación de la instancia, la instancia se migró durante un reinicio de instancia y los datos que hay en la memoria se pierden. Cuando el proceso se ha completado, la información se publica en el tema de SNS que haya configurado para la alarma. Cualquier persona que esté suscrita a este tema de SNS recibirá una notificación por correo electrónico que incluya el estado del intento de recuperación e instrucciones adicionales. Observará un reinicio de instancia en la instancia recuperada.

La acción de recuperación solo se puede utilizar con StatusCheckFailed_System, no con StatusCheckFailed_Instance.

Los problemas siguientes pueden provocar errores en las comprobaciones de estado del sistema:

  • Pérdida de conectividad de red

  • Pérdida de potencia del sistema

  • Problemas de software en el host físico

  • Problemas de hardware en el host físico que afectan a la accesibilidad a la red

La acción de recuperación solo se admite en instancias que tengan las siguientes características:

  • Utilice un tipo de instancia C3, C4, C5, M3, M4, M5, R3, R4, T2 o X1.

  • Que se ejecuten en una VPC (no en EC2-Classic)

  • Que utilicen tenencia compartida (atributo de tenencia establecido en default)

  • Que utilicen solo volúmenes de EBS (no configure volúmenes de almacén de instancias). Para obtener más información, consulte 'Recover this instance' está deshabilitado.

Si la instancia tiene una dirección IP pública, la conserva tras la recuperación.

importante

Para evitar una condición de carrera entre las acciones de reinicio y de recuperación, evite configurar el mismo número de periodos de evaluación para una alarma de reinicio y otra de recuperación. Le recomendamos que configure las alarmas de recuperación en dos periodos de un minuto cada uno. Para obtener más información, consulte Evaluación de una alarma en la Guía del usuario de Amazon CloudWatch.

Para crear una alarma para recuperar una instancia mediante la consola de Amazon EC2

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

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

  3. Seleccione la instancia. En la pestaña Monitoring, elija Create Alarm.

  4. En el cuadro de diálogo Create Alarm (Crear alarma), haga lo siguiente:

    1. Para recibir un correo electrónico cuando se active la alarma, en Send a notification to (Enviar una notificación a), elija un tema de Amazon SNS existente o elija Create Topic (Crear tema) para crear uno nuevo.

      Para crear un tema nuevo, en Send a notification to, escriba un nombre para el tema y en With these recipients, escriba las direcciones de correo electrónico de los destinatarios (separadas por comas). Después de crear la alarma, recibirá un email de confirmación de la suscripción que deberá aceptar antes de poder recibir emails para este tema.

    2. Seleccione Take this action (Realizar esta acción), Recover this instance (Recuperar esta instancia).

    3. En Whenever, elija Comprobación de estado no superada (sistema).

    4. En For at least (Para al menos), especifique el periodo de evaluación de la alarma. En este ejemplo, introduzca 2 periodos consecutivos de 1 Minute (1 minuto).

    5. Para cambiar el nombre de la alarma, en Name of alarm, escriba un nuevo nombre. Los nombres de alarma solo pueden contener caracteres ASCII.

      Si no escribe un nombre para la alarma, Amazon CloudWatch creará uno automáticamente.

    6. Elija Create Alarm.

Uso de la consola de Amazon CloudWatch para ver el historial de alarmas y acciones

Puede consultar el historial de alarmas y de acciones en la consola de Amazon CloudWatch. Amazon CloudWatch mantiene el historial de alarmas y de acciones de las últimas dos semanas.

Para ver el historial de las alarmas activadas y acciones

  1. Abra la consola de CloudWatch en https://console.aws.amazon.com/cloudwatch/.

  2. En el panel de navegación, elija Alarms.

  3. Seleccione una alarma.

  4. La pestaña Details muestra la transición de estado más reciente junto con los valores de tiempo y métricas.

  5. Elija la pestaña History para ver las entradas de historial más recientes.

Escenarios de acciones de alarma de Amazon CloudWatch

Puede utilizar la consola de Amazon EC2 para crear acciones de alarma que paren o terminen una instancia Amazon EC2 cuando se cumplan determinadas condiciones. En la siguiente captura de pantalla de la página de la consola en la que se establecen las acciones de alarma, hemos enumerado estas opciones. También hemos enumerado las opciones en los escenarios que aparecen a continuación para ayudarle a crear las acciones adecuadas.

 Cuadro de diálogo Create Alarm for

Escenario 1: Parar instancias de desarrollo y pruebas inactivas

Crear una alarma que pare una instancia utilizada para desarrollo o pruebas de software cuando haya estado inactiva durante al menos una hora.

Opción Valor

1

Detener

2

Máximo

3

CPUUtilization

4

<=

5

10%

6

60 minutos

7

1

Escenario 2: Parar instancias inactivas

Crear una alarma que pare una instancia y envíe un email cuando la instancia haya estado inactiva durante 24 horas.

Opción Valor

1

Parar y enviar email

2

Media

3

CPUUtilization

4

<=

5

5%

6

60 minutos

7

24

Escenario 3: Enviar un email sobre servidores web con un tráfico inusualmente alto

Crear una alarma que envíe un email cuando una instancia supere los 10 GB de tráfico de red de salida al día.

Opción Valor

1

Email

2

Sum

3

NetworkOut

4

>

5

10 GB

6

1 día

7

1

Escenario 4: Parar servidores web con un tráfico inusualmente alto

Crear una alarma que pare una instancia y envíe un mensaje de texto (SMS) si el tráfico de salida supera 1 GB por hora.

Opción Valor

1

Parar y enviar SMS

2

Sum

3

NetworkOut

4

>

5

1 GB

6

1 hora

7

1

Escenario 5: Parar una instancia que sufra de una pérdida de memoria

Crear una alarma que pare una instancia cuando el uso de memoria alcance o supere el 90% para que se puedan recuperar los registros de la aplicación para solución de problemas.

nota

La métrica MemoryUtilization es una métrica personalizada. Para utilizar la métrica MemoryUtilization, debe instalar los scripts Perl para instancias de Linux. Para obtener más información, consulte Monitoring Memory and Disk Metrics for Amazon EC2 Linux Instances.

Opción Valor

1

Detener

2

Máximo

3

MemoryUtilization

4

>=

5

90%

6

1 minuto

7

1

Escenario 6: Parar instancias deterioradas

Crear una alarma que para una instancia que dé error en tres comprobaciones de estado consecutivas (realizadas en intervalos de 5 minutos).

Opción Valor

1

Detener

2

Media

3

StatusCheckFailed_System

4

>=

5

1

6

15 minutos

7

1

Escenario 7: Terminar instancias cuando se completen trabajos de procesamiento por lotes

Crear una alarma que termine una instancia que ejecuta trabajos por lotes cuando ya no envía datos de resultados.

Opción Valor

1

Finalizar

2

Máximo

3

NetworkOut

4

<=

5

100,000 bytes

6

5 minutos

7

1