Aidez à améliorer cette page
Pour contribuer à ce guide de l’utilisateur, cliquez sur le lien Modifier cette page sur GitHub qui se trouve dans le volet droit de chaque page.
Déploiement d’une charge de travail de gonflement dans un cluster du mode automatique Amazon EKS
Ce tutoriel montre comment déployer une charge de travail d’exemple dans un cluster du mode automatique EKS et observer le provisionnement automatique des ressources de calcul nécessaires. Vous utiliserez des commandes kubectl pour surveiller le comportement du cluster et constater concrètement comment le mode automatique simplifie les opérations Kubernetes sur AWS. À la fin de ce tutoriel, vous comprendrez comment le mode automatique EKS réagit aux déploiements de charges de travail en gérant automatiquement les ressources de calcul sous-jacentes, sans configuration manuelle de groupes de nœuds.
Prérequis
-
Un cluster du mode automatique Amazon EKS. Notez le nom et la région AWS du cluster.
-
Un principal IAM, tel qu’un utilisateur ou un rôle, disposant d’autorisations suffisantes pour gérer le réseau, le calcul et les ressources EKS.
-
Pour plus d’informations, consultez la section Création de rôles et attribution de politiques dans le Guide de l’utilisateur IAM.
-
-
CLI
awsinstallée et configurée avec une identité IAM. -
CLI
kubectlinstallée et connectée au cluster.-
Pour de plus amples informations, consultez Configuration pour utiliser Amazon EKS.
-
Étape 1 : consulter les ressources de calcul existantes (facultatif)
Tout d’abord, utilisez kubectl pour répertorier les groupes de nœuds de votre cluster.
kubectl get nodepools
Exemple de résultat :
general-purpose
Dans ce tutoriel, nous allons déployer une charge de travail configurée pour utiliser le groupe de nœuds general-purpose. Ce groupe de nœuds est intégré au mode automatique EKS et propose des valeurs par défaut raisonnables pour des charges générales, comme des microservices et des applications web. Vous pouvez créer votre propre groupe de nœuds. Pour de plus amples informations, consultez Create a Node Pool for EKS Auto Mode.
Ensuite, utilisez kubectl pour répertorier les nœuds connectés à votre cluster.
kubectl get nodes
Si vous venez de créer un cluster du mode automatique EKS, vous n’aurez aucun nœud.
Dans ce tutoriel, vous allez déployer un exemple de charge de travail. Si vous n’avez aucun nœud ou si la charge de travail ne peut pas être adaptée aux nœuds existants, le mode automatique EKS provisionnera un nouveau nœud.
Étape 2 : déployer un exemple d’application sur votre cluster
Consultez le déploiement Kubernetes suivant et enregistrez-le sous inflate.yaml
apiVersion: apps/v1 kind: Deployment metadata: name: inflate spec: replicas: 1 selector: matchLabels: app: inflate template: metadata: labels: app: inflate spec: terminationGracePeriodSeconds: 0 nodeSelector: eks.amazonaws.com/compute-type: auto securityContext: runAsUser: 1000 runAsGroup: 3000 fsGroup: 2000 containers: - name: inflate image: public.ecr.aws/eks-distro/kubernetes/pause:3.7 resources: requests: cpu: 1 securityContext: allowPrivilegeEscalation: false
Notez que le sélecteur eks.amazonaws.com/compute-type: auto nécessite que la charge de travail soit déployée sur un nœud du mode automatique Amazon EKS.
Appliquez le déploiement à votre cluster.
kubectl apply -f inflate.yaml
Étape 3 : surveiller les événements Kubernetes
Utilisez la commande suivante pour surveiller les événements Kubernetes, notamment la création d’un nouveau nœud. Utilisez ctrl+c pour arrêter la surveillance des événements.
kubectl get events -w --sort-by '.lastTimestamp'
Utilisez kubectl pour répertorier à nouveau les nœuds connectés à votre cluster. Notez le nœud nouvellement créé.
kubectl get nodes
Étape 4 : afficher les nœuds et les instances dans la console AWS
Vous pouvez afficher les nœuds du mode automatique EKS dans la console EKS, ainsi que les instances EC2 associées dans la console EC2.
Les instances EC2 déployées par le mode automatique EKS sont soumises à des restrictions. Vous ne pouvez pas exécuter de commandes arbitraires sur les nœuds du mode automatique EKS.
Étape 5 : supprimer le déploiement
Utilisez kubectl pour supprimer l’exemple de déploiement
kubectl delete -f inflate.yaml
Si aucune autre charge de travail n’est déployée sur votre cluster, le nœud créé par le mode automatique EKS sera vide.
Dans la configuration par défaut, le mode automatique EKS détecte les nœuds vides depuis trente secondes et les arrête.
Utilisez kubectl ou la console EC2 pour confirmer que l’instance associée a été supprimée.