Bloque de ejecución de escalado de recursos de Amazon EKS - Controlador de recuperación de aplicaciones (ARC) de Amazon

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Bloque de ejecución de escalado de recursos de Amazon EKS

El bloque de ejecución de escalado de recursos de EKS le permite escalar recursos de EKS como parte de su proceso de recuperación multirregional. Al configurar el bloque de ejecución, se define un porcentaje de la capacidad que se va a escalar en relación con la capacidad de la región que se va a desactivar.

Configuración de los permisos de entrada de acceso de EKS

Antes de poder agregar un bloque de ejecución para el escalado de recursos de EKS, debe proporcionar a la característica de cambio de región los permisos necesarios para realizar acciones con los recursos de Kubernetes de sus clústeres de EKS. Para proporcionar acceso al cambio de región, debe crear una entrada de acceso de EKS para el rol de IAM que el cambio de región utiliza para la ejecución del plan, mediante la siguiente política de acceso al cambio de región: arn:aws:eks::aws:cluster-access-policy/AmazonARCRegionSwitchScalingPolicy

Política de acceso de EKS del cambio de región

La siguiente información proporciona detalles sobre la política de acceso de EKS.

Nombre: AmazonARCRegionSwitchScalingPolicy

ARN de política: arn:aws:eks::aws:cluster-access-policy/AmazonARCRegionSwitchScalingPolicy

Grupos de API de Kubernetes Recursos de Kubernetes Verbos de Kubernetes (permisos)

*

*/scale

get, update

*

*/status

introducción

autoscaling

horizontalpodautoscalers

get, patch

Creación de una entrada de acceso de EKS para el cambio de región

El siguiente ejemplo describe cómo crear la entrada de acceso y las asociaciones de políticas de acceso necesarias para que el cambio de región pueda adoptar medidas específicas para sus recursos de Kubernetes. En este ejemplo, los permisos se aplican al espacio de nombres my-namespace1 del clúster de EKS my-cluster para la función de IAM. arn:aws:iam::555555555555:role/my-role

Al configurar estos permisos, asegúrese de seguir estos pasos para los dos clústeres de EKS del bloque de ejecución.

Requisito previo

Antes de empezar, cambie el modo de autenticación del clúster a API_AND_CONFIG_MAP o API. Al cambiar el modo de autorización, se agrega la API para las entradas de acceso. Para obtener más información, consulte Cambiar el modo de autenticación para utilizar entradas de acceso en la Guía del usuario de Amazon EKS.

Creación de la entrada de acceso

El primer paso consiste en crear la entrada de acceso mediante un AWS CLI comando similar al siguiente:

aws eks create-access-entry --cluster-name my-cluster --principal-arn arn:aws:iam::555555555555:user/my-user --type STANDARD

Para obtener más información, consulte Creación de entradas de acceso en la Guía del usuario de Amazon EKS.

Creación de la asociación de la entrada de acceso

A continuación, cree la asociación a la política de acceso del conmutador regional mediante un AWS CLI comando similar al siguiente:

aws eks associate-access-policy --cluster-name my-cluster --principal-arn arn:aws:iam::555555555555:role/my-role \ --access-scope type=namespace,namespaces=my-namespace1 --policy-arn arn:aws:eks::aws:cluster-access-policy/AmazonARCRegionSwitchScalingPolicy

Para obtener más información, consulte Asociación de políticas de acceso con entradas de acceso en la Guía del usuario de Amazon EKS.

Asegúrese de repetir estos pasos con el segundo clúster de EKS del bloque de ejecución, en la otra región, para garantizar que la característica de cambio de región pueda acceder a ambos clústeres.

Configuración

importante

Antes de agregar un bloque de ejecución de escalado de recursos de EKS, asegúrese de que ha configurado los permisos necesarios. Para obtener más información, consulte Configuración de los permisos de entrada de acceso de EKS. Asegúrese también de que cuenta con la política de IAM correcta. Para obtener más información, consulte Política de ejemplo de bloque de ejecución de escalado de recursos de Amazon EKS.

Tenga en cuenta que el conmutador de región admite actualmente los siguientes ReplicaSet recursos: apps/v1, Deployment, and apps/v 1.

Para la configuración del bloque de ejecución, introduzca los siguientes valores.

  1. Nombre del paso: introduzca un nombre.

  2. Descripción del paso (opcional): introduzca una descripción del paso.

  3. Nombre de la aplicación: introduzca el nombre de su aplicación de EKS, por ejemplo, myApplication.

  4. Tipo de recurso de Kubernetes: introduzca el tipo de recurso de la aplicación, por ejemplo, Deployment.

  5. Recurso por región: para cada región, introduzca la información del clúster de EKS, incluido el ARN del clúster de EKS, el espacio de nombres del recurso, etc.

  6. Porcentaje que coincide con la capacidad de la región activada: introduzca el porcentaje deseado de pods en ejecución en la región de origen que coincida con la región activada.

  7. Enfoque de supervisión de la capacidad: la única opción de supervisión de la capacidad ya está seleccionada, Capacidad máxima de ejecución muestreada durante 24 horas.

    Este enfoque de supervisión de la capacidad utiliza el valor ReplicaCount de las solicitudes de servicio de EKS. Para obtener más información, consulte Obtenga información sobre el cambio de zona de ARC en Amazon EKS en la Guía del usuario de Amazon Elastic Kubernetes Service.

  8. Tiempo de espera: introduzca un valor de tiempo de espera.

A continuación, elija Guardar paso.

Funcionamiento

Durante ejecución de un plan, el cambio de región recupera el número máximo de réplicas muestreado en las últimas 24 horas para el recurso objetivo de la región que se está activando. A continuación, calcula el recuento de réplicas deseado para el recurso de destino mediante la siguiente fórmula: ceil(percentToMatch * Source replica count)

Si el recuento de réplicas listas para el destino es inferior al valor deseado, el cambio de región escala el valor de la réplica del recurso de destino a la capacidad deseada. Espera a que las réplicas estén listas y aprovecha el escalador automático de nodos para aumentar la capacidad de los nodos si es necesario.

Si el hpaName campo opcional no está vacío, el conmutador de región lo HorizontalPodAutoscaler parchea para evitar cualquier reducción automática de escala durante o después de la ejecución mediante el siguiente parche: {"spec":{"behavior":{"scaleDown":{"selectPolicy":"Disabled"}}}}

Asegúrese de configurar cualquier herramienta de corrección de desviaciones, como las GitOps herramientas, para que ignore el campo de réplica de los recursos del parche, así como el campo. HorizontalPodAutoscaler

Qué se evalúa como parte de la evaluación del plan

Cuando el cambio de región evalúa el plan, realiza varias comprobaciones de los permisos y del bloque de ejecución de EKS configurados. El cambio de región verifica que el rol de IAM del plan tenga los permisos correctos para describir los clústeres de EKS y enumerar las políticas de entrada de acceso asociadas. El cambio de región también valida que el rol de IAM esté asociado a la política de entrada de acceso correcta, de modo que el cambio de región tenga los permisos necesarios para actuar sobre los recursos de Kubernetes. Por último, el cambio de región confirma que existen los clústeres de EKS configurados y los recursos de Kubernetes.

Además, el cambio de región comprueba que ha recopilado y almacenado correctamente los datos de supervisión necesarios (recuento de réplicas de Kubernetes) y registra el número de pods en ejecución necesarios para ejecutar el plan de cambio de región.