View a markdown version of this page

Mode automatique EKS - Amazon EKS

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.

Mode automatique EKS

Astuce

Découvrez les meilleures pratiques grâce aux ateliers Amazon EKS.

Amazon EKS Auto Mode représente une évolution significative de la gestion de l'infrastructure Kubernetes, combinant une infrastructure de cluster sécurisée et évolutive avec des fonctionnalités Kubernetes intégrées gérées par AWS. Le service fournit des opérations de nœuds de travail entièrement gérées, ce qui évite aux clients d'avoir à configurer des groupes ou AutoScaling des groupes de nœuds gérés.

La principale différence architecturale réside dans le fait que le mode automatique d'EKS utilise un Karpenter-based système qui provisionne automatiquement les instances EC2 en réponse aux demandes des pods. Ces instances s'exécutent sur des AMI Bottlerocket avec des modules complémentaires préinstallés tels que des pilotes EBS CSI, ce qui rend l'infrastructure réellement gérée par AWS. Contrairement aux méthodes de dimensionnement traditionnelles :

  • Le Cluster Autoscaler (CAS) traditionnel nécessite une gestion manuelle des groupes de nœuds et ne peut créer des nœuds qu'avec un seul type d'instance par groupe de nœuds

  • Self-managed Karpenter offre plus de flexibilité en utilisant l'API EC2 Fleet et peut provisionner différents types d'instances, mais nécessite une gestion des clients

  • Le mode automatique EKS gère automatiquement toutes les opérations de dimensionnement par le biais NodePools de NodeClasses

Le nouveau système introduit plusieurs améliorations opérationnelles :

  • Dimensionnement automatique piloté par pod sans configuration manuelle des groupes de nœuds

  • Built-in contrôleurs d'équilibrage de charge gérés qui créent automatiquement en ALB/NLB fonction des ressources d'entrée

  • Fonctions de sécurité intégrées avec identité Pod préconfigurée

  • Durée d'exécution maximale du nœud de 21 jours avec remplacement automatique

Du point de vue des coûts, EKS Auto Mode maintient la tarification EC2 standard tout en ajoutant des frais de gestion uniquement pour les Mode-managed nœuds automatiques. Il est important de noter que les clients peuvent toujours combiner des nœuds gérés en mode automatique avec des nœuds autogérés dans le même cluster.

AWS gère la plupart des aspects opérationnels, mais les clients restent responsables de la gestion des versions des clusters et peuvent effectuer des mises à niveau contrôlées qui déclenchent des mises à jour continues des nœuds de travail.

Pourquoi utiliser le mode automatique

Le mode automatique est destiné aux utilisateurs qui souhaitent bénéficier des avantages de Kubernetes et d'EKS tout en minimisant la charge opérationnelle liée à Kubernetes, comme les mises à niveau et les éléments critiques de la plate-forme tels que la mise à l'échelle automatique, l'équilibrage installation/maintenance de charge et le stockage. Le mode automatique permet à EKS de franchir une nouvelle étape en minimisant les tâches indifférenciées liées à la maintenance de Kubernetes

FAQ

Quelle est la différence entre le mode automatique EKS et le mode Open Source Karpenter ?

Le mode automatique EKS est une vaste suite de fonctionnalités qui simplifient l'exécution de Kubernetes de niveau production. L'une de ces fonctionnalités réside dans les avantages de mise à l'échelle automatique de Karpenter, entièrement géré. Du point de vue des opérations, la seule différence est qu'en mode EKS Auto, vous n'avez pas besoin de gérer le déploiement, la mise à l'échelle et la mise à niveau des modules Karpenter eux-mêmes. Toutes les autres opérations sont gérées NodeClasses et NodePools fonctionnent de la même manière qu'avec l'open source Karpenter.

Puis-je exécuter des groupes de nœuds gérés parallèlement à des Mode-managed nœuds automatiques ?

Oui, vous pouvez exécuter des groupes de nœuds gérés parallèlement à Mode-managed des nœuds automatiques dans le même cluster. Cette approche est courante lorsque vous migrez de groupes de nœuds gérés vers le mode automatique EKS. Pour plus d'informations, voir Activer le mode automatique EKS sur les clusters EKS existants.

