

• 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). 

# Trabajo con asociaciones en Systems Manager
<a name="state-manager-associations"></a>

En esta sección se describe cómo crear y administrar las asociaciones de State Manager mediante la consola de AWS Systems Manager, AWS Command Line Interface (AWS CLI) y Herramientas de AWS para PowerShell. 

**Topics**
+ [Cómo comprender los controles de frecuencia y destinos en las asociaciones de State Manager](systems-manager-state-manager-targets-and-rate-controls.md)
+ [Cómo crear asociaciones](state-manager-associations-creating.md)
+ [Cómo editar y crear una nueva versión de una asociación](state-manager-associations-edit.md)
+ [Eliminación de una asociación](systems-manager-state-manager-delete-association.md)
+ [Ejecución de grupos de Auto Scaling con asociaciones](systems-manager-state-manager-asg.md)
+ [Visualización de los historiales de asociación](state-manager-associations-history.md)
+ [Uso de asociaciones mediante IAM](systems-manager-state-manager-iam.md)

# Cómo comprender los controles de frecuencia y destinos en las asociaciones de State Manager
<a name="systems-manager-state-manager-targets-and-rate-controls"></a>

Este tema describe las características de State Manager que lo ayudan a implementar una asociación en decenas o cientos de nodos mientras controla la cantidad de nodos que ejecutan la asociación a la hora programada. State Manager es una herramienta de AWS Systems Manager.

## Cómo utilizar destinos
<a name="systems-manager-state-manager-targets-and-rate-controls-about-targets"></a>

Cuando crea una asociación de State Manager, usted elige los nodos que desea configurar con la asociación en la sección **Targets** (Destinos) de la consola de Systems Manager, como se muestra aquí.

![\[Diferentes opciones para establecer el destino de los nodos al momento de crear una asociación de State Manager\]](http://docs.aws.amazon.com/es_es/systems-manager/latest/userguide/images/state-manager-targets.png)


Si crea una asociación mediante una herramienta de línea de comandos como la AWS Command Line Interface (AWS CLI), especifique el parámetro `targets`. La definición del destino de los nodos le permite configurar decenas, cientos o miles de nodos con una asociación sin tener que especificar ni elegir ID de nodo individuales. 

Cada nodo administrado puede ser el objetivo de un máximo de 20 asociaciones.

State Manager incluye las siguientes opciones de destino al crear una asociación.

**Specify tags (Especificar etiquetas)**  
Utilice esta opción para especificar una clave de etiqueta y (opcionalmente) un valor de etiqueta asignado a los nodos. Al ejecutar la solicitud, el sistema localiza e intenta crear la asociación en todos los nodos que coinciden con la clave y el valor de etiqueta especificados. Si ha especificado varios valores de etiquetas, la asociación se dirige hacia cualquier nodo con al menos uno de esos valores de etiquetas. Cuando el sistema crea inicialmente la asociación, la ejecuta. Después de esta ejecución inicial, el sistema ejecuta la asociación de acuerdo con la programación especificada.

Si crea nuevos nodos y asigna la clave y el valor de etiqueta especificados a esos nodos, el sistema aplica automáticamente la asociación, la ejecuta inmediatamente y, a continuación, la ejecuta de acuerdo con la programación. Esto se aplica cuando la asociación utiliza un documento de comando o política y no se aplica si la asociación utiliza un manual de procedimientos de Automation. Si elimina las etiquetas especificadas de un nodo, el sistema dejará de ejecutar la asociación en esos nodos.

**nota**  
Si usa manuales de procedimiento de automatización con State Manager y la limitación de etiquetado le impide alcanzar un objetivo específico, considere usar manuales de procedimiento de automatización con Amazon EventBridge. Para obtener más información, consulte [Ejecución de automatizaciones a partir de eventos EventBridge](running-automations-event-bridge.md). Para obtener información acerca del uso de State Manager con manuales de procedimientos de Automation, consulte [Programación de automatizaciones con asociaciones de State Manager](scheduling-automations-state-manager-associations.md). 

Como práctica recomendada, recomendamos usar etiquetas al crear asociaciones que usen un documento de comando o de política. También recomendamos usar etiquetas al crear asociaciones para ejecutar grupos de escalado automático. Para obtener más información, consulte [Ejecución de grupos de Auto Scaling con asociaciones](systems-manager-state-manager-asg.md).

**nota**  
Observe la siguiente información.  
Al crear una asociación en la Consola de administración de AWS que se dirija a nodos mediante etiquetas, solo puede especificar una clave de etiqueta para una asociación de automatización y cinco claves de etiqueta para una asociación de comandos. *Todas* las claves de etiqueta especificadas en la asociación deben estar asignadas actualmente al nodo. Si no lo están, State Manager no se dirige al nodo para establecer una asociación.
Si quiere usar la consola *y* desea dirigirse a sus nodos mediante más de una clave de etiqueta para una asociación de automatización y cinco claves de etiqueta para una asociación de comando, asigne las claves de etiqueta a un grupo de Grupos de recursos de AWS y agréguele los nodos. A continuación, puede elegir la opción **Grupo de recursos** en la lista de **objetivos** al crear la asociación con State Manager.
Puede especificar un máximo de cinco claves de etiqueta mediante AWS CLI. Si utiliza las AWS CLI, *todas* las claves de etiqueta especificadas en el comando `create-association` deben estar asignadas actualmente al nodo. Si no lo están, State Manager no se dirige al nodo para establecer una asociación.

**Cómo elegir los nodos manualmente**  
Utilice esta opción para seleccionar manualmente los nodos en los que desea crear la asociación. El panel **Instances** (Instancias) muestra todos los nodos administrados de Systems Manager de la Cuenta de AWS y Región de AWS actuales. Puede seleccionar manualmente tantos nodos como desee. Cuando el sistema crea inicialmente la asociación, la ejecuta. Después de esta ejecución inicial, el sistema ejecuta la asociación de acuerdo con la programación especificada.

**nota**  
Si un nodo administrado que espera ver no aparece en la lista, consulte [Solución de problemas de disponibilidad de nodos administrados](fleet-manager-troubleshooting-managed-nodes.md) para obtener consejos de solución de problemas.

**Cómo elegir un grupo de recursos**  
Utilice esta opción para crear una asociación en todos los nodos devueltos por una consulta de Grupos de recursos de AWS basada en etiquetas o por una consulta de AWS CloudFormation basada en la pila. 

A continuación, puede encontrar detalles acerca del establecimiento del destino de grupos de recursos para una asociación.
+ Si agrega nuevos nodos a un grupo, el sistema asigna automáticamente los nodos a la asociación que segmenta el grupo de recursos. El sistema aplica la asociación a los nodos cuando detecta el cambio. Después de esta ejecución inicial, el sistema ejecuta la asociación de acuerdo con la programación especificada.
+ Si crea una asociación dirigida a un grupo de recursos y el tipo de recurso `AWS::SSM::ManagedInstance` se especificó para ese grupo y, por diseño, la asociación se ejecuta en instancias de Amazon Elastic Compute Cloud (Amazon EC2) y nodos que no sean de EC2 en un entorno [híbrido y multinube](operating-systems-and-machine-types.md#supported-machine-types).

  Y viceversa. Si crea una asociación dirigida a un grupo de recursos y el tipo de recurso `AWS::EC2::Instance` se especificó para ese grupo y, por diseño, la asociación se ejecuta en instancias (Amazon EC2) y nodos que no sean de EC2 en un entorno [híbrido y multinube](operating-systems-and-machine-types.md#supported-machine-types).
+ Si crea una asociación que se dirige a un grupo de recursos, ese grupo de recursos no debe tener asignadas más de cinco claves de etiqueta o más de cinco valores especificados para cualquier clave de etiqueta individual. Si se da cualquiera de estas condiciones en las etiquetas y claves asignadas al grupo de recursos, la asociación no se ejecuta y devuelve un error `InvalidTarget`. 
+ Si crea una asociación que se dirige a un grupo de recursos mediante etiquetas, no puede elegir la opción **(valor vacío)** para el valor de la etiqueta.
+ Si elimina un grupo de recursos, todas las instancias de ese grupo dejarán de ejecutar la asociación. Como práctica recomendada, elimine las asociaciones que establece el destino del grupo.
+ Como máximo, puede definir el destino de un único grupo de recursos para una asociación. No se admiten grupos múltiples o anidados.
+ Después de crear una asociación, State Manager actualiza periódicamente la asociación con información sobre los recursos del grupo de recursos. Si agrega nuevos recursos a un grupo de recursos, la programación que indica cuándo el sistema aplica la asociación a los nuevos recursos depende de varios factores. Puede determinar el estado de la asociación en la página de State Manager de la consola de Systems Manager.

**aviso**  
Un usuario, grupo o rol de AWS Identity and Access Management (IAM) con permiso para crear una asociación que establece el destino de un grupo de recursos de instancias de Amazon EC2 tiene automáticamente control de nivel de raíz de todas las instancias del grupo. Solo se debe permitir a los administradores de confianza crear asociaciones. 

Para obtener más información acerca de Resource Groups, consulte [¿Qué es Grupos de recursos de AWS?](https://docs.aws.amazon.com/ARG/latest/userguide/) en la *Guía del usuario de Grupos de recursos de AWS*.

**Choose all nodes (Elegir todos los nodos)**  
Utilice esta opción para definir el destino de todos los nodos de la Cuenta de AWS y Región de AWS actuales. Cuando ejecuta la solicitud, el sistema localiza e intenta crear la asociación en todos los nodos de la Cuenta de AWS y Región de AWS actuales. Cuando el sistema crea inicialmente la asociación, la ejecuta. Después de esta ejecución inicial, el sistema ejecuta la asociación de acuerdo con la programación especificada. Si crea nuevos nodos, el sistema aplica automáticamente la asociación, la ejecuta inmediatamente y, a continuación, la ejecuta de acuerdo con la programación.

## Cómo utilizar controles de velocidad
<a name="systems-manager-state-manager-targets-and-rate-controls-about-controls"></a>

Puede controlar la ejecución de una asociación en los nodos especificando un valor de simultaneidad y un umbral de error. El valor de simultaneidad especifica cuántos nodos pueden ejecutar la asociación a la vez. Un umbral de error especifica cuántas ejecuciones de asociaciones pueden producir un error antes de que Systems Manager envíe un comando a cada nodo configurado con esa asociación para detener su ejecución. El comando deja de ejecutar la asociación hasta la próxima ejecución programada. Las características de umbral de simultaneidad y error se denominan colectivamente *controles de frecuencia*. 

![\[Diferentes opciones de control de velocidad al momento de crear una asociación de State Manager\]](http://docs.aws.amazon.com/es_es/systems-manager/latest/userguide/images/state-manager-rate-controls.png)


**Simultaneidad**  
La simultaneidad ayuda a limitar el impacto en los nodos al permitirle especificar que solo un determinado número de nodos pueden procesar una asociación a la vez. Puede especificar un número absoluto de nodos, por ejemplo 20, o un porcentaje del conjunto de nodos de destino, por ejemplo, 10 %.

La simultaneidad de State Manager tiene las siguientes restricciones y limitaciones:
+ Si decide crear una asociación mediante el uso de destinos, pero no quiere especificar un valor de simultaneidad, State Manager fuerza automáticamente una simultaneidad máxima de 50 nodos.
+ Si los nodos nuevos que coinciden con los criterios de destino se conectan al mismo tiempo que se ejecuta una asociación que utiliza simultaneidad, los nuevos nodos ejecutarán la asociación si no se supera el valor de simultaneidad. Si el valor de simultaneidad se supera, los nodos se pasan por alto durante el intervalo de ejecución de la asociación actual. Los nodos ejecutarán la asociación durante el siguiente intervalo programado si cumplen los requisitos de simultaneidad.
+ Si actualiza una asociación que utiliza la simultaneidad y uno o varios nodos están procesando esa asociación cuando se actualiza, entonces se podrá completar cualquier nodo que esté ejecutando la asociación. Aquellas asociaciones que no se hayan iniciado se detienen. Después de finalizar la ejecución de las asociaciones, todos los nodos de destino ejecutarán inmediatamente la asociación de nuevo, ya que se ha actualizado. Cuando la asociación se ejecuta de nuevo, el valor de simultaneidad se aplica. 

**Umbrales de error**  
Un umbral de error especifica cuántas ejecuciones de asociaciones pueden fallar antes de que Systems Manager envíe un comando a cada nodo configurado con esa asociación. El comando deja de ejecutar la asociación hasta la próxima ejecución programada. Puede especificar un número absoluto de errores, por ejemplo, 10 o un porcentaje del destino definido, por ejemplo, el 10 %.

Si especifica un número absoluto de tres errores, por ejemplo, State Manager envía el comando de detención cuando se devuelve el cuarto error. Si se especifica 0, State Manager envía el comando de detención tras el primer resultado de error que se devuelva.

Si especifica un umbral de error del 10 % para 50 asociaciones, State Manager envía el comando de detención cuando se devuelve el sexto error. Las asociaciones que ya se están ejecutando cuando se alcanza un umbral de errores tienen permiso para completarse, pero algunas de ellas también pueden generar un error. Para asegurarse de que no haya más errores que el número especificado para el umbral de error, establezca el valor de **Concurrency (Simultaneidad)** en 1 de modo que las asociaciones sigan procesándose de una en una. 

State ManagerLos umbrales de error de tienen en cuenta las siguientes restricciones y limitaciones:
+ Los umbrales de error se aplican para el intervalo actual.
+ La información sobre cada error, incluidos los detalles de nivel de paso, se registran en el historial de asociaciones.
+ Si decide crear una asociación mediante el uso de destinos, pero no quiere especificar un umbral de error, State Manager forzará automáticamente un umbral de error del 100 %.

# Cómo crear asociaciones
<a name="state-manager-associations-creating"></a>

State Manager, una herramienta de AWS Systems Manager, lo ayuda a mantener los recursos de AWS en el estado que defina y a reducir la desviación de la configuración. Para ello, State Manager utiliza asociaciones. Una *asociación* es una configuración que asigna a los recursos de AWS. La configuración define el estado que desea mantener en los recursos. Por ejemplo, una asociación puede especificar que el software antivirus debe estar instalado y ejecutándose en un nodo administrado, o bien que determinados puertos deben estar cerrados.

Una asociación especifica una programación del momento en que aplicar la configuración y los destinos para la asociación. Por ejemplo, una asociación para software antivirus puede ejecutarse una vez al día en todos los nodos administrados de una Cuenta de AWS. Si el software no está instalado en un nodo, la asociación podría exigir a State Manager que lo instale. Si el software está instalado, pero el servicio no se está ejecutando, la asociación podría exigir a State Manager que inicie el servicio.

**aviso**  
Al crear una asociación, puede elegir un grupo de recursos de AWS de nodos administrados como destino de la asociación. Si un usuario, grupo o rol de AWS Identity and Access Management (IAM) que tiene permiso para crear una asociación que establece el destino de un grupo de recursos de nodos administrados, dicho usuario, grupo o rol tiene automáticamente control de nivel de raíz de todos los nodos del grupo. Solo se permite a los administradores de confianza crear asociaciones. 

**Objetivos de asociación y controles de tasas**  
Una asociación especifica qué nodos administrados, o destinos, deben recibir la asociación. State Manager incluye varias características para ayudarlo a definir el destino de los nodos administrados y controlar cómo se implementa la asociación en esos destinos. Para obtener más información acerca de los controles de velocidad y destinos, consulte [Cómo comprender los controles de frecuencia y destinos en las asociaciones de State Manager](systems-manager-state-manager-targets-and-rate-controls.md).

**Cómo etiquetar asociaciones**  
Puede asignar etiquetas a una asociación al crearla mediante una herramienta de línea de comandos como la AWS CLI o Herramientas de AWS para PowerShell. No se admite agregar etiquetas a una asociación mediante la consola de Systems Manager. 

**Cómo correr asociaciones**  
De forma predeterminada, State Manager ejecuta una asociación inmediatamente después de crearla y, a continuación, según la programación que haya definido. 

El sistema también ejecuta asociaciones de acuerdo con las siguientes reglas:
+ State Manager intenta ejecutar la asociación en todos los nodos de destino o especificados durante un intervalo.
+ Si una asociación no se ejecuta durante un intervalo (porque, por ejemplo, un valor de simultaneidad limita el número de nodos que podría procesar la asociación simultáneamente), State Manager intenta ejecutar la asociación durante el intervalo siguiente.
+ State Manager ejecuta la asociación después de realizar cambios en la configuración, los nodos de destino, los documentos o los parámetros de la asociación. Para obtener más información, consulte [Cómo saber cuándo se aplican las asociaciones a los recursos](state-manager-about.md#state-manager-about-scheduling)
+ State Manager registra el historial de todos los intervalos omitidos. Puede ver el historial en la pestaña **Execution History (Historial de ejecución)**.

## Asociaciones de programación
<a name="state-manager-about-creating-associations"></a>

Puede programar las asociaciones para que se ejecuten a intervalos básicos, por ejemplo, *cada 10 horas*, o puede crear programaciones más avanzadas mediante expresiones de frecuencia y cron personalizadas. También puede impedir que las asociaciones se ejecuten al crearlas por primera vez. 

**Cómo utilizar las expresiones cron y rate para programar ejecuciones de asociaciones**  
Además de las expresiones estándar de cron y rate, State Manager también admite expresiones de cron que incluyen un día de la semana y el signo de número (\$1) para designar el *n* día de un mes para ejecutar una asociación. A continuación, se incluye un ejemplo en el que se ejecuta una programación cron el tercer martes de cada mes a las 23.30 h UTC:

`cron(30 23 ? * TUE#3 *)`

A continuación, se incluye un ejemplo que se ejecuta el segundo jueves de cada mes a medianoche (UTC):

`cron(0 0 ? * THU#2 *)`

State Manager también admite el signo (L) para indicar el último día *X* del mes. A continuación, se incluye un ejemplo en el que se ejecuta una programación cron el último martes de cada mes a medianoche (UTC):

`cron(0 0 ? * 3L *)`

Para tener un mayor control sobre el momento en el que se ejecuta una asociación, por ejemplo, si desea ejecutar una asociación dos días después de la revisión del martes, puede especificar un desplazamiento. Un *desplazamiento* define los días que hay que esperar después del día programado para ejecutar una asociación. Por ejemplo, si especificó una programación cron de `cron(0 0 ? * THU#2 *)`, puede especificar el número 3 en el campo **Desplazamiento de programación** para ejecutar la asociación cada domingo después del segundo jueves del mes.

**nota**  
Para utilizar los desplazamientos, seleccione **Aplicar la asociación solo en el siguiente intervalo Cron especificado** en la consola o especifique el parámetro `ApplyOnlyAtCronInterval` desde la línea de comandos. Cuando cualquiera de estas opciones está activada, State Manager no ejecuta la asociación inmediatamente después de crearla.

Para obtener más información acerca de las expresiones Cron y Rate, consulte [Referencia: expresiones cron y rate para Systems Manager](reference-cron-and-rate-expressions.md).

## Cómo crear una asociación (consola)
<a name="state-manager-associations-console"></a>

El siguiente procedimiento describe cómo utilizar la consola de Systems Manager para crear una asociación de State Manager.

**nota**  
Observe la siguiente información.  
Este procedimiento describe cómo crear una asociación que utilice un documento `Command` o un documento `Policy` para dirigirse a nodos administrados. Para obtener información sobre cómo crear una asociación que utilice un manual de ejecución de Automation para dirigirse a nodos u otros tipos de recursos de AWS, consulte [Programación de automatizaciones con asociaciones de State Manager](scheduling-automations-state-manager-associations.md).
Al crear una asociación, puede especificar un máximo de cinco claves de etiqueta mediante la Consola de administración de AWS. *Todas* las claves de etiqueta especificadas para la asociación deben estar asignadas actualmente al nodo. Si no lo están, State Manager no se dirige al nodo para establecer la asociación.

**Cómo crear una asociación de State Manager**

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, elija **State Manager**.

1. Elija **Crear asociación**.

1. Escriba un nombre en el campo **Nombre**.

1. En la lista **Document (Documento)**, elija la opción junto al nombre de un documento. Observe el tipo de documento. Este procedimiento se aplica a los documentos `Command` y `Policy`. Para obtener información acerca de cómo crear una asociación que utiliza un manual de procedimientos de Automation, consulte [Programación de automatizaciones con asociaciones de State Manager](scheduling-automations-state-manager-associations.md).
**importante**  
State Manager no admite la ejecución de asociaciones que utilizan una nueva versión de un documento si dicho documento se comparte desde otra cuenta. State Manager siempre ejecuta la versión `default` de un documento si se comparte desde otra cuenta, aunque la consola de Systems Manager muestra que se procesó una versión nueva. Si desea ejecutar una asociación con una versión nueva de un documento compartido desde otra cuenta, debe establecer la versión del documento en `default`.

1. En **Parameters (Parámetros)**, especifique los parámetros de entrada requeridos.

1. (Opcional) En **Rol de asunción para la ejecución de asociaciones**, seleccione un rol en el menú desplegable. State Manager realizará acciones mediante el uso de este rol en su nombre. Para obtener más información sobre la configuración del rol proporcionado personalizado, consulte [Configuración de roles para `AssociationDispatchAssumeRole`](state-manager-about.md#setup-assume-role). 
**nota**  
Se recomienda que defina un rol de IAM personalizado para tener el control total sobre los permisos que dispone State Manager a la hora de realizar acciones en su nombre.  
La compatibilidad de los roles vinculados a servicios en State Manager se está eliminando gradualmente. Es posible que las asociaciones que dependen de un rol vinculado al servicio necesiten actualizaciones en el futuro para seguir funcionando correctamente.  
Para obtener información sobre cómo administrar el uso del rol proporcionado personalizado, consulte [Administración del uso de AssociationDispatchAssumeRole con `ssm:AssociationDispatchAssumeRole`](state-manager-about.md#context-key-assume-role).

1. (Opcional) Elija una alarma de CloudWatch para aplicarla a la asociación de monitoreo. 
**nota**  
Tenga en cuenta la siguiente información sobre este paso.  
La lista de alarmas muestra un máximo de 100 alarmas. Si no ve su alarma en la lista, utilice la AWS Command Line Interface para crear la asociación. Para obtener más información, consulte [Cómo rear una asociación (línea de comandos)](#create-state-manager-association-commandline).
Para adjuntar una alarma de CloudWatch a su comando, la entidad principal de IAM que crea la asociación debe tener permiso para la acción `iam:createServiceLinkedRole`. Para obtener más información sobre las alarmas de CloudWatch, consulte [Uso de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html).
Tenga en cuenta que si la alarma se activa, no se ejecutarán automatizaciones o invocaciones de comandos pendiente.

1. En **Targets (Destinos)**, elija una opción. Para obtener más información acerca del uso de los destinos, consulte [Cómo comprender los controles de frecuencia y destinos en las asociaciones de State Manager](systems-manager-state-manager-targets-and-rate-controls.md).
**nota**  
Para que las asociaciones que se crean con los manuales de procedimientos de Automatización se apliquen cuando se detecten nuevos nodos de destino, se deben cumplir algunas condiciones. Para obtener más información, consulte [Acerca de las actualizaciones de destino con los manuales de procedimientos de Automatización](state-manager-about.md#runbook-target-updates).

1. En la sección **Specify schedule (Especificar programación)**, elija **On Schedule (De forma programada)** o **No schedule (Sin programación)**. Si elige **On Schedule (De forma programada)**, utilice los botones proporcionados para crear una programación Cron o Rate para la asociación. 

   Si no desea que una asociación se ejecute inmediatamente después de crearla, elija **Aplicar la asociación solo en el siguiente intervalo cron especificado**.

1. (Opcional) En el campo **Schedule offset** (Desplazamiento de la programación), especifique un número comprendido entre 1 y 6. 

1. En la sección **Advanced options** (Opciones avanzadas), seleccione la opción **Compliance severity** (Severidad de la conformidad) para elegir un nivel de severidad para la asociación y utilice **Change Calendars** (Calendarios de cambios) para elegir un calendario de cambios para la asociación.

   Los informes de conformidad indican si el estado de asociación es conforme o no conforme, junto con el nivel de gravedad que se indique aquí. Para obtener más información, consulte [Acerca de la conformidad de las asociaciones de State Manager](compliance-about.md#compliance-about-association).

   El calendario de cambios determina cuándo se ejecuta la asociación. Si el calendario está cerrado, la asociación no se aplica. Si el calendario está abierto, la asociación se ejecuta en consecuencia. Para obtener más información, consulte [AWS Systems Manager Change Calendar](systems-manager-change-calendar.md).

1. En la sección **Rate control** (Control de velocidad), elija las opciones para controlar cómo se ejecuta la asociación en varios nodos. Para obtener más información sobre el uso de controles de velocidad, consulte [Cómo comprender los controles de frecuencia y destinos en las asociaciones de State Manager](systems-manager-state-manager-targets-and-rate-controls.md).

   En la sección **Simultaneidad**, elija una opción: 
   + Elija **Targets (Destinos)** para introducir un número absoluto de destinos que pueda ejecutar la asociación de forma simultánea.
   + Elija **porcentaje** para introducir un porcentaje del destino definido que puede ejecutar la asociación de forma simultánea.

   En la sección **Umbral de error**, elija una opción:
   + Elija **errors (errores)** para especificar un número absoluto de errores permitidos antes de que State Manager deje de ejecutar asociaciones en más destinos.
   + Elija **percentage (porcentaje)** para especificar un porcentaje de errores permitidos antes de que State Manager deje de ejecutar asociaciones en más destinos.

1. (Opcional) En **Output options (Opciones de salida)**, para guardar la salida del comando en un archivo, seleccione el cuadro **Enable writing output to S3 (Permitir la escritura de salida en S3)**. Ingrese los nombres del bucket y del prefijo (carpeta) en los cuadros.
**nota**  
Los permisos de S3 que conceden la capacidad de escribir datos en un bucket de S3 son los del perfil de instancias asignado al nodo administrado, no los del usuario de IAM que realiza esta tarea. Para obtener más información, consulte [Configuración de permisos de instancia requeridos para Systems Manager](setup-instance-permissions.md) o [Creación de un rol de servicio de IAM para un entorno híbrido](hybrid-multicloud-service-role.md). Además, si el bucket de S3 especificado se encuentra en una Cuenta de AWS diferente, verifique que el perfil de instancias o el rol de servicio de IAM asociado al nodo administrado tenga los permisos necesarios para escribir en ese bucket.

   A continuación, se presentan los permisos mínimos necesarios para activar la salida de Amazon S3 para una asociación. Puede restringir aún más el acceso al adjuntar políticas de IAM a usuarios o roles dentro de una cuenta. Como mínimo, un perfil de instancias de Amazon EC2 debe tener un rol de IAM con la política administrada `AmazonSSMManagedInstanceCore` y la siguiente política insertada. 

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "s3:PutObject",
                   "s3:GetObject",
                   "s3:PutObjectAcl"
               ],
               "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*"
           }
       ]
   }
   ```

------

   Para obtener permisos mínimos, el bucket de Amazon S3 que exporte debe tener la configuración predeterminada definida por la consola de Amazon S3. Para obtener más información acerca de la creación de buckets de Amazon S3, consulte la sección [Creación de un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) en la *Guía del usuario de Amazon S3*. 
**nota**  
Las operaciones de la API que inicia el documento SSM durante la ejecución de una asociación no se registran en AWS CloudTrail.

1. Elija **Crear asociación**.

**nota**  
Si elimina la asociación creada, la asociación ya no se ejecutará en ningún destino de dicha asociación.

## Cómo rear una asociación (línea de comandos)
<a name="create-state-manager-association-commandline"></a>

En el siguiente procedimiento, se describe cómo utilizar la AWS CLI (en Linux o Windows Server) o Tools for PowerShell para crear una asociación de State Manager. Esta sección incluye varios ejemplos que muestran cómo utilizar los controles de velocidad y destinos. Los controles de velocidad y destinos le permiten asignar una asociación a decenas o cientos de nodos mientras controla la ejecución de esas asociaciones. Para obtener más información acerca de los controles de velocidad y destinos, consulte [Cómo comprender los controles de frecuencia y destinos en las asociaciones de State Manager](systems-manager-state-manager-targets-and-rate-controls.md).

**importante**  
Este procedimiento describe cómo crear una asociación que utilice un documento `Command` o un documento `Policy` para dirigirse a nodos administrados. Para obtener información sobre cómo crear una asociación que utilice un manual de ejecución de Automation para dirigirse a nodos u otros tipos de recursos de AWS, consulte [Programación de automatizaciones con asociaciones de State Manager](scheduling-automations-state-manager-associations.md).

**Antes de empezar**  
El parámetro `targets` es una matriz de criterios de búsqueda que establece el destino de los nodos mediante la combinación de `Key` y `Value` que especifique. Si tiene previsto crear una asociación en decenas o cientos de nodos mediante el parámetro `targets`, revise las siguientes opciones de establecimiento de destino antes de comenzar el procedimiento.

Direccione los nodos específicos mediante la definición de ID

```
--targets Key=InstanceIds,Values=instance-id-1,instance-id-2,instance-id-3
```

```
--targets Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE,i-07782c72faEXAMPLE
```

Establecer el destino de las instancias mediante etiquetas de 

```
--targets Key=tag:tag-key,Values=tag-value-1,tag-value-2,tag-value-3
```

```
--targets Key=tag:Environment,Values=Development,Test,Pre-production
```

Direccione los nodos mediante Grupos de recursos de AWS

```
--targets Key=resource-groups:Name,Values=resource-group-name
```

```
--targets Key=resource-groups:Name,Values=WindowsInstancesGroup
```

Direccione todas las instancias de la Cuenta de AWS y la Región de AWS actuales

```
--targets Key=InstanceIds,Values=*
```

**nota**  
Observe la siguiente información.  
State Manager no admite la ejecución de asociaciones que utilizan una nueva versión de un documento si dicho documento se comparte desde otra cuenta. State Manager siempre ejecuta la versión `default` de un documento si se comparte desde otra cuenta, aunque la consola de Systems Manager muestra que se procesó una versión nueva. Si desea ejecutar una asociación con una versión nueva de un documento compartido desde otra cuenta, debe configurar la versión del documento en `default`.
State Manager no admite los parámetros `IncludeChildOrganizationUnits`, `ExcludeAccounts`, `TargetsMaxErrors`, `TargetsMaxConcurrency`, `Targets` ni `TargetLocationAlarmConfiguration` para [TargetLocation](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_TargetLocation.html).
Puede especificar un máximo de cinco claves de etiqueta mediante AWS CLI. Si utiliza las AWS CLI, *todas* las claves de etiqueta especificadas en el comando `create-association` deben estar asignadas actualmente al nodo. Si no lo están, State Manager no se dirige al nodo para establecer una asociación.
Al crear una asociación, especifica cuándo se ejecuta el programa. Especifique el programa mediante una expresión Cron o Rate. Para obtener más información acerca de las expresiones Cron y Rate, consulte [Expresiones cron y rate para asociaciones](reference-cron-and-rate-expressions.md#reference-cron-and-rate-expressions-association).
Para que las asociaciones que se crean con los manuales de procedimientos de Automatización se apliquen cuando se detecten nuevos nodos de destino, se deben cumplir algunas condiciones. Para obtener más información, consulte [Acerca de las actualizaciones de destino con los manuales de procedimientos de Automatización](state-manager-about.md#runbook-target-updates).

**Cómo crear una asociación**

1. Si aún no lo ha hecho, instale y configure la AWS CLI o 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. Utilice el formato siguiente para crear un comando que crea una asociación de State Manager. Reemplace cada *example resource placeholder* con su propia información.

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

   ```
   aws ssm create-association \
       --name document_name \
       --document-version version_of_document_applied \
       --instance-id instances_to_apply_association_on \
       --parameters (if any) \
       --targets target_options \
       --association-dispatch-assume-role arn_of_role_to_be_used_when_dispatching_configurations \
       --schedule-expression "cron_or_rate_expression" \
       --apply-only-at-cron-interval required_parameter_for_schedule_offsets \
       --schedule-offset number_between_1_and_6 \
       --output-location s3_bucket_to_store_output_details \
       --association-name association_name \
       --max-errors a_number_of_errors_or_a_percentage_of_target_set \
       --max-concurrency a_number_of_instances_or_a_percentage_of_target_set \
       --compliance-severity severity_level \
       --calendar-names change_calendar_names \
       --target-locations aws_region_or_account \
       --tags "Key=tag_key,Value=tag_value"
   ```

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

   ```
   aws ssm create-association ^
       --name document_name ^
       --document-version version_of_document_applied ^
       --instance-id instances_to_apply_association_on ^
       --parameters (if any) ^
       --targets target_options ^
       --association-dispatch-assume-role arn_of_role_to_be_used_when_dispatching_configurations ^
       --schedule-expression "cron_or_rate_expression" ^
       --apply-only-at-cron-interval required_parameter_for_schedule_offsets ^
       --schedule-offset number_between_1_and_6 ^
       --output-location s3_bucket_to_store_output_details ^
       --association-name association_name ^
       --max-errors a_number_of_errors_or_a_percentage_of_target_set ^
       --max-concurrency a_number_of_instances_or_a_percentage_of_target_set ^
       --compliance-severity severity_level ^
       --calendar-names change_calendar_names ^
       --target-locations aws_region_or_account ^
       --tags "Key=tag_key,Value=tag_value"
   ```

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

   ```
   New-SSMAssociation `
       -Name document_name `
       -DocumentVersion version_of_document_applied `
       -InstanceId instances_to_apply_association_on `
       -Parameters (if any) `
       -Target target_options `
       -AssociationDispatchAssumeRole arn_of_role_to_be_used_when_dispatching_configurations `
       -ScheduleExpression "cron_or_rate_expression" `
       -ApplyOnlyAtCronInterval required_parameter_for_schedule_offsets `
       -ScheduleOffSet number_between_1_and_6 `
       -OutputLocation s3_bucket_to_store_output_details `
       -AssociationName association_name `
       -MaxError  a_number_of_errors_or_a_percentage_of_target_set
       -MaxConcurrency a_number_of_instances_or_a_percentage_of_target_set `
       -ComplianceSeverity severity_level `
       -CalendarNames change_calendar_names `
       -TargetLocations aws_region_or_account `
       -Tags "Key=tag_key,Value=tag_value"
   ```

------

   En el siguiente ejemplo se crea una asociación en los nodos etiquetados con `"Environment,Linux"`. La asociación utiliza el documento `AWS-UpdateSSMAgent` para actualizar SSM Agent en los nodos de destino a las 2:00 h UTC todos los domingos por la mañana. Esta asociación se ejecuta de forma simultánea en un máximo de 10 nodos en cualquier momento. Además, esta asociación deja de ejecutarse en más nodos durante un intervalo de ejecución determinado si el recuento de errores es superior a 5. Para los informes de conformidad, a esta asociación se le asigna un nivel de gravedad medio.

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

   ```
   aws ssm create-association \
     --association-name Update_SSM_Agent_Linux \
     --targets Key=tag:Environment,Values=Linux \
     --name AWS-UpdateSSMAgent  \
     --association-dispatch-assume-role arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole \
     --compliance-severity "MEDIUM" \
     --schedule-expression "cron(0 2 ? * SUN *)" \
     --max-errors "5" \
     --max-concurrency "10"
   ```

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

   ```
   aws ssm create-association ^
     --association-name Update_SSM_Agent_Linux ^
     --targets Key=tag:Environment,Values=Linux ^
     --name AWS-UpdateSSMAgent  ^
     --association-dispatch-assume-role arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole ^
     --compliance-severity "MEDIUM" ^
     --schedule-expression "cron(0 2 ? * SUN *)" ^
     --max-errors "5" ^
     --max-concurrency "10"
   ```

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

   ```
   New-SSMAssociation `
     -AssociationName Update_SSM_Agent_Linux `
     -Name AWS-UpdateSSMAgent `
     -AssociationDispatchAssumeRole "arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole" `
     -Target @{
         "Key"="tag:Environment"
         "Values"="Linux"
       } `
     -ComplianceSeverity MEDIUM `
     -ScheduleExpression "cron(0 2 ? * SUN *)" `
     -MaxConcurrency 10 `
     -MaxError 5
   ```

------

   El ejemplo siguiente se dirige a los ID de nodo mediante la especificación de un valor de comodín (\$1). Esto permite que Systems Manager cree una asociación en *todos* los nodos de la Cuenta de AWS y Región de AWS actuales. Esta asociación se ejecuta de forma simultánea en un máximo de 10 nodos en cualquier momento. Además, esta asociación deja de ejecutarse en más nodos durante un intervalo de ejecución determinado si el recuento de errores es superior a 5. Para los informes de conformidad, a esta asociación se le asigna un nivel de gravedad medio. Esta asociación utiliza un desplazamiento de programación, lo que significa que se ejecuta dos días después de la programación cron especificada. También incluye el parámetro `ApplyOnlyAtCronInterval`, que es necesario para utilizar el desplazamiento de programación, lo que significa que la asociación no se ejecutará inmediatamente después de crearla.

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

   ```
   aws ssm create-association \
     --association-name Update_SSM_Agent_Linux \
     --name "AWS-UpdateSSMAgent" \
     --association-dispatch-assume-role arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole \
     --targets "Key=instanceids,Values=*" \
     --compliance-severity "MEDIUM" \
     --schedule-expression "cron(0 2 ? * SUN#2 *)" \
     --apply-only-at-cron-interval \
     --schedule-offset 2 \
     --max-errors "5" \
     --max-concurrency "10" \
   ```

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

   ```
   aws ssm create-association ^
     --association-name Update_SSM_Agent_Linux ^
     --name "AWS-UpdateSSMAgent" ^
     --association-dispatch-assume-role arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole ^
     --targets "Key=instanceids,Values=*" ^
     --compliance-severity "MEDIUM" ^
     --schedule-expression "cron(0 2 ? * SUN#2 *)" ^
     --apply-only-at-cron-interval ^
     --schedule-offset 2 ^
     --max-errors "5" ^
     --max-concurrency "10" ^
     --apply-only-at-cron-interval
   ```

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

   ```
   New-SSMAssociation `
     -AssociationName Update_SSM_Agent_All `
     -Name AWS-UpdateSSMAgent `
     -AssociationDispatchAssumeRole "arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole" `
     -Target @{
         "Key"="InstanceIds"
         "Values"="*"
       } `
     -ScheduleExpression "cron(0 2 ? * SUN#2 *)" `
     -ApplyOnlyAtCronInterval `
     -ScheduleOffset 2 `
     -MaxConcurrency 10 `
     -MaxError 5 `
     -ComplianceSeverity MEDIUM `
     -ApplyOnlyAtCronInterval
   ```

------

   En el siguiente ejemplo, se crea una asociación en los nodos de Resource Groups. El grupo se denomina "HR-Department". La asociación utiliza el documento `AWS-UpdateSSMAgent` para actualizar SSM Agent en los nodos de destino a las 2:00 h UTC todos los domingos por la mañana. Esta asociación se ejecuta de forma simultánea en un máximo de 10 nodos en cualquier momento. Además, esta asociación deja de ejecutarse en más nodos durante un intervalo de ejecución determinado si el recuento de errores es superior a 5. Para los informes de conformidad, a esta asociación se le asigna un nivel de gravedad medio. Esta asociación se ejecuta en la programación cron especificada. No se ejecuta inmediatamente después de su creación.

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

   ```
   aws ssm create-association \
     --association-name Update_SSM_Agent_Linux \
     --targets Key=resource-groups:Name,Values=HR-Department \
     --name AWS-UpdateSSMAgent  \
     --association-dispatch-assume-role arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole \
     --compliance-severity "MEDIUM" \
     --schedule-expression "cron(0 2 ? * SUN *)" \
     --max-errors "5" \
     --max-concurrency "10" \
     --apply-only-at-cron-interval
   ```

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

   ```
   aws ssm create-association ^
     --association-name Update_SSM_Agent_Linux ^
     --targets Key=resource-groups:Name,Values=HR-Department ^
     --name AWS-UpdateSSMAgent  ^
     -association-dispatch-assume-role arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole ^
     --compliance-severity "MEDIUM" ^
     --schedule-expression "cron(0 2 ? * SUN *)" ^
     --max-errors "5" ^
     --max-concurrency "10" ^
     --apply-only-at-cron-interval
   ```

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

   ```
   New-SSMAssociation `
     -AssociationName Update_SSM_Agent_Linux `
     -Name AWS-UpdateSSMAgent `
     -AssociationDispatchAssumeRole "arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole" `
     -Target @{
         "Key"="resource-groups:Name"
         "Values"="HR-Department"
       } `
     -ScheduleExpression "cron(0 2 ? * SUN *)" `
     -MaxConcurrency 10 `
     -MaxError 5 `
     -ComplianceSeverity MEDIUM `
     -ApplyOnlyAtCronInterval
   ```

------

   En el siguiente ejemplo, se crea una asociación que se ejecuta en nodos etiquetados con un ID de nodo específico. La asociación utiliza el documento de SSM Agent para actualizar SSM Agent en los nodos de destino una vez cuando el calendario de cambios está abierto. La asociación verifica el estado del calendario cuando se ejecuta. Si el calendario se cierra al momento del lanzamiento y la asociación solo se ejecuta una vez, no se volverá a ejecutar porque la ventana de ejecución de asociación ha pasado. Si el calendario está abierto, la asociación se ejecuta en consecuencia.
**nota**  
Si agrega nuevos nodos a las etiquetas o los grupos de recursos en los que actúa una asociación cuando se cierra el calendario de cambios, la asociación se aplica a esos nodos una vez que se abre el calendario de cambios.

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

   ```
   aws ssm create-association \
     --association-name CalendarAssociation \
     --targets "Key=instanceids,Values=i-0cb2b964d3e14fd9f" \
     --name AWS-UpdateSSMAgent  \
     --association-dispatch-assume-role arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole \
     --calendar-names "arn:aws:ssm:us-east-1:123456789012:document/testCalendar1" \
     --schedule-expression "rate(1day)"
   ```

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

   ```
   aws ssm create-association ^
     --association-name CalendarAssociation ^
     --targets "Key=instanceids,Values=i-0cb2b964d3e14fd9f" ^
     --name AWS-UpdateSSMAgent  ^
     --association-dispatch-assume-role arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole ^
     --calendar-names "arn:aws:ssm:us-east-1:123456789012:document/testCalendar1" ^
     --schedule-expression "rate(1day)"
   ```

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

   ```
   New-SSMAssociation `
     -AssociationName CalendarAssociation `
     -Target @{
         "Key"="tag:instanceids"
         "Values"="i-0cb2b964d3e14fd9f"
       } `
     -Name AWS-UpdateSSMAgent `
     -AssociationDispatchAssumeRole "arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole" `
     -CalendarNames "arn:aws:ssm:us-east-1:123456789012:document/testCalendar1" `
     -ScheduleExpression "rate(1day)"
   ```

------

   En el siguiente ejemplo, se crea una asociación que se ejecuta en nodos etiquetados con un ID de nodo específico. La asociación utiliza el documento de SSM Agent para actualizar SSM Agent en los nodos de destino a las 2:00 h todos los domingos. Esta asociación solo se ejecuta en la programación cron especificada cuando el calendario de cambios está abierto. Cuando se crea la asociación, verifica el estado del calendario. Si el calendario está cerrado, la asociación no se aplica. Cuando el intervalo para aplicar la asociación comienza a las 2:00 h del domingo, la asociación verifica si el calendario está abierto. Si el calendario está abierto, la asociación se ejecuta en consecuencia.
**nota**  
Si agrega nuevos nodos a las etiquetas o los grupos de recursos en los que actúa una asociación cuando se cierra el calendario de cambios, la asociación se aplica a esos nodos una vez que se abre el calendario de cambios.

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

   ```
   aws ssm create-association \
     --association-name MultiCalendarAssociation \
     --targets "Key=instanceids,Values=i-0cb2b964d3e14fd9f" \
     --name AWS-UpdateSSMAgent  \
     --association-dispatch-assume-role arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole \
     --calendar-names "arn:aws:ssm:us-east-1:123456789012:document/testCalendar1" "arn:aws:ssm:us-east-2:123456789012:document/testCalendar2" \
     --schedule-expression "cron(0 2 ? * SUN *)"
   ```

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

   ```
   aws ssm create-association ^
     --association-name MultiCalendarAssociation ^
     --targets "Key=instanceids,Values=i-0cb2b964d3e14fd9f" ^
     --name AWS-UpdateSSMAgent  ^
     --association-dispatch-assume-role arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole ^
     --calendar-names "arn:aws:ssm:us-east-1:123456789012:document/testCalendar1" "arn:aws:ssm:us-east-2:123456789012:document/testCalendar2" ^
     --schedule-expression "cron(0 2 ? * SUN *)"
   ```

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

   ```
   New-SSMAssociation `
     -AssociationName MultiCalendarAssociation `
     -Name AWS-UpdateSSMAgent `
     -AssociationDispatchAssumeRole "arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole" `
     -Target @{
         "Key"="tag:instanceids"
         "Values"="i-0cb2b964d3e14fd9f"
       } `
     -CalendarNames "arn:aws:ssm:us-east-1:123456789012:document/testCalendar1" "arn:aws:ssm:us-east-2:123456789012:document/testCalendar2" `
     -ScheduleExpression "cron(0 2 ? * SUN *)"
   ```

------

**nota**  
Si elimina la asociación creada, la asociación ya no se ejecutará en ningún destino de dicha asociación. Además, si especificó el parámetro `apply-only-at-cron-interval`, puede restablecer esta opción. Para ello, especifique el parámetro `no-apply-only-at-cron-interval` cuando actualice la asociación desde la línea de comandos. Este parámetro obliga a la asociación a ejecutarse inmediatamente después de actualizar la asociación y de acuerdo con el intervalo especificado.

# Cómo editar y crear una nueva versión de una asociación
<a name="state-manager-associations-edit"></a>

Puede editar una asociación de State Manager para especificar un nombre nuevo, la programación, el nivel de severidad, los destinos u otros valores. En el caso de asociaciones basadas en documentos del tipo de comando SSM, también puede elegir escribir la salida del comando en un bucket de Amazon Simple Storage Service (Amazon S3). Después de editar una asociación, State Manager crea una nueva versión. Puede ver distintas versiones después de la edición, tal como se describe en los siguientes procedimientos. 

**nota**  
Para que las asociaciones que se crean con los manuales de procedimientos de Automatización se apliquen cuando se detecten nuevos nodos de destino, se deben cumplir algunas condiciones. Para obtener más información, consulte [Acerca de las actualizaciones de destino con los manuales de procedimientos de Automatización](state-manager-about.md#runbook-target-updates).

Los siguientes procedimientos describen cómo editar y crear una nueva versión de una asociación mediante la consola de Systems Manager, AWS Command Line Interface (AWS CLI) y Herramientas de AWS para PowerShell (Tools for PowerShell). 

**importante**  
State Manager no admite la ejecución de asociaciones que utilizan una nueva versión de un documento si dicho documento se comparte desde otra cuenta. State Manager ejecuta siempre la versión `default` de un documento si se comparte desde otra cuenta, aunque la consola de Systems Manager muestre que se procesó una versión nueva. Si desea ejecutar una asociación con una versión nueva de un documento compartido desde otra cuenta, debe configurar la versión del documento en `default`.

## Cómo crear una asociación (consola)
<a name="state-manager-associations-edit-console"></a>

En el siguiente procedimiento, se describe cómo utilizar la consola de Systems Manager para editar y crear una nueva versión de una asociación.

**nota**  
En el caso de las asociaciones que utilizan documentos de comandos de SSM, no manuales de procedimientos de automatización, este procedimiento requiere que tenga acceso de escritura a un bucket de Amazon S3 existente. Si no ha utilizado Amazon S3, debe tener en cuenta que se le cobrará por utilizar Amazon S3. Para obtener información sobre cómo crear un bucket, consulte [Creación de un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingABucket.html).

**Cómo editar una asociación de State Manager**

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, elija **State Manager**.

1. Elija una asociación existente y luego elija **Editar**.

1. Reconfigure la asociación para que cumpla los requisitos actuales. 

   Para obtener información sobre las opciones de asociación con los documentos de `Policy` y de `Command`, consulte [Cómo crear asociaciones](state-manager-associations-creating.md). Para obtener información acerca de las opciones de asociación con manuales de procedimientos de Automation, consulte [Programación de automatizaciones con asociaciones de State Manager](scheduling-automations-state-manager-associations.md).

1. Elija **Save changes (Guardar cambios)**. 

1. (Opcional) Para ver información sobre asociaciones, en la página **Asociaciones**, elija el nombre de la asociación que editó y, a continuación, elija la pestaña **Versiones**. El sistema enumera cada versión de la asociación que ha creado y editado.

1. (Opcional) Para ver los resultados de las asociaciones basadas en documentos de `Command` de SSM, haga lo siguiente:

   1. Abra la consola de Amazon S3 en [https://console.aws.amazon.com/s3](https://console.aws.amazon.com/s3/).

   1. Elija el nombre del bucket de Simple Storage Service (Amazon S3) que especificó para almacenar la información de salida del comando y, a continuación, elija la carpeta denominada con el ID del nodo que ejecutó la asociación. (si eligió almacenar información de salida en una carpeta del bucket, ábrala primero).

   1. Profundice varios niveles, a través de la carpeta `awsrunPowerShell`, hasta el archivo `stdout`.

   1. Elija **Open** o **Download** para ver el nombre de host.

## Cómo editar una asociación (línea de comandos)
<a name="state-manager-associations-edit-commandline"></a>

En el siguiente procedimiento se describe cómo utilizar la AWS CLI (en Linux o Windows Server) o Herramientas de AWS para PowerShell para editar y crear una nueva versión de una asociación.

**Cómo editar una asociación de State Manager**

1. Si aún no lo ha hecho, instale y configure la AWS CLI o 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. Utilice el siguiente formato para crear un comando para editar y crear una nueva versión de una asociación de State Manager existente. Reemplace cada *example resource placeholder* con su propia información.
**importante**  
Cuando llama a `[https://docs.aws.amazon.com/cli/latest/reference/ssm/desupdatecribe-association.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/desupdatecribe-association.html)`, el sistema elimina todos los parámetros opcionales de la solicitud y sobrescribe la asociación con valores nulos para esos parámetros. Este comportamiento es así por diseño. Debe especificar todos los parámetros opcionales de la llamada, incluso si no cambia los parámetros. Esto incluye el parámetro `--name`. Antes de llamar a esta acción, le recomendamos que llame a la operación de la API `[https://docs.aws.amazon.com/cli/latest/reference/ssm/describe-association.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/describe-association.html)` y tome nota de todos los parámetros opcionales necesarios para su llamada a `update-association`.

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

   ```
   aws ssm update-association \
       --name document_name \
       --document-version version_of_document_applied \
       --instance-id instances_to_apply_association_on \
       --parameters (if any) \
       --targets target_options \
       --association-dispatch-assume-role arn_of_role_to_be_used_when_dispatching_configurations \
       --schedule-expression "cron_or_rate_expression" \
       --schedule-offset "number_between_1_and_6" \
       --output-location s3_bucket_to_store_output_details \
       --association-name association_name \
       --max-errors a_number_of_errors_or_a_percentage_of_target_set \
       --max-concurrency a_number_of_instances_or_a_percentage_of_target_set \
       --compliance-severity severity_level \
       --calendar-names change_calendar_names \
       --target-locations aws_region_or_account
   ```

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

   ```
   aws ssm update-association ^
       --name document_name ^
       --document-version version_of_document_applied ^
       --instance-id instances_to_apply_association_on ^
       --parameters (if any) ^
       --targets target_options ^
       --association-dispatch-assume-role arn_of_role_to_be_used_when_dispatching_configurations ^
       --schedule-expression "cron_or_rate_expression" ^
       --schedule-offset "number_between_1_and_6" ^
       --output-location s3_bucket_to_store_output_details ^
       --association-name association_name ^
       --max-errors a_number_of_errors_or_a_percentage_of_target_set ^
       --max-concurrency a_number_of_instances_or_a_percentage_of_target_set ^
       --compliance-severity severity_level ^
       --calendar-names change_calendar_names ^
       --target-locations aws_region_or_account
   ```

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

   ```
   Update-SSMAssociation `
       -Name document_name `
       -DocumentVersion version_of_document_applied `
       -InstanceId instances_to_apply_association_on `
       -Parameters (if any) `
       -Target target_options `
       -AssociationDispatchAssumeRole arn_of_role_to_be_used_when_dispatching_configurations `
       -ScheduleExpression "cron_or_rate_expression" `
       -ScheduleOffset "number_between_1_and_6" `
       -OutputLocation s3_bucket_to_store_output_details `
       -AssociationName association_name `
       -MaxError  a_number_of_errors_or_a_percentage_of_target_set
       -MaxConcurrency a_number_of_instances_or_a_percentage_of_target_set `
       -ComplianceSeverity severity_level `
       -CalendarNames change_calendar_names `
       -TargetLocations aws_region_or_account
   ```

------

   En el siguiente ejemplo se actualiza una asociación existente para cambiar el nombre a `TestHostnameAssociation2`. La nueva versión de asociación se ejecuta cada hora y escribe la salida de los comandos en el bucket de Amazon S3 especificado.

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

   ```
   aws ssm update-association \
     --association-id 8dfe3659-4309-493a-8755-01234EXAMPLE \
     --association-name TestHostnameAssociation2 \
     --parameters commands="echo Association" \
     --association-dispatch-assume-role arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole \
     --output-location S3Location='{OutputS3Region=us-east-1,OutputS3BucketName=amzn-s3-demo-bucket,OutputS3KeyPrefix=logs}' \
     --schedule-expression "cron(0 */1 * * ? *)"
   ```

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

   ```
   aws ssm update-association ^
     --association-id 8dfe3659-4309-493a-8755-01234EXAMPLE ^
     --association-name TestHostnameAssociation2 ^
     --parameters commands="echo Association" ^
     --association-dispatch-assume-role arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole ^
     --output-location S3Location='{OutputS3Region=us-east-1,OutputS3BucketName=amzn-s3-demo-bucket,OutputS3KeyPrefix=logs}' ^
     --schedule-expression "cron(0 */1 * * ? *)"
   ```

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

   ```
   Update-SSMAssociation `
     -AssociationId b85ccafe-9f02-4812-9b81-01234EXAMPLE `
     -AssociationName TestHostnameAssociation2 `
     -Parameter @{"commands"="echo Association"} `
     -AssociationDispatchAssumeRole "arn:aws:iam::123456789012:role/myAssociationDispatchAssumeRole" `
     -S3Location_OutputS3BucketName amzn-s3-demo-bucket `
     -S3Location_OutputS3KeyPrefix logs `
     -S3Location_OutputS3Region us-east-1 `
     -ScheduleExpression "cron(0 */1 * * ? *)"
   ```

------

   En el siguiente ejemplo se actualiza una asociación existente para cambiar el nombre a `CalendarAssociation`. La nueva asociación se ejecuta cuando el calendario está abierto y escribe la salida del comando en el bucket de Amazon S3 especificado. 

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

   ```
   aws ssm update-association \
     --association-id 8dfe3659-4309-493a-8755-01234EXAMPLE \
     --association-name CalendarAssociation \
     --parameters commands="echo Association" \
     --output-location S3Location='{OutputS3Region=us-east-1,OutputS3BucketName=amzn-s3-demo-bucket,OutputS3KeyPrefix=logs}' \
     --calendar-names "arn:aws:ssm:us-east-1:123456789012:document/testCalendar2"
   ```

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

   ```
   aws ssm update-association ^
     --association-id 8dfe3659-4309-493a-8755-01234EXAMPLE ^
     --association-name CalendarAssociation ^
     --parameters commands="echo Association" ^
     --output-location S3Location='{OutputS3Region=us-east-1,OutputS3BucketName=amzn-s3-demo-bucket,OutputS3KeyPrefix=logs}' ^
     --calendar-names "arn:aws:ssm:us-east-1:123456789012:document/testCalendar2"
   ```

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

   ```
   Update-SSMAssociation `
     -AssociationId b85ccafe-9f02-4812-9b81-01234EXAMPLE `
     -AssociationName CalendarAssociation `
     -AssociationName OneTimeAssociation `
     -Parameter @{"commands"="echo Association"} `
     -S3Location_OutputS3BucketName amzn-s3-demo-bucket `
     -CalendarNames "arn:aws:ssm:us-east-1:123456789012:document/testCalendar2"
   ```

------

   En el siguiente ejemplo se actualiza una asociación existente para cambiar el nombre a `MultiCalendarAssociation`. La nueva asociación se ejecuta cuando los calendarios están abiertos y escribe la salida del comando en el bucket de Amazon S3 especificado. 

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

   ```
   aws ssm update-association \
     --association-id 8dfe3659-4309-493a-8755-01234EXAMPLE \
     --association-name MultiCalendarAssociation \
     --parameters commands="echo Association" \
     --output-location S3Location='{OutputS3Region=us-east-1,OutputS3BucketName=amzn-s3-demo-bucket,OutputS3KeyPrefix=logs}' \
     --calendar-names "arn:aws:ssm:us-east-1:123456789012:document/testCalendar1" "arn:aws:ssm:us-east-2:123456789012:document/testCalendar2"
   ```

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

   ```
   aws ssm update-association ^
     --association-id 8dfe3659-4309-493a-8755-01234EXAMPLE ^
     --association-name MultiCalendarAssociation ^
     --parameters commands="echo Association" ^
     --output-location S3Location='{OutputS3Region=us-east-1,OutputS3BucketName=amzn-s3-demo-bucket,OutputS3KeyPrefix=logs}' ^
     --calendar-names "arn:aws:ssm:us-east-1:123456789012:document/testCalendar1" "arn:aws:ssm:us-east-2:123456789012:document/testCalendar2"
   ```

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

   ```
   Update-SSMAssociation `
     -AssociationId b85ccafe-9f02-4812-9b81-01234EXAMPLE `
     -AssociationName MultiCalendarAssociation `
     -Parameter @{"commands"="echo Association"} `
     -S3Location_OutputS3BucketName amzn-s3-demo-bucket `
     -CalendarNames "arn:aws:ssm:us-east-1:123456789012:document/testCalendar1" "arn:aws:ssm:us-east-2:123456789012:document/testCalendar2"
   ```

------

1. Para ver la nueva versión de la asociación, ejecute el siguiente comando.

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

   ```
   aws ssm describe-association \
     --association-id b85ccafe-9f02-4812-9b81-01234EXAMPLE
   ```

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

   ```
   aws ssm describe-association ^
     --association-id b85ccafe-9f02-4812-9b81-01234EXAMPLE
   ```

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

   ```
   Get-SSMAssociation `
     -AssociationId b85ccafe-9f02-4812-9b81-01234EXAMPLE | Select-Object *
   ```

------

   El sistema devuelve información similar a la siguiente.

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

   ```
   {
       "AssociationDescription": {
           "ScheduleExpression": "cron(0 */1 * * ? *)",
           "OutputLocation": {
               "S3Location": {
                   "OutputS3KeyPrefix": "logs",
                   "OutputS3BucketName": "amzn-s3-demo-bucket",
                   "OutputS3Region": "us-east-1"
               }
           },
           "Name": "AWS-RunPowerShellScript",
           "Parameters": {
               "commands": [
                   "echo Association"
               ]
           },
           "LastExecutionDate": 1559316400.338,
           "Overview": {
               "Status": "Success",
               "DetailedStatus": "Success",
               "AssociationStatusAggregatedCount": {}
           },
           "AssociationId": "b85ccafe-9f02-4812-9b81-01234EXAMPLE",
           "DocumentVersion": "$DEFAULT",
           "LastSuccessfulExecutionDate": 1559316400.338,
           "LastUpdateAssociationDate": 1559316389.753,
           "Date": 1559314038.532,
           "AssociationVersion": "2",
           "AssociationName": "TestHostnameAssociation2",
           "Targets": [
               {
                   "Values": [
                       "Windows"
                   ],
                   "Key": "tag:Environment"
               }
           ]
       }
   }
   ```

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

   ```
   {
       "AssociationDescription": {
           "ScheduleExpression": "cron(0 */1 * * ? *)",
           "OutputLocation": {
               "S3Location": {
                   "OutputS3KeyPrefix": "logs",
                   "OutputS3BucketName": "amzn-s3-demo-bucket",
                   "OutputS3Region": "us-east-1"
               }
           },
           "Name": "AWS-RunPowerShellScript",
           "Parameters": {
               "commands": [
                   "echo Association"
               ]
           },
           "LastExecutionDate": 1559316400.338,
           "Overview": {
               "Status": "Success",
               "DetailedStatus": "Success",
               "AssociationStatusAggregatedCount": {}
           },
           "AssociationId": "b85ccafe-9f02-4812-9b81-01234EXAMPLE",
           "DocumentVersion": "$DEFAULT",
           "LastSuccessfulExecutionDate": 1559316400.338,
           "LastUpdateAssociationDate": 1559316389.753,
           "Date": 1559314038.532,
           "AssociationVersion": "2",
           "AssociationName": "TestHostnameAssociation2",
           "Targets": [
               {
                   "Values": [
                       "Windows"
                   ],
                   "Key": "tag:Environment"
               }
           ]
       }
   }
   ```

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

   ```
   AssociationId                 : b85ccafe-9f02-4812-9b81-01234EXAMPLE
   AssociationName               : TestHostnameAssociation2
   AssociationVersion            : 2
   AutomationTargetParameterName : 
   ComplianceSeverity            : 
   Date                          : 5/31/2019 2:47:18 PM
   DocumentVersion               : $DEFAULT
   InstanceId                    : 
   LastExecutionDate             : 5/31/2019 3:26:40 PM
   LastSuccessfulExecutionDate   : 5/31/2019 3:26:40 PM
   LastUpdateAssociationDate     : 5/31/2019 3:26:29 PM
   MaxConcurrency                : 
   MaxErrors                     : 
   Name                          : AWS-RunPowerShellScript
   OutputLocation                : Amazon.SimpleSystemsManagement.Model.InstanceAssociationOutputLocation
   Overview                      : Amazon.SimpleSystemsManagement.Model.AssociationOverview
   Parameters                    : {[commands, Amazon.Runtime.Internal.Util.AlwaysSendList`1[System.String]]}
   ScheduleExpression            : cron(0 */1 * * ? *)
   Status                        : 
   Targets                       : {tag:Environment}
   ```

------

# Eliminación de una asociación
<a name="systems-manager-state-manager-delete-association"></a>

Use el siguiente procedimiento para eliminar una asociación usando la consola AWS Systems Manager.

**Eliminación de una asociación**

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, elija **State Manager**.

1. Seleccione una asociación y, a continuación, elija **Eliminar**.

Puede eliminar varias asociaciones en una sola operación al ejecutar una automatización desde la consola AWS Systems Manager. Al seleccionar varias asociaciones para eliminarlas, State Manager abre la página de inicio del manual de procedimientos de automatización con los ID de asociación introducidos como valores de los parámetros de entrada. 

**Para eliminar varias asociaciones en una sola operación**

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, elija **State Manager**.

1. Seleccione cada asociación que desee eliminar y elija **Eliminar**.

1. (Opcional) En el área de **Parámetros de entrada adicionales**, seleccione el nombre de recurso de Amazon (ARN) para el *rol de asunción* que desea que utilice la automatización durante la ejecución. Para crear un nuevo rol de asunción, elija **Crear**.

1. Elija **Enviar**.

# Ejecución de grupos de Auto Scaling con asociaciones
<a name="systems-manager-state-manager-asg"></a>

La práctica recomendada al momento de utilizar asociaciones para ejecutar grupos de Auto Scaling es utilizar destinos de etiqueta. Si no se utilizan etiquetas, es posible que se alcance el límite de asociación. 

Si todos los nodos están etiquetados con la misma clave y valor, solo necesita una asociación para ejecutar el grupo de Auto Scaling. En el siguiente procedimiento, se describe cómo crear dicha asociación.

**Para crear una asociación que ejecute grupos de Auto Scaling**

1. Asegúrese de que todos los nodos del grupo de Auto Scaling estén etiquetados con la misma clave y valor. Para obtener más instrucciones acerca del etiquetado de nodos, consulte [Etiquetado de grupos e instancias de Auto Scaling](https://docs.aws.amazon.com//autoscaling/ec2/userguide/autoscaling-tagging.html) en la *Guía del usuario de AWS Auto Scaling*. 

1. Cree una asociación siguiendo el procedimiento indicado en [Trabajo con asociaciones en Systems Manager](state-manager-associations.md). 

   Si está trabajando en la consola, elija **Specify instance tags** (Especificar etiquetas de instancias) en el campo **Targets** (Destinos). Para **Instance tags** (Etiquetas de instancia), ingrese la clave y el valor de la **Etiqueta** de su grupo de Auto Scaling.

   Si utiliza AWS Command Line Interface (AWS CLI), especifique `--targets Key=tag:tag-key,Values=tag-value` donde la clave y el valor coinciden con lo que etiquetó sus nodos. 

# Visualización de los historiales de asociación
<a name="state-manager-associations-history"></a>

Puede ver todas las ejecuciones correspondientes a un ID de asociación específico mediante la operación [DescribeAssociationExecutions](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_DescribeAssociationExecutions.html) de la API. Utilice esta operación para ver el estado, el estado detallado, los resultados, la hora de la última ejecución y para obtener más información acerca de una asociación de State Manager. State Manager es una herramienta de AWS Systems Manager. Esta operación de la API también incluye filtros para ayudarlo a encontrar las asociaciones que cumplan los criterios que especifique. Por ejemplo, puede especificar una fecha y hora exactas y utilizar un filtro GREATER\$1THAN para ver las ejecuciones que se procesaron después dicha fecha y hora.

Si, por ejemplo, se produce un error en la ejecución de una asociación, puede desglosar los detalles de una ejecución específica mediante la operación [DescribeAssociationExecutionTargets](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_DescribeAssociationExecutionTargets.html) de la API. Esta operación muestra los recursos, como, por ejemplo, los ID de nodo, en los que se ejecutó la asociación y los diferentes estados de la asociación. A continuación, puede ver en qué recurso o nodo no se pudo ejecutar la asociación. Con el ID de recurso puede ver los detalles de la ejecución del comando para ver en qué paso de un comando se ha producido el error.

En los ejemplos de esta sección, también se incluye información sobre cómo utilizar la operación [StartAssociationsOnce](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_StartAssociationsOnce.html) de la API para ejecutar una asociación una sola vez al momento de la creación. Puede utilizar esta operación de la API cuando investigue ejecuciones de asociaciones que produzcan errores. Si ve que se ha producido un error en una asociación, puede hacer un cambio en el recurso y, a continuación, ejecutar inmediatamente la asociación para ver si el cambio en el recurso permite que la asociación se ejecute correctamente.

**nota**  
Las operaciones de la API que inicia el documento SSM durante la ejecución de una asociación no se registran en AWS CloudTrail.

## Visualización de los historiales de asociación (consola)
<a name="state-manager-associations-history-console"></a>

Utilice el siguiente procedimiento para ver el historial de ejecución de un ID de asociación específico y, a continuación, los detalles de ejecución de uno o varios recursos. 

**Para ver el historial de ejecución de un ID de asociación específico**

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

1. Elija **State Manager**.

1. En el campo **Association id (ID de asociación)**, elija la asociación cuyo historial desea ver.

1. Elija el botón **View details (Ver detalles)**.

1. Elija la pestaña **Execution history (Historial de ejecución)**.

1. Elija la asociación para la que desea ver los detalles de ejecución en el nivel de recursos. Por ejemplo, elija una asociación con el estado **Failed (Error)**. Una vez hecho esto, podrá ver los detalles de ejecución para los nodos en que no se pudo ejecutar la asociación.

   Utilice los filtros del cuadro de búsqueda para localizar la ejecución cuyos detalles desea ver.  
![\[Filtrado de la lista de ejecuciones de asociaciones de State Manager\]](http://docs.aws.amazon.com/es_es/systems-manager/latest/userguide/images/sysman-state-executions-filter.png)

1. Elija un ID de ejecución. Se abre la página **Association execution targets (Destinos de la ejecución de la asociación)**. Esta página muestra todos los recursos en que se ha ejecutado la asociación.

1. Elija un ID de recurso para ver información específica sobre dicho recurso.

   Utilice los filtros del cuadro de búsqueda para localizar el recurso cuyos detalles desea ver.  
![\[Filtrado de la lista de destinos de la ejecución de asociación de State Manager.\]](http://docs.aws.amazon.com/es_es/systems-manager/latest/userguide/images/sysman-state-executions-targets-filter.png)

1. Si está investigando una asociación que no se ha podido ejecutar, puede utilizar el botón **Apply association now** (Aplicar asociación ahora) para ejecutar una asociación una sola vez al momento de la creación. Una vez que haya realizado los cambios en el recurso en que no se pudo ejecutar la asociación, elija el enlace **Association ID (ID de asociación)** en la ruta de navegación.

1. Haga clic en el botón **Apply association now (Aplicar asociación ahora)**. Cuando finalice la ejecución, verifique que la ejecución de la asociación se ha realizado correctamente.

## Visualización de los historiales de asociación (línea de comandos)
<a name="state-manager-associations-history-commandline"></a>

En el siguiente procedimiento se describe cómo utilizar la AWS Command Line Interface (AWS CLI) (en Linux o Windows Server) o Herramientas de AWS para PowerShell para ver el historial de ejecución de un ID de asociación determinado. A continuación, el procedimiento describe cómo ver los detalles de ejecución de uno o varios recursos.

**Para ver el historial de ejecución de un ID de asociación específico**

1. Si aún no lo ha hecho, instale y configure la AWS CLI o 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. Ejecute el siguiente comando para ver una lista de las ejecuciones de un determinado ID de asociación.

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

   ```
   aws ssm describe-association-executions \
     --association-id ID \
     --filters Key=CreatedTime,Value="2018-04-10T19:15:38.372Z",Type=GREATER_THAN
   ```

**nota**  
Este comando incluye un filtro para limitar los resultados únicamente a las ejecuciones que han tenido lugar después de una fecha y hora determinadas. Si desea ver todas las ejecuciones de un ID de asociación específico, elimine el parámetro `--filters` y el valor ` Key=CreatedTime,Value="2018-04-10T19:15:38.372Z",Type=GREATER_THAN`.

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

   ```
   aws ssm describe-association-executions ^
     --association-id ID ^
     --filters Key=CreatedTime,Value="2018-04-10T19:15:38.372Z",Type=GREATER_THAN
   ```

**nota**  
Este comando incluye un filtro para limitar los resultados únicamente a las ejecuciones que han tenido lugar después de una fecha y hora determinadas. Si desea ver todas las ejecuciones de un ID de asociación específico, elimine el parámetro `--filters` y el valor ` Key=CreatedTime,Value="2018-04-10T19:15:38.372Z",Type=GREATER_THAN`.

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

   ```
   Get-SSMAssociationExecution `
     -AssociationId ID `
     -Filter @{"Key"="CreatedTime";"Value"="2019-06-01T19:15:38.372Z";"Type"="GREATER_THAN"}
   ```

**nota**  
Este comando incluye un filtro para limitar los resultados únicamente a las ejecuciones que han tenido lugar después de una fecha y hora determinadas. Si desea ver todas las ejecuciones de un ID de asociación específico, elimine el parámetro `-Filter` y el valor ` @{"Key"="CreatedTime";"Value"="2019-06-01T19:15:38.372Z";"Type"="GREATER_THAN"}`.

------

   El sistema devuelve información similar a la siguiente.

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

   ```
   {
      "AssociationExecutions":[
         {
            "Status":"Success",
            "DetailedStatus":"Success",
            "AssociationId":"c336d2ab-09de-44ba-8f6a-6136cEXAMPLE",
            "ExecutionId":"76a5a04f-caf6-490c-b448-92c02EXAMPLE",
            "CreatedTime":1523986028.219,
            "AssociationVersion":"1"
         },
         {
            "Status":"Success",
            "DetailedStatus":"Success",
            "AssociationId":"c336d2ab-09de-44ba-8f6a-6136cEXAMPLE",
            "ExecutionId":"791b72e0-f0da-4021-8b35-f95dfEXAMPLE",
            "CreatedTime":1523984226.074,
            "AssociationVersion":"1"
         },
         {
            "Status":"Success",
            "DetailedStatus":"Success",
            "AssociationId":"c336d2ab-09de-44ba-8f6a-6136cEXAMPLE",
            "ExecutionId":"ecec60fa-6bb0-4d26-98c7-140308EXAMPLE",
            "CreatedTime":1523982404.013,
            "AssociationVersion":"1"
         }
      ]
   }
   ```

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

   ```
   {
      "AssociationExecutions":[
         {
            "Status":"Success",
            "DetailedStatus":"Success",
            "AssociationId":"c336d2ab-09de-44ba-8f6a-6136cEXAMPLE",
            "ExecutionId":"76a5a04f-caf6-490c-b448-92c02EXAMPLE",
            "CreatedTime":1523986028.219,
            "AssociationVersion":"1"
         },
         {
            "Status":"Success",
            "DetailedStatus":"Success",
            "AssociationId":"c336d2ab-09de-44ba-8f6a-6136cEXAMPLE",
            "ExecutionId":"791b72e0-f0da-4021-8b35-f95dfEXAMPLE",
            "CreatedTime":1523984226.074,
            "AssociationVersion":"1"
         },
         {
            "Status":"Success",
            "DetailedStatus":"Success",
            "AssociationId":"c336d2ab-09de-44ba-8f6a-6136cEXAMPLE",
            "ExecutionId":"ecec60fa-6bb0-4d26-98c7-140308EXAMPLE",
            "CreatedTime":1523982404.013,
            "AssociationVersion":"1"
         }
      ]
   }
   ```

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

   ```
   AssociationId         : c336d2ab-09de-44ba-8f6a-6136cEXAMPLE
   AssociationVersion    : 1
   CreatedTime           : 8/18/2019 2:00:50 AM
   DetailedStatus        : Success
   ExecutionId           : 76a5a04f-caf6-490c-b448-92c02EXAMPLE
   LastExecutionDate     : 1/1/0001 12:00:00 AM
   ResourceCountByStatus : {Success=1}
   Status                : Success
   
   AssociationId         : c336d2ab-09de-44ba-8f6a-6136cEXAMPLE
   AssociationVersion    : 1
   CreatedTime           : 8/11/2019 2:00:54 AM
   DetailedStatus        : Success
   ExecutionId           : 791b72e0-f0da-4021-8b35-f95dfEXAMPLE
   LastExecutionDate     : 1/1/0001 12:00:00 AM
   ResourceCountByStatus : {Success=1}
   Status                : Success
   
   AssociationId         : c336d2ab-09de-44ba-8f6a-6136cEXAMPLE
   AssociationVersion    : 1
   CreatedTime           : 8/4/2019 2:01:00 AM
   DetailedStatus        : Success
   ExecutionId           : ecec60fa-6bb0-4d26-98c7-140308EXAMPLE
   LastExecutionDate     : 1/1/0001 12:00:00 AM
   ResourceCountByStatus : {Success=1}
   Status                : Success
   ```

------

   Puede limitar los resultados mediante el uso de uno o varios filtros. En el siguiente ejemplo, se devuelven todas las asociaciones que se ejecutaron antes de una fecha y hora determinada. 

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

   ```
   aws ssm describe-association-executions \
     --association-id ID \
     --filters Key=CreatedTime,Value="2018-04-10T19:15:38.372Z",Type=LESS_THAN
   ```

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

   ```
   aws ssm describe-association-executions ^
     --association-id ID ^
     --filters Key=CreatedTime,Value="2018-04-10T19:15:38.372Z",Type=LESS_THAN
   ```

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

   ```
   Get-SSMAssociationExecution `
     -AssociationId 14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE `
     -Filter @{"Key"="CreatedTime";"Value"="2019-06-01T19:15:38.372Z";"Type"="LESS_THAN"}
   ```

------

   El comando siguiente devuelve todas las asociaciones que se ejecutaron *correctamente* después de una fecha y hora determinadas.

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

   ```
   aws ssm describe-association-executions \
     --association-id ID \
     --filters Key=CreatedTime,Value="2018-04-10T19:15:38.372Z",Type=GREATER_THAN Key=Status,Value=Success,Type=EQUAL
   ```

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

   ```
   aws ssm describe-association-executions ^
     --association-id ID ^
     --filters Key=CreatedTime,Value="2018-04-10T19:15:38.372Z",Type=GREATER_THAN Key=Status,Value=Success,Type=EQUAL
   ```

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

   ```
   Get-SSMAssociationExecution `
     -AssociationId 14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE `
     -Filter @{
         "Key"="CreatedTime";
         "Value"="2019-06-01T19:15:38.372Z";
         "Type"="GREATER_THAN"
       },
       @{
         "Key"="Status";
         "Value"="Success";
         "Type"="EQUAL"
       }
   ```

------

1. Ejecute el comando siguiente para ver todos los destinos a los que se aplicó una ejecución específica.

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

   ```
   aws ssm describe-association-execution-targets \
     --association-id ID \
     --execution-id ID
   ```

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

   ```
   aws ssm describe-association-execution-targets ^
     --association-id ID ^
     --execution-id ID
   ```

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

   ```
   Get-SSMAssociationExecutionTarget `
     -AssociationId 14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE `
     -ExecutionId 76a5a04f-caf6-490c-b448-92c02EXAMPLE
   ```

------

   Puede limitar los resultados mediante el uso de uno o varios filtros. En el ejemplo siguiente, se devuelve información sobre todos los destinos en que no se pudo ejecutar la asociación específica.

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

   ```
   aws ssm describe-association-execution-targets \
     --association-id ID \
     --execution-id ID \
     --filters Key=Status,Value="Failed"
   ```

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

   ```
   aws ssm describe-association-execution-targets ^
     --association-id ID ^
     --execution-id ID ^
     --filters Key=Status,Value="Failed"
   ```

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

   ```
   Get-SSMAssociationExecutionTarget `
     -AssociationId 14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE `
     -ExecutionId 76a5a04f-caf6-490c-b448-92c02EXAMPLE `
     -Filter @{
         "Key"="Status";
         "Value"="Failed"
       }
   ```

------

   En el ejemplo siguiente, se devuelve información sobre un nodo administrado específico en que no se pudo ejecutar una asociación.

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

   ```
   aws ssm describe-association-execution-targets \
     --association-id ID \
     --execution-id ID \
     --filters Key=Status,Value=Failed Key=ResourceId,Value="i-02573cafcfEXAMPLE" Key=ResourceType,Value=ManagedInstance
   ```

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

   ```
   aws ssm describe-association-execution-targets ^
     --association-id ID ^
     --execution-id ID ^
     --filters Key=Status,Value=Failed Key=ResourceId,Value="i-02573cafcfEXAMPLE" Key=ResourceType,Value=ManagedInstance
   ```

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

   ```
   Get-SSMAssociationExecutionTarget `
     -AssociationId 14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE `
     -ExecutionId 76a5a04f-caf6-490c-b448-92c02EXAMPLE `
     -Filter @{
         "Key"="Status";
         "Value"="Success"
       },
       @{
         "Key"="ResourceId";
         "Value"="i-02573cafcfEXAMPLE"
       },
       @{
         "Key"="ResourceType";
         "Value"="ManagedInstance"
       }
   ```

------

1. Si está investigando una asociación que no se ha podido ejecutar, puede utilizar la operación [StartAssociationsOnce](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_StartAssociationsOnce.html) de la API para ejecutar una asociación inmediatamente una sola vez. Después de cambiar el recurso en el que no se pudo ejecutar la asociación, ejecute el comando siguiente para ejecutar la asociación inmediatamente una sola vez.

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

   ```
   aws ssm start-associations-once \
     --association-id ID
   ```

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

   ```
   aws ssm start-associations-once ^
     --association-id ID
   ```

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

   ```
   Start-SSMAssociationsOnce `
     -AssociationId ID
   ```

------

# Uso de asociaciones mediante IAM
<a name="systems-manager-state-manager-iam"></a>

State Manager, una herramienta de AWS Systems Manager, utiliza [destinos](systems-manager-state-manager-targets-and-rate-controls.md#systems-manager-state-manager-targets-and-rate-controls-about-targets) para elegir con qué instancias configura sus asociaciones. Originalmente, las asociaciones se crearon especificando un nombre de documento (`Name`) y un ID de instancia (`InstanceId`). Esto creó una asociación entre un documento y una instancia o nodo administrados. Las asociaciones solían ser identificadas por estos parámetros. Estos parámetros ahora están obsoletos, pero siguen siendo compatibles. Los recursos `instance` y `managed-instance` se agregaron como recursos a acciones con `Name` y `InstanceId`.

AWS Identity and Access ManagementEl comportamiento de aplicación de políticas de (IAM) depende del tipo de recurso especificado. Los recursos para operaciones de State Manager solo se aplican en función de la solicitud aprobada. State Manager no realiza una verificación profunda de las propiedades de los recursos de su cuenta. Una solicitud solo se valida con recursos de política si el parámetro de solicitud presenta los recursos de política especificados. Por ejemplo, si especifica una instancia en el bloque de recursos, la política se aplica si la solicitud utiliza el parámetro `InstanceId`. El parámetro `Targets` para cada recurso de la cuenta no está verificado para ese `InstanceId`. 

Los siguientes son algunos casos con comportamiento confuso:
+  [DescribeAssociation](https://docs.aws.amazon.com//systems-manager/latest/APIReference/API_DescribeActivations.html), [DeleteAssociation](https://docs.aws.amazon.com//systems-manager/latest/APIReference/API_DeleteAssociation.html) y [UpdateAssociation](https://docs.aws.amazon.com//systems-manager/latest/APIReference/API_UpdateAssociation.html) utilizan recursos `instance`, `managed-instance` y `document` para especificar la forma obsoleta de referirse a asociaciones. Esto incluye todas las asociaciones creadas con el parámetro obsoleto `InstanceId`.
+ [CreateAssociation](https://docs.aws.amazon.com//systems-manager/latest/APIReference/API_CreateAssociation.html), [CreateAssociationBatch](https://docs.aws.amazon.com//systems-manager/latest/APIReference/API_CreateAssociationBatch.html) y [UpdateAssociation](https://docs.aws.amazon.com//systems-manager/latest/APIReference/API_UpdateAssociation.html) utilizan recursos `instance` y `managed-instance` para especificar la forma obsoleta de referirse a asociaciones. Esto incluye todas las asociaciones creadas con el parámetro obsoleto `InstanceId`. El tipo de recurso `document` es parte de la forma obsoleta de referirse a asociaciones y es una propiedad real de una asociación. Esto significa que puede crear políticas de IAM con los permisos `Allow` o `Deny` para las acciones `Create` y `Update` según el nombre del documento.

Para obtener más información acerca del uso de políticas de IAM con Systems Manager, consulte [Administración de identidades y accesos en AWS Systems Manager](security-iam.md) o [Acciones, recursos y claves de condiciones de AWS Systems Manager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssystemsmanager.html) en la *Referencia de autorizaciones de servicio*.