Cree ventanas de eventos personalizadas para los eventos programados que afecten a sus instancias de Amazon EC2. - Amazon Elastic Compute Cloud

Cree ventanas de eventos personalizadas para los eventos programados que afecten a sus instancias de Amazon EC2.

Puede definir ventanas de eventos semanales personalizados para eventos programados que reinicien, detengan o terminen sus instancias de Amazon EC2. Puede asociar una o varias instancias con un periodo de evento. Si se planifica un evento programado para esas instancias, AWS programará los eventos dentro del periodo de eventos asociado.

Puede utilizar los periodos de eventos para maximizar la disponibilidad de la carga de trabajo mediante la especificación de los periodos de eventos que se producen durante los periodos de menor actividad de su carga de trabajo. También puede alinear los periodos de eventos con sus programas de mantenimiento internos.

Define un periodo de evento mediante la especificación de un conjunto de intervalos de tiempo. El intervalo de tiempo mínimo es de 2 horas. Los intervalos de tiempo combinados deben sumar como mínimo 4 horas.

Puede asociar una o varias instancias con un periodo de evento mediante ID de instancia o etiquetas de instancia. También puede asociar host dedicados con periodos de eventos mediante el ID de alojamiento.

aviso

Los periodos de eventos solo se aplican a eventos programados que detienen, reinician o terminan instancias.

Los periodos de eventos no se aplican a lo siguiente:

  • eventos programados rápidos y eventos de mantenimiento de red

  • mantenimiento no programado, como AutoRecovery y reinicios no planificados

Consideraciones

  • Las horas de los periodos de eventos se indican en UTC.

  • La duración mínima de la ventana de evento semanal es de 4 horas.

  • Los intervalos de tiempo dentro de un periodo de evento deben ser de 2 horas como mínimo.

  • Solo se puede asociar un tipo de destino (ID de instancia, ID de host dedicado o etiqueta de instancia) con un periodo de evento.

  • Un destino (ID de instancia, ID de host dedicado o etiqueta de instancia) solo se puede asociar con un periodo de evento.

  • Se puede asociar un máximo de 100 ID de instancia, 50 ID de host dedicado o 50 etiquetas de instancia con un periodo de evento. Las etiquetas de instancia pueden asociarse con cualquier cantidad de instancias.

  • Se puede crear un máximo de 200 periodos de eventos por región de AWS.

  • Es posible que varias instancias asociadas con periodos de eventos tengan eventos programados que ocurran al mismo tiempo.

  • Si AWS ya ha programado un evento, la modificación de un periodo de evento no cambiará el horario del evento programado. Si el evento tiene una fecha límite, puede reprogramar el evento.

  • Puede detener e iniciar una instancia antes del evento programado, por lo que se migra la instancia a un nuevo host, de manera que el evento programado ya no se llevará a cabo.

Crear periodos de eventos

Puede crear uno o varios periodos de eventos. Para cada periodo de evento, debe especificar uno o varios bloques de tiempo. Por ejemplo, puede crear una ventana de evento con bloques de tiempo que ocurran todos los días a las 4 h durante 2 horas. También puede crear una ventana de evento con bloques de tiempo que ocurran los domingos entre las 2 h y las 4 h y los miércoles entre las 3 h y las 5 h.

Para conocer las restricciones de los periodos de eventos, consulte Consideraciones que aparece antes en este tema.

Los periodos de eventos se repiten semanalmente hasta que se eliminan.

Utilice uno de los siguientes métodos para crear un periodo de evento.