Puis-je migrer un cluster du mode EKS standard vers le mode automatique EKS ?

Oui, les instructions pour activer le mode automatique EKS sur un cluster existant sont disponibles dans la documentation AWS officielle

Points à noter : 1. Après avoir activé le mode automatique, vous souhaiterez désinstaller tous les composants que vous aviez installés et qui sont désormais gérés par le mode automatique, comme Karpenter ou AWS Load Balancer Controller 2. Vous devez vous assurer que les modules complémentaires que vous avez installés sont à jour. Consultez la documentation.

Comment configurer NodePools en mode automatique EKS ?

Un nouveau cluster sera préconfiguré avec deux NodePools

à usage général

Usage général NodePool

Cela NodePool demande à Karpenter de lancer des nœuds présentant les caractéristiques suivantes :

  1. Type de capacité « À la demande »

  2. Types d'instances C, M ou R

  3. Génération d'instances de 4

  4. Architecture AMD

  5. SE Linux

Il définit également la logique de réduction en déclarant que seuls 10 % de tous les nœuds peuvent être dans un état perturbé à un moment donné et que la consolidation ne doit avoir lieu que lorsque les nœuds sont vides ou sous-utilisés.

system

Système NodePool

Ceci NodePool est similaire à un « usage général », à l'exception des différences suivantes :

  1. Il permet d'utiliser des nœuds dotés de l'architecture ARM ainsi que de l'architecture AMD

  2. Cela altère ces nœuds avec un, à NoSchedule moins qu'il n'y ait une tolérance pour « »CriticalAddonsOnly. Ceci est destiné à un usage interne par les modules complémentaires EKS

personnalisé

Vous pouvez créer votre propre personnalisation NodePools en fonction de vos besoins. Pour en savoir plus, NodePools veuillez consulter la documentation https://karpenter.sh/docs/concepts/nodepools/ Karpenter.

Puis-je personnaliser l'AMI utilisée par le mode automatique lorsque de nouveaux nœuds sont lancés ?

Non, actuellement, les seules AMI prises en charge concernent Amazon-provided Bottlerocket

Comment puis-je installer des outils ou des agents personnalisés sur mes hôtes Kubernetes ?

La personnalisation de l'AMI n'étant pas prise en charge, si vous avez besoin d'un logiciel au niveau de l'hôte pour des tâches telles que l'analyse de sécurité, vous devez déployer la charge de travail en tant que Kubernetes. DaemonSet

Quels composants s'exécutent dans le plan de données de mon cluster lorsque je provisionne un nouveau cluster EKS Auto Mode ?

Si vous créez un cluster avec eksctl ou la console AWS, les seuls espaces qui s'exécutent dans un cluster EKS Auto Mode sont les pods Kubernetes Metrics Server. Les autres composants d'EKS Auto Mode tels que Karpenter, le contrôleur AWS Load Balancer et le pilote EBS CSI sont tous exécutés et gérés hors cluster.

Quels composants gérés sont en cours d'exécution pour prendre en charge mon nouveau cluster EKS Auto Mode ?

Le mode automatique EKS automatise complètement le déploiement de la plupart des éléments d'un plan de données nécessaires à la production de Kubernetes. Cela inclut notamment les éléments suivants :

  • Karpenter, pour dimensionner automatiquement le calcul de votre cluster

  • AWS Load Balancer Controller pour vous permettre d'exposer facilement les services Kubernetes via l'intégration automatisée d'Elastic Load Balancer

  • PVC CNI

  • DNS de cluster

  • kube-proxy

  • EBS CSI

  • Agent d'identité du pod EKS

  • Agent de surveillance des nœuds EKS

Comment résoudre les problèmes liés aux composants du mode automatique qui fonctionnaient auparavant en tant que pods dans mon cluster ?

Avec le mode automatique EKS, de nombreux composants tels que le contrôleur AWS Load Balancer et Karpenter sont gérés pour vous en dehors de votre cluster. Vous n'aurez donc pas la même visibilité sur les journaux que celle à laquelle vous êtes habitué lorsque vous vous gérez vous-même. Si vous devez résoudre les problèmes liés à la fonctionnalité d'une fonctionnalité du mode automatique, créez un ticket de support AWS.