

• El panel de AWS Systems Manager CloudWatch dejará de estar disponible después del 30 de abril de 2026. Los clientes pueden seguir utilizando la consola de Amazon CloudWatch para ver, crear y administrar sus paneles de Amazon CloudWatch, tal y como lo hacen actualmente. Para obtener más información, consulte la [documentación del panel de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

# Programación de automatizaciones con periodos de mantenimiento
<a name="scheduling-automations-maintenance-windows"></a>

Puede iniciar una automatización mediante la configuración de un manual de procedimientos como una tarea registrada para un periodo de mantenimiento. Al registrar el manual de procedimientos como una tarea registrada, el periodo de mantenimiento ejecuta la automatización durante el periodo de mantenimiento programado. 

Por ejemplo, supongamos que crea un manual de procedimientos denominado `CreateAMI` que genera una Amazon Machine Image (AMI) de las instancias registradas como destinos en el periodo de mantenimiento. Para especificar el manual de procedimientos `CreateAMI` (y la automatización correspondiente) como una tarea registrada de un periodo de mantenimiento, primero debe crear un periodo de mantenimiento y registrar los destinos. A continuación, utilice el siguiente procedimiento para especificar el documento `CreateAMI` como una tarea registrada en el periodo de mantenimiento. Cuando se inicia el periodo de mantenimiento durante el periodo programado, el sistema ejecuta la automatización y crea una AMI de los destinos registrados.

Para obtener información acerca de la creación de manuales de procedimientos de Automation, consulte [Creación de sus propios manuales de procedimientos](automation-documents.md). Automatización es una herramienta de AWS Systems Manager.

Utilice los siguientes procedimientos para configurar una automatización como una tarea registrada para un periodo de mantenimiento a través de la consola de AWS Systems Manager, la AWS Command Line Interface (AWS CLI) o las AWS Tools for Windows PowerShell.

## Registro de una tarea de automatización en un periodo de mantenimiento (consola)
<a name="register-automation-task-maintenance-window-console"></a>

El siguiente procedimiento describe cómo utilizar la consola de Systems Manager para configurar una automatización como una tarea registrada para un periodo de mantenimiento.

**Antes de empezar**  
Antes de realizar el siguiente procedimiento, debe crear un período de mantenimiento y registrar al menos un destino. Para obtener más información, consulte los siguientes procedimientos: 
+ [Crear y configurar un periodo de mantenimiento mediante la consola](sysman-maintenance-create-mw.md).
+ [Asignar destinos a un periodo de mantenimiento mediante la consola](sysman-maintenance-assign-targets.md)

**Para configurar una automatización como una tarea registrada para un periodo de mantenimiento**

1. Abra la consola de AWS Systems Manager en [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. En el panel de navegación de la izquierda, seleccione **Maintenance Windows** y, a continuación, el período de mantenimiento con el que desee registrar una tarea de Automation.

1. Elija **Actions**. A continuación, seleccione **Register Automation task** (Registrar tarea de Automation) para ejecutar la automatización que desee en los destinos mediante el uso de un manual de procedimientos.

1. En **Name (Nombre)**, escriba un nombre para la tarea.

1. En **Descripción**, escriba una descripción.

1. En **Document** (Documento), elija el manual de procedimientos que defina las tareas que se ejecutarán.

1. En **Document version** (Versión de documento), elija la versión del manual de procedimientos que se utilizará.

1. En **Task priority** (Prioridad de tarea), especifique una prioridad para esta tarea. `1` es la prioridad más alta. Las tareas de un período de mantenimiento se programan por orden de prioridad; las tareas que tengan la misma prioridad se programan en paralelo.

1. En la sección **Targets** (Destinos), si el manual de procedimientos que eligió ejecuta tareas sobre recursos, identifique los destinos en los que desea ejecutar esta automatización. Para ello, especifique las etiquetas o seleccione las instancias de forma manual.
**nota**  
Si desea pasar los recursos a través de parámetros de entrada en lugar de destinos, no necesita especificar un destino de periodo de mantenimiento.  
En muchos casos, no es necesario especificar de forma explícita un destino para una tarea de automatización. Por ejemplo, suponga que crea una tarea de tipo Automation para actualizar una Amazon Machine Image (AMI) para Linux mediante el manual de procedimientos `AWS-UpdateLinuxAmi`. Cuando se ejecuta la tarea, la AMI se actualiza con los paquetes de distribución de Linux y el software de Amazon disponibles más recientes. Las instancias nuevas que se crearon a partir de la AMI ya tienen estas actualizaciones instaladas. Como el ID de la AMI que se actualizará se especifica en los parámetros de entrada del manual de procedimientos, no es necesario volver a especificar un destino en la tarea del periodo de mantenimiento.

   Para obtener información acerca de las tareas del periodo de mantenimiento que no requieren destinos, consulte [Registro de tareas del periodo de mantenimiento sin destinos](maintenance-windows-targetless-tasks.md).

1. (Opcional) En **Control de velocidad**:
**nota**  
Si la tarea que ejecuta no especifica destinos, no es necesario que especifique controles de frecuencia.
   + En **Concurrency** (Simultaneidad), especifique un número o un porcentaje de destinos en los que desee ejecutar la automatización de forma simultánea.

     Si ha seleccionado destinos mediante la elección de pares de clave-valor para la etiqueta y no está seguro de la cantidad de destinos que utilizarán las etiquetas seleccionadas, limite el número de automatizaciones que se pueden ejecutar a la vez mediante la especificación de un porcentaje.

     Mientras transcurre el periodo de mantenimiento, se inicia una nueva automatización por cada destino. Hay un límite de 100 automatizaciones simultáneas por Cuenta de AWS. Si especifica una tasa de simultaneidad mayor que 100, las automatizaciones simultáneas que superen el valor 100 se agregarán automáticamente a la cola de automatizaciones. Para obtener más información, consulte [Service Quotas de Systems Manager](https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm) en la *Referencia general de Amazon Web Services*. 
   + En **Error threshold** (Umbral de error), especifique cuándo desea que se detenga la ejecución de la automatización en otros destinos después de que se presentan errores en un número o un porcentaje de destinos. Por ejemplo, si especifica tres errores, Systems Manager deja de ejecutar las automatizaciones cuando se recibe el cuarto error. Los destinos que sigan procesando la automatización también pueden enviar errores.

1. En la sección **Input Parameters** (Parámetros de entrada), especifique los parámetros para el manual de procedimientos. En el caso de los manuales de procedimientos, el sistema completará automáticamente algunos de los valores. Puede conservar o reemplazar estos valores.
**importante**  
Si así lo desea, puede especificar un rol de asunción de Automation para los manuales de procedimientos. Si no especifica ningún rol para este parámetro, la automatización asume el rol de servicio del periodo de mantenimiento que elija en el paso 11. Por tanto, debe asegurarse de que el rol de servicio del periodo de mantenimiento que elija tenga los permisos de AWS Identity and Access Management (IAM) adecuados para realizar las acciones definidas en el manual de procedimientos.   
Por ejemplo, el rol vinculado al servicio para Systems Manager no tiene el permiso de IAM `ec2:CreateSnapshot`, que es necesario para usar el manual de procedimientos `AWS-CopySnapshot`. En este caso, debe utilizar un rol de servicio del período de mantenimiento personalizado o especificar un rol de asunción de Automation con los permisos `ec2:CreateSnapshot`. Para obtener más información, consulte [Configuración de Automation](automation-setup.md).

1. En el área **IAM service role** (Rol de servicio de IAM), elija un rol con el fin de proporcionar permisos a Systems Manager para inicie la automatización.

   Para crear un rol de servicio personalizado para tareas de periodo de mantenimiento, consulte [Configuración de Maintenance Windows](setting-up-maintenance-windows.md).

1. Seleccione **Register Automation task (Registrar tarea de Automation)**.

## Registro de una tarea de Automation en un periodo de mantenimiento (línea de comandos)
<a name="register-automation-task-maintenance-window-cli"></a>

El siguiente procedimiento describe cómo utilizar la AWS CLI (en Linux o Windows Server) o las Herramientas de AWS para PowerShell para configurar una automatización como una tarea registrada para un periodo de mantenimiento.

**Antes de empezar**  
Antes de realizar el siguiente procedimiento, debe crear un período de mantenimiento y registrar al menos un destino. Para obtener más información, consulte los siguientes procedimientos:
+ [Paso 1: cree el periodo de mantenimiento mediante la AWS CLI](mw-cli-tutorial-create-mw.md).
+ [Paso 2: registre un nodo de destino con el periodo de mantenimiento mediante la AWS CLI](mw-cli-tutorial-targets.md)

**Para configurar una automatización como una tarea registrada para un periodo de mantenimiento**

1. Si aún no lo ha hecho, instale y configure la AWS CLI o las Herramientas de AWS para PowerShell.

   Para obtener información, consulte [Instalación o actualización de la última versión de la AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) e [Instalación de Herramientas de AWS para PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up.html).

1. Cree un comando para configurar una automatización como una tarea registrada para un periodo de mantenimiento. Reemplace cada *example resource placeholder* con su propia información.

------
#### [ Linux & macOS ]

   ```
   aws ssm register-task-with-maintenance-window \
   --window-id window ID \
   --name task name \
   --task-arn runbook name \
   --targets Key=targets,Values=value \
   --service-role-arn IAM role arn \
   --task-type AUTOMATION \
   --task-invocation-parameters task parameters \
   --priority task priority \
   --max-concurrency 10% \
   --max-errors 5
   ```

**nota**  
Si configura una automatización como una tarea registrada a través de la AWS CLI, utilice el parámetro `--Task-Invocation-Parameters` para especificar los parámetros que se pasarán a una tarea cuando se ejecute. No utilice el parámetro `--Task-Parameters`. El parámetro `--Task-Parameters` es un parámetro heredado.  
En el caso de las tareas del periodo de mantenimiento sin un destino especificado, no puede proporcionar valores para `--max-errors` ni `--max-concurrency`. En su lugar, el sistema inserta un valor de marcador `1`, el cual podría notificarse en la respuesta a los comandos, como [https://docs.aws.amazon.com/cli/latest/reference/ssm/describe-maintenance-window-tasks.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/describe-maintenance-window-tasks.html) y [https://docs.aws.amazon.com/cli/latest/reference/ssm/get-maintenance-window-task.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/get-maintenance-window-task.html). Estos valores no afectan la ejecución de la tarea y se pueden ignorar.  
Para obtener información acerca de las tareas del periodo de mantenimiento que no requieren destinos, consulte [Registro de tareas del periodo de mantenimiento sin destinos](maintenance-windows-targetless-tasks.md).

------
#### [ Windows ]

   ```
   aws ssm register-task-with-maintenance-window ^
   --window-id window ID ^
   --name task name ^
   --task-arn runbook name ^
   --targets Key=targets,Values=value ^
   --service-role-arn IAM role arn ^
   --task-type AUTOMATION ^
   --task-invocation-parameters task parameters ^
   --priority task priority ^
   --max-concurrency 10% ^
   --max-errors 5
   ```

**nota**  
Si configura una automatización como una tarea registrada a través de la AWS CLI, utilice el parámetro `--task-invocation-parameters` para especificar los parámetros que se pasarán a una tarea cuando se ejecute. No utilice el parámetro `--task-parameters`. El parámetro `--task-parameters` es un parámetro heredado.  
En el caso de las tareas del periodo de mantenimiento sin un destino especificado, no puede proporcionar valores para `--max-errors` ni `--max-concurrency`. En su lugar, el sistema inserta un valor de marcador `1`, el cual podría notificarse en la respuesta a los comandos, como [https://docs.aws.amazon.com/cli/latest/reference/ssm/describe-maintenance-window-tasks.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/describe-maintenance-window-tasks.html) y [https://docs.aws.amazon.com/cli/latest/reference/ssm/get-maintenance-window-task.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/get-maintenance-window-task.html). Estos valores no afectan la ejecución de la tarea y se pueden ignorar.  
Para obtener información acerca de las tareas del periodo de mantenimiento que no requieren destinos, consulte [Registro de tareas del periodo de mantenimiento sin destinos](maintenance-windows-targetless-tasks.md).

------
#### [ PowerShell ]

   ```
   Register-SSMTaskWithMaintenanceWindow `
   -WindowId window ID `
   -Name "task name" `
   -TaskArn "runbook name" `
   -Target @{ Key="targets";Values="value" } `
   -ServiceRoleArn "IAM role arn" `
   -TaskType "AUTOMATION" `
   -Automation_Parameter @{ "task parameter"="task parameter value"} `
   -Priority task priority `
   -MaxConcurrency 10% `
   -MaxError 5
   ```

**nota**  
Si configura una automatización como una tarea registrada a través de las Herramientas de AWS para PowerShell, utilice el parámetro `-Automation_Parameter` para especificar los parámetros que se pasarán a una tarea cuando se ejecute. No utilice el parámetro `-TaskParameters`. El parámetro `-TaskParameters` es un parámetro heredado.  
En el caso de las tareas del periodo de mantenimiento sin un destino especificado, no puede proporcionar valores para `-MaxError` ni `-MaxConcurrency`. En su lugar, el sistema inserta un valor de marcador de posición 1, el cual podría notificarse en la respuesta a los comandos, como `Get-SSMMaintenanceWindowTaskList` y `Get-SSMMaintenanceWindowTask`. Estos valores no afectan la ejecución de la tarea y se pueden ignorar.  
Para obtener información acerca de las tareas del periodo de mantenimiento que no requieren destinos, consulte [Registro de tareas del periodo de mantenimiento sin destinos](maintenance-windows-targetless-tasks.md).

------

   En el siguiente ejemplo, se configura una automatización como una tarea registrada en un periodo de mantenimiento con prioridad 1. También demuestra la omisión de las opciones `--targets`, `--max-errors` y `--max-concurrency` para la tarea de un periodo de mantenimiento sin destino. La automatización utiliza el manual de procedimientos `AWS-StartEC2Instance` y el rol de asunción de Automation especificado para activar instancias EC2 registradas como destinos en el periodo de mantenimiento. El periodo de mantenimiento ejecuta la automatización de manera simultánea en 5 instancias como máximo en cualquier momento. Además, la tarea registrada deja de ejecutarse en más instancias durante un intervalo determinado si el recuento de errores es superior a 1.

------
#### [ Linux & macOS ]

   ```
   aws ssm register-task-with-maintenance-window \
   --window-id mw-0c50858d01EXAMPLE \
   --name StartEC2Instances \
   --task-arn AWS-StartEC2Instance \
   --service-role-arn arn:aws:iam::123456789012:role/MaintenanceWindowRole \
   --task-type AUTOMATION \
   --task-invocation-parameters "{\"Automation\":{\"Parameters\":{\"InstanceId\":[\"{{TARGET_ID}}\"],\"AutomationAssumeRole\":[\"arn:aws:iam::123456789012:role/AutomationAssumeRole\"]}}}" \
   --priority 1
   ```

------
#### [ Windows ]

   ```
   aws ssm register-task-with-maintenance-window ^
   --window-id mw-0c50858d01EXAMPLE ^
   --name StartEC2Instances ^
   --task-arn AWS-StartEC2Instance ^
   --service-role-arn arn:aws:iam::123456789012:role/MaintenanceWindowRole ^
   --task-type AUTOMATION ^
   --task-invocation-parameters "{\"Automation\":{\"Parameters\":{\"InstanceId\":[\"{{TARGET_ID}}\"],\"AutomationAssumeRole\":[\"arn:aws:iam::123456789012:role/AutomationAssumeRole\"]}}}" ^
   --priority 1
   ```

------
#### [ PowerShell ]

   ```
   Register-SSMTaskWithMaintenanceWindow `
   -WindowId mw-0c50858d01EXAMPLE `
   -Name "StartEC2" `
   -TaskArn "AWS-StartEC2Instance" `
   -ServiceRoleArn "arn:aws:iam::123456789012:role/MaintenanceWindowRole" `
   -TaskType "AUTOMATION" `
   -Automation_Parameter @{ "InstanceId"="{{TARGET_ID}}";"AutomationAssumeRole"="arn:aws:iam::123456789012:role/AutomationAssumeRole" } `
   -Priority 1
   ```

------

   El comando devuelve detalles de la nueva tarea registrada similares a los siguientes.

------
#### [ Linux & macOS ]

   ```
   {
   "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE"
   }
   ```

------
#### [ Windows ]

   ```
   {
   "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE"
   }
   ```

------
#### [ PowerShell ]

   ```
   4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE
   ```

------

1. Para ver la tarea registrada, ejecute el siguiente comando. Reemplace *maintenance windows ID* con su propia información.

------
#### [ Linux & macOS ]

   ```
   aws ssm describe-maintenance-window-tasks \
   --window-id maintenance window ID
   ```

------
#### [ Windows ]

   ```
   aws ssm describe-maintenance-window-tasks ^
   --window-id maintenance window ID
   ```

------
#### [ PowerShell ]

   ```
   Get-SSMMaintenanceWindowTaskList `
   -WindowId maintenance window ID
   ```

------

   El sistema devuelve información similar a la siguiente.

------
#### [ Linux & macOS ]

   ```
   {
   "Tasks": [
       {
           "ServiceRoleArn": "arn:aws:iam::123456789012:role/MaintenanceWindowRole",
           "MaxErrors": "1",
           "TaskArn": "AWS-StartEC2Instance",
           "MaxConcurrency": "1",
           "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
           "TaskParameters": {},
           "Priority": 1,
           "WindowId": "mw-0c50858d01EXAMPLE",
           "Type": "AUTOMATION",
           "Targets": [
           ],
           "Name": "StartEC2"
       }
   ]
   }
   ```

------
#### [ Windows ]

   ```
   {
   "Tasks": [
       {
           "ServiceRoleArn": "arn:aws:iam::123456789012:role/MaintenanceWindowRole",
           "MaxErrors": "1",
           "TaskArn": "AWS-StartEC2Instance",
           "MaxConcurrency": "1",
           "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
           "TaskParameters": {},
           "Priority": 1,
           "WindowId": "mw-0c50858d01EXAMPLE",
           "Type": "AUTOMATION",
           "Targets": [
           ],
           "Name": "StartEC2"
       }
   ]
   }
   ```

------
#### [ PowerShell ]

   ```
   Description    : 
   LoggingInfo    : 
   MaxConcurrency : 5
   MaxErrors      : 1
   Name           : StartEC2
   Priority       : 1
   ServiceRoleArn : arn:aws:iam::123456789012:role/MaintenanceWindowRole
   Targets        : {}
   TaskArn        : AWS-StartEC2Instance
   TaskParameters : {}
   Type           : AUTOMATION
   WindowId       : mw-0c50858d01EXAMPLE
   WindowTaskId   : 4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE
   ```

------