Console
Para crear un periodo de evento
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, seleccione Events (Eventos).

  3. Elija Actions (Acciones), Manage event windows (Administrar periodos de eventos).

  4. Seleccione Create instance event window (Crear periodo de evento de instancia).

  5. En Event window name (Nombre del periodo de evento), ingrese un nombre descriptivo para el periodo de evento.

  6. En Event window schedule (Programación del periodo de evento), elija especificar los bloques de tiempo en el periodo de evento con el generador de programación cron o mediante la especificación de los intervalos de tiempo.

    • Si elige Cron schedule builder (Generador de programación cron), especifique lo siguiente:

      1. En Days (UTC) (Días [UTC]), especifique los días de la semana en los que ocurrirá el periodo de evento.

      2. En Start time (UTC) (Hora de inicio [UTC]), especifique la hora a la que comenzará el periodo de evento.

      3. En Duration (Duración), especifique la duración de los bloques de tiempo del periodo de evento. La duración mínima por bloque de tiempo es de 2 horas. La duración mínima del periodo de evento debe ser igual o superior a 4 horas en total. Todas las horas se indican en UTC.

    • Si elige Time ranges (Intervalos de tiempo), elija Add new time range (Agregar un intervalo de tiempo nuevo) y especifique el día y la hora de inicio y el día y la hora de finalización. Repita este procedimiento para cada intervalo de tiempo. La duración mínima por intervalo de tiempo es de 2 horas. La duración mínima para todos los intervalos de tiempo combinados debe ser igual o superior a 4 horas en total.

  7. (Opcional) En Target details (Detalles del destino), asocie una o varias instancias con el periodo de evento de manera que si las instancias están programadas para mantenimiento, el evento programado ocurrirá durante el periodo de evento asociado. Para asociar una o varias instancias con una ventana de evento, utilice ID de instancia o etiquetas de instancia. Para asociar host dedicados con ventanas de eventos, utilice el ID de host.

    Tenga en cuenta que puede crear ventanas de eventos sin asociar un destino al la ventana. Luego, puede modificar el periodo para asociar uno o más destinos.

  8. (Opcional) En Event window tags (Etiquetas del periodo de evento), elija Add tag (Agregar etiqueta) e ingrese la clave y el valor de la etiqueta. Repita este proceso para cada etiqueta.

  9. Elija Create event window (Crear un periodo de evento).

AWS CLI

Para crear una ventana de evento mediante la AWS CLI, primero debe crear la ventana de evento y, luego, asociarla con uno o más destinos.

Crear un periodo de evento

Cuando crea un periodo de evento, puede definir un conjunto de intervalos de tiempo o una expresión cron, pero no ambos.

Para crear un periodo de evento con un intervalo de tiempo

Utilice el comando create-instance-event-window y especifique el parámetro --time-range. No puede especificar el parámetro --cron-expression.

aws ec2 create-instance-event-window \ --region us-east-1 \ --time-range StartWeekDay=monday,StartHour=2,EndWeekDay=wednesday,EndHour=8 \ --tag-specifications "ResourceType=instance-event-window,Tags=[{Key=K1,Value=V1}]" \ --name myEventWindowName

Resultado previsto

{ "InstanceEventWindow": { "InstanceEventWindowId": "iew-0abcdef1234567890", "TimeRanges": [ { "StartWeekDay": "monday", "StartHour": 2, "EndWeekDay": "wednesday", "EndHour": 8 } ], "Name": "myEventWindowName", "State": "creating", "Tags": [ { "Key": "K1", "Value": "V1" } ] } }
Para crear un periodo de evento con una expresión cron

Utilice el comando create-instance-event-window y especifique el parámetro --cron-expression. No puede especificar el parámetro --time-range.

aws ec2 create-instance-event-window \ --region us-east-1 \ --cron-expression "* 21-23 * * 2,3" \ --tag-specifications "ResourceType=instance-event-window,Tags=[{Key=K1,Value=V1}]" \ --name myEventWindowName

Salida prevista

{ "InstanceEventWindow": { "InstanceEventWindowId": "iew-0abcdef1234567890", "Name": "myEventWindowName", "CronExpression": "* 21-23 * * 2,3", "State": "creating", "Tags": [ { "Key": "K1", "Value": "V1" } ] } }
Asociar un destino con un periodo de evento

Solo se puede asociar un tipo de destino (ID de instancia, ID de host dedicado o etiquetas de instancia) con un periodo de evento.

Para asociar las etiquetas de instancia con un periodo de evento

Utilice el comando associate-instance-event-window y especifique el parámetro instance-event-window-id para determinar el periodo de evento. Para asociar las etiquetas de instancia, especifique el parámetro --association-target, y para los valores del parámetro, especifique una o varias etiquetas.

aws ec2 associate-instance-event-window \ --region us-east-1 \ --instance-event-window-id iew-0abcdef1234567890 \ --association-target "InstanceTags=[{Key=k2,Value=v2},{Key=k1,Value=v1}]"

Resultado previsto

{ "InstanceEventWindow": { "InstanceEventWindowId": "iew-0abcdef1234567890", "Name": "myEventWindowName", "CronExpression": "* 21-23 * * 2,3", "AssociationTarget": { "InstanceIds": [], "Tags": [ { "Key": "k2", "Value": "v2" }, { "Key": "k1", "Value": "v1" } ], "DedicatedHostIds": [] }, "State": "creating" } }
Para asociar una o varias instancias con un periodo de evento

Utilice el comando associate-instance-event-window y especifique el parámetro instance-event-window-id para determinar el periodo de evento. Para asociar instancias, especifique el parámetro --association-target, y para los valores del parámetro, especifique uno o varios ID de instancia.

aws ec2 associate-instance-event-window \ --region us-east-1 \ --instance-event-window-id iew-0abcdef1234567890 \ --association-target "InstanceIds=i-1234567890abcdef0,i-0598c7d356eba48d7"

Resultado previsto

{ "InstanceEventWindow": { "InstanceEventWindowId": "iew-0abcdef1234567890", "Name": "myEventWindowName", "CronExpression": "* 21-23 * * 2,3", "AssociationTarget": { "InstanceIds": [ "i-1234567890abcdef0", "i-0598c7d356eba48d7" ], "Tags": [], "DedicatedHostIds": [] }, "State": "creating" } }
Para asociar un host dedicado con un periodo de evento

Utilice el comando associate-instance-event-window y especifique el parámetro instance-event-window-id para determinar el periodo de evento. Para asociar un host dedicado, especifique el parámetro --association-target, y para los valores del parámetro, especifique uno o varios ID de alojamiento dedicado.

aws ec2 associate-instance-event-window \ --region us-east-1 \ --instance-event-window-id iew-0abcdef1234567890 \ --association-target "DedicatedHostIds=h-029fa35a02b99801d"

Resultado previsto

{ "InstanceEventWindow": { "InstanceEventWindowId": "iew-0abcdef1234567890", "Name": "myEventWindowName", "CronExpression": "* 21-23 * * 2,3", "AssociationTarget": { "InstanceIds": [], "Tags": [], "DedicatedHostIds": [ "h-029fa35a02b99801d" ] }, "State": "creating" } }

Ver periodos de eventos

Para ver los periodos de eventos, utilice uno de los siguientes métodos.

Console
Para ver periodos de eventos
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, seleccione Events (Eventos).

  3. Elija Actions (Acciones), Manage event windows (Administrar periodos de eventos).

  4. Seleccione un periodo de evento para ver los detalles.

AWS CLI
Para describir todos los periodos de eventos

Utilice el comando describe-instance-event-windows.

aws ec2 describe-instance-event-windows \ --region us-east-1

Salida prevista

{ "InstanceEventWindows": [ { "InstanceEventWindowId": "iew-0abcdef1234567890", "Name": "myEventWindowName", "CronExpression": "* 21-23 * * 2,3", "AssociationTarget": { "InstanceIds": [ "i-1234567890abcdef0", "i-0598c7d356eba48d7" ], "Tags": [], "DedicatedHostIds": [] }, "State": "active", "Tags": [] } ... ], "NextToken": "9d624e0c-388b-4862-a31e-a85c64fc1d4a" }
Para describir un periodo de evento específico

Utilice el comando describe-instance-event-windows con el parámetro --instance-event-window-id para describir un periodo de evento específico.

aws ec2 describe-instance-event-windows \ --region us-east-1 \ --instance-event-window-id iew-0abcdef1234567890
Para describir los periodos de eventos que coinciden con uno o varios filtros

Utilice el comando describe-instance-event-windows con el parámetro --filters. En el siguiente ejemplo, el filtro instance-id se utiliza para describir todas las ventanas de eventos asociadas con la instancia especificada.

Cuando se utiliza un filtro, este realiza una coincidencia directa. Sin embargo, el filtro instance-id es diferente. Si no hay una coincidencia directa con el ID de instancia, se recurre a asociaciones indirectas con el periodo de evento, como las etiquetas de la instancia o el ID de host dedicado (si la instancia está en un host dedicado).

Para obtener la lista de filtros admitidos, consulte describe-instance-event-windows en la Referencia de la AWS CLI.

aws ec2 describe-instance-event-windows \ --region us-east-1 \ --filters Name=instance-id,Values=i-1234567890abcdef0 \ --max-results 100 \ --next-token <next-token-value>

Salida prevista

En el siguiente ejemplo, la instancia se encuentra en un host dedicado, que está asociado con el periodo de evento.

{ "InstanceEventWindows": [ { "InstanceEventWindowId": "iew-0dbc0adb66f235982", "TimeRanges": [ { "StartWeekDay": "sunday", "StartHour": 2, "EndWeekDay": "sunday", "EndHour": 8 } ], "Name": "myEventWindowName", "AssociationTarget": { "InstanceIds": [], "Tags": [], "DedicatedHostIds": [ "h-0140d9a7ecbd102dd" ] }, "State": "active", "Tags": [] } ] }

Modificar periodos de eventos

Puede modificar todos los campos de una ventana de evento excepto su ID. Por ejemplo, es posible que desee modificar la programación del periodo de evento cuando comience el horario de verano. Es posible que desee agregar o eliminar destinos para los periodos de eventos existentes.

Utilice uno de los siguientes métodos para modificar un periodo de evento.

Console
Para modificar un periodo de evento
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, seleccione Events (Eventos).

  3. Elija Actions (Acciones), Manage event windows (Administrar periodos de eventos).

  4. Seleccione el periodo de evento que desea modificar y, luego, elija Actions (Acciones), Modify instance event window (Modificar periodo de evento de instancia).

  5. Modifique los campos del periodo de evento y, luego, elijaModify event window (Modificar periodo de evento).

AWS CLI

Para modificar un periodo de evento mediante la AWS CLI, se puede modificar el intervalo de tiempo o la expresión cron, y asociar uno o varios destinos con el periodo de evento o desasociarlos de este.

Modificar la hora del periodo de evento

Cuando modifica el periodo de evento, puede modificar un intervalo de tiempo o una expresión cron, pero no ambos.

Para modificar el intervalo de tiempo de un periodo de evento

Utilice el comando modify-instance-event-window y especifique el periodo de evento que se modificará. Especifique el parámetro --time-range para modificar el intervalo de tiempo. No puede especificar el parámetro --cron-expression.

aws ec2 modify-instance-event-window \ --region us-east-1 \ --instance-event-window-id iew-0abcdef1234567890 \ --time-range StartWeekDay=monday,StartHour=2,EndWeekDay=wednesday,EndHour=8

Resultado previsto

{ "InstanceEventWindow": { "InstanceEventWindowId": "iew-0abcdef1234567890", "TimeRanges": [ { "StartWeekDay": "monday", "StartHour": 2, "EndWeekDay": "wednesday", "EndHour": 8 } ], "Name": "myEventWindowName", "AssociationTarget": { "InstanceIds": [ "i-0abcdef1234567890", "i-0be35f9acb8ba01f0" ], "Tags": [], "DedicatedHostIds": [] }, "State": "creating", "Tags": [ { "Key": "K1", "Value": "V1" } ] } }
Para modificar un conjunto de intervalos de tiempo para un periodo de evento

Utilice el comando modify-instance-event-window y especifique el periodo de evento que se modificará. Especifique el parámetro --time-range para modificar el intervalo de tiempo. No se puede especificar el parámetro --cron-expression en la misma llamada.

aws ec2 modify-instance-event-window \ --region us-east-1 \ --instance-event-window-id iew-0abcdef1234567890 \ --time-range '[{"StartWeekDay": "monday", "StartHour": 2, "EndWeekDay": "wednesday", "EndHour": 8}, {"StartWeekDay": "thursday", "StartHour": 2, "EndWeekDay": "friday", "EndHour": 8}]'

Resultado previsto

{ "InstanceEventWindow": { "InstanceEventWindowId": "iew-0abcdef1234567890", "TimeRanges": [ { "StartWeekDay": "monday", "StartHour": 2, "EndWeekDay": "wednesday", "EndHour": 8 }, { "StartWeekDay": "thursday", "StartHour": 2, "EndWeekDay": "friday", "EndHour": 8 } ], "Name": "myEventWindowName", "AssociationTarget": { "InstanceIds": [ "i-0abcdef1234567890", "i-0be35f9acb8ba01f0" ], "Tags": [], "DedicatedHostIds": [] }, "State": "creating", "Tags": [ { "Key": "K1", "Value": "V1" } ] } }
Para modificar la expresión cron de un periodo de evento

Utilice el comando modify-instance-event-window y especifique el periodo de evento que se modificará. Especifique el parámetro --cron-expression para modificar la expresión cron. No puede especificar el parámetro --time-range.

aws ec2 modify-instance-event-window \ --region us-east-1 \ --instance-event-window-id iew-0abcdef1234567890 \ --cron-expression "* 21-23 * * 2,3"

Salida prevista

{ "InstanceEventWindow": { "InstanceEventWindowId": "iew-0abcdef1234567890", "Name": "myEventWindowName", "CronExpression": "* 21-23 * * 2,3", "AssociationTarget": { "InstanceIds": [ "i-0abcdef1234567890", "i-0be35f9acb8ba01f0" ], "Tags": [], "DedicatedHostIds": [] }, "State": "creating", "Tags": [ { "Key": "K1", "Value": "V1" } ] } }
Modificar los destinos asociados con un periodo de evento

Puede asociar destinos adicionales con un periodo de evento. También puede desasociar destinos existentes de un periodo de evento. Sin embargo, solo se puede asociar un tipo de destino (ID de instancia, ID de host dedicado o etiquetas de instancia) con un periodo de evento.

Para asociar destinos adicionales con un periodo de evento

Para obtener instrucciones sobre cómo asociar destinos con un periodo de evento, consulte Associate a target with an event window.

Para desasociar las etiquetas de instancia de un periodo de evento

Utilice el comando disassociate-instance-event-window y especifique el parámetro instance-event-window-id para determinar el periodo de evento. Para desasociar las etiquetas de instancia, especifique el parámetro --association-target, y para los valores del parámetro, especifique una o varias etiquetas.

aws ec2 disassociate-instance-event-window \ --region us-east-1 \ --instance-event-window-id iew-0abcdef1234567890 \ --association-target "InstanceTags=[{Key=k2,Value=v2},{Key=k1,Value=v1}]"

Resultado previsto

{ "InstanceEventWindow": { "InstanceEventWindowId": "iew-0abcdef1234567890", "Name": "myEventWindowName", "CronExpression": "* 21-23 * * 2,3", "AssociationTarget": { "InstanceIds": [], "Tags": [], "DedicatedHostIds": [] }, "State": "creating" } }
Para desasociar una o varias instancias de un periodo de evento

Utilice el comando disassociate-instance-event-window y especifique el parámetro instance-event-window-id para determinar el periodo de evento. Para desasociar instancias, especifique el parámetro --association-target, y para los valores del parámetro, especifique uno o varios ID de instancia.

aws ec2 disassociate-instance-event-window \ --region us-east-1 \ --instance-event-window-id iew-0abcdef1234567890 \ --association-target "InstanceIds=i-1234567890abcdef0,i-0598c7d356eba48d7"

Resultado previsto

{ "InstanceEventWindow": { "InstanceEventWindowId": "iew-0abcdef1234567890", "Name": "myEventWindowName", "CronExpression": "* 21-23 * * 2,3", "AssociationTarget": { "InstanceIds": [], "Tags": [], "DedicatedHostIds": [] }, "State": "creating" } }
Para desasociar un host dedicado de un periodo de evento

Utilice el comando disassociate-instance-event-window y especifique el parámetro instance-event-window-id para determinar el periodo de evento. Para desasociar un host dedicado, especifique el parámetro --association-target, y para los valores del parámetro, especifique uno o varios ID de alojamiento dedicado.

aws ec2 disassociate-instance-event-window \ --region us-east-1 \ --instance-event-window-id iew-0abcdef1234567890 \ --association-target DedicatedHostIds=h-029fa35a02b99801d

Salida prevista

{ "InstanceEventWindow": { "InstanceEventWindowId": "iew-0abcdef1234567890", "Name": "myEventWindowName", "CronExpression": "* 21-23 * * 2,3", "AssociationTarget": { "InstanceIds": [], "Tags": [], "DedicatedHostIds": [] }, "State": "creating" } }

Eliminar periodos de eventos

Para eliminar una ventana de evento a la vez, utilice uno de los siguientes métodos.

Console
Para eliminar un periodo de evento
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, seleccione Events (Eventos).

  3. Elija Actions (Acciones), Manage event windows (Administrar periodos de eventos).

  4. Seleccione el periodo de evento que desea eliminar y, luego, elija Actions (Acciones), Delete instance event window (Eliminar periodo de evento de instancia).

  5. Cuando se le pregunte, escriba delete y, a continuación, elija Delete (Eliminar).

AWS CLI
Para eliminar un periodo de evento

Utilice el comando delete-instance-event-window y especifique el periodo de evento que se eliminará.

aws ec2 delete-instance-event-window \ --region us-east-1 \ --instance-event-window-id iew-0abcdef1234567890
Para forzar la eliminación de un periodo de evento

Utilice el parámetro --force-delete si el periodo de evento está asociado actualmente con los destinos.

aws ec2 delete-instance-event-window \ --region us-east-1 \ --instance-event-window-id iew-0abcdef1234567890 \ --force-delete

Salida prevista

{ "InstanceEventWindowState": { "InstanceEventWindowId": "iew-0abcdef1234567890", "State": "deleting" } }

Etiquetar periodos de eventos

Puede etiquetar un periodo de evento en el momento de su creación o después.

Para etiquetar un periodo de evento en el momento de la creación, consulte Crear periodos de eventos.

Utilice uno de los siguientes métodos para etiquetar un periodo de evento.

Console
Para etiquetar un periodo de evento existente
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, seleccione Events (Eventos).

  3. Elija Actions (Acciones), Manage event windows (Administrar periodos de eventos).

  4. Seleccione el periodo de evento que desea etiquetar y, luego, elija Actions (Acciones), Manage instance event window tags (Administrar etiquetas del periodo de evento de instancia).

  5. Para agregar una etiqueta, elija Add tag (Agregar etiqueta). Repita este proceso para cada etiqueta.

  6. Seleccione Guardar.

AWS CLI
Para etiquetar un periodo de evento existente

Utilice el comando create-tags para etiquetar recursos existentes. En el siguiente ejemplo, el periodo de evento existente se etiqueta con Key=purpose y Value=test.

aws ec2 create-tags \ --resources iew-0abcdef1234567890 \ --tags Key=purpose,Value=test