View a markdown version of this page

Bloc d'exécution de mise à l'échelle des ressources Amazon EKS - Contrôleur de restauration des applications Amazon (ARC)

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Bloc d'exécution de mise à l'échelle des ressources Amazon EKS

Le bloc d'exécution EKS Resource Scaling vous permet de dimensionner les ressources EKS dans le cadre de votre processus de restauration multirégional. Lorsque vous configurez le bloc d'exécution, vous définissez un pourcentage de capacité à adapter, par rapport à la capacité de la région qui est désactivée.

Configurer les autorisations d'accès EKS

Avant de pouvoir ajouter une étape pour la mise à l'échelle des ressources EKS, vous devez fournir à Region Switch les autorisations nécessaires pour effectuer des actions avec les ressources Kubernetes de vos clusters EKS. Pour fournir un accès au commutateur régional, vous devez créer une entrée d'accès EKS pour le rôle IAM que le commutateur régional utilise pour l'exécution du plan, en utilisant la politique d'accès au commutateur régional suivante : arn:aws:eks::aws:cluster-access-policy/AmazonARCRegionSwitchScalingPolicy

Politique d'accès EKS du commutateur régional

Les informations suivantes fournissent des détails sur la politique d'accès d'EKS.

Nom: AmazonARCRegionSwitchScalingPolicy

ARN de la politique : arn:aws:eks::aws:cluster-access-policy/AmazonARCRegionSwitchScalingPolicy

Groupes d’API Kubernetes Ressources Kubernetes Verbes (autorisations) Kubernetes

*

*/échelle

obtenir, mettre à jour

*

*/statut

get

autoscaling

autoscalers horizontaux à pod

obtenir, patcher

Création d'une entrée d'accès EKS pour le commutateur de région

L'exemple suivant décrit comment créer l'entrée d'accès et les associations de règles d'accès requises afin que le commutateur de région puisse prendre des mesures spécifiques pour vos ressources Kubernetes. Dans cet exemple, les autorisations s'appliquent à l'espace de noms my-namespace1 du cluster EKS my-cluster pour le rôle IAM. arn:aws:iam::555555555555:role/my-role

Lorsque vous configurez ces autorisations, assurez-vous de suivre ces étapes pour les deux clusters EKS de votre bloc d'exécution.

Prérequis

Avant de commencer, modifiez le mode d'authentification du cluster sur l'un API_AND_CONFIG_MAP ou l'autreAPI. La modification du mode d'autorisation ajoute l'API pour les entrées d'accès. Pour plus d'informations, consultez la section Modifier le mode d'authentification pour utiliser les entrées d'accès dans le guide de l'utilisateur Amazon EKS.

Création de l'entrée d'accès

La première étape consiste à créer l'entrée d'accès à l'aide d'une AWS CLI commande similaire à la suivante :

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

Pour plus d'informations, consultez la section Créer des entrées d'accès dans le guide de l'utilisateur Amazon EKS.

Création de l'association d'entrée d'accès

Créez ensuite l'association à la politique d'accès du commutateur de région à l'aide d'une AWS CLI commande similaire à la suivante :

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

Pour plus d'informations, consultez Associer les politiques d'accès aux entrées d'accès dans le guide de l'utilisateur Amazon EKS.

Assurez-vous de répéter ces étapes avec le deuxième cluster EKS de votre bloc d'exécution, dans l'autre région, afin de vous assurer que les deux clusters sont accessibles par le commutateur de région.

Configuration

Important

Avant d'ajouter une étape de dimensionnement des ressources EKS, assurez-vous d'abord que vous avez configuré les autorisations appropriées. Pour de plus amples informations, veuillez consulter Configurer les autorisations d'accès EKS. Assurez-vous également que vous avez mis en place la bonne politique IAM. Pour de plus amples informations, veuillez consulter Exemple de politique de bloc d'exécution de mise à l'échelle des ressources Amazon EKS.

Notez que le commutateur de région prend actuellement en charge les ReplicaSet ressources suivantes : apps/v1, Déploiement et apps/v1.

Pour la configuration du bloc d'exécution, entrez les valeurs suivantes.

  1. Nom de l'étape : entrez un nom.

  2. Description de l'étape (facultatif) : entrez une description de l'étape.

  3. Nom de l'application : entrez le nom de votre application EKS, par exemple MyApplication.

  4. Type de ressource Kubernetes : entrez le type de ressource pour l'application, par exemple, Déploiement.

  5. Ressource pour la région  : pour chaque région, entrez les informations relatives au cluster EKS, notamment l'ARN du cluster EKS, l'espace de noms des ressources, etc.

  6. Pourcentage correspondant à la capacité de la région activée : entrez le pourcentage souhaité de pods en cours d'exécution dans la région source à correspondre à la région activée.

  7. Approche de surveillance de la capacité : la seule option de surveillance de la capacité est déjà sélectionnée, la capacité de fonctionnement maximale étant échantillonnée sur 24 heures.

    Cette approche de surveillance des capacités utilise la ReplicaCount valeur des demandes de service EKS. Pour plus d'informations, consultez la section En savoir plus sur le changement de zone ARC dans Amazon EKS dans le guide de l'utilisateur d'Amazon Elastic Kubernetes Service.

  8. Délai d'attente : entrez une valeur de délai d'attente.

Choisissez ensuite Enregistrer l'étape.

Comment ça marche

Lors de l'exécution d'un plan, le commutateur de région extrait le nombre maximum de répliques échantillonné au cours des 24 dernières heures pour la ressource cible dans la région que vous activez. Il calcule ensuite le nombre de répliques souhaité pour la ressource de destination à l'aide de la formule suivante : ceil(percentToMatch * Source replica count)

Si le nombre de répliques prêtes pour la destination est inférieur à la valeur souhaitée, le commutateur régional adapte la valeur des répliques de la ressource de destination à la capacité souhaitée. Il attend que les répliques soient prêtes et exploite le scaler automatique de votre nœud pour augmenter la capacité du nœud si nécessaire.

Si le hpaName champ facultatif n'est pas vide, le commutateur de région corrige le correctif HorizontalPodAutoscaler pour empêcher toute réduction automatique pendant ou après l'exécution en utilisant le correctif suivant : {"spec":{"behavior":{"scaleDown":{"selectPolicy":"Disabled"}}}}

Assurez-vous de configurer tout outil de correction de dérive, tel que l' GitOps outillage, de manière à ignorer le champ de réplication pour les ressources du correctif, ainsi que le champ. HorizontalPodAutoscaler