Comprensión de los controles de frecuencia y destinos en las asociaciones de State Manager
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 la función de AWS Systems Manager.
Uso de destinos
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í.
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. 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.
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.
nota
Observe la siguiente información.
-
Al crear una asociación en la consola, al segmentar nodos mediante etiquetas, solo puede especificar una clave de etiqueta. Si quiere usar la consola y desea dirigirse a sus nodos mediante más de una clave de etiqueta, asigne las claves de etiqueta a un grupo de AWS Resource Groups 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.
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 para obtener consejos de solución de problemas.
Elegir un grupo de recursos
Utilice esta opción para crear una asociación en todos los nodos devueltos por una consulta de AWS Resource Groups 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. -
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 AWS Resource Groups? en la Guía del usuario de AWS Resource Groups.
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.
Uso de controles de velocidad
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.
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.
Los umbrales de error de State Manager 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 %.