Création d'un cluster Amazon EKS - Amazon EKS

Aidez à améliorer cette page

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.

Vous souhaitez contribuer à ce guide de l'utilisateur ? Choisissez le GitHub lien Modifier cette page sur qui se trouve dans le volet droit de chaque page. Vos contributions aideront à améliorer notre guide de l'utilisateur pour tout le monde.

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.

Création d'un cluster Amazon EKS

Note

Cette rubrique traite de la création de clusters EKS sans le mode automatique EKS.

Pour obtenir des instructions détaillées sur la création d'un cluster en mode automatique EKS, consultezCréation d'un cluster en mode automatique Amazon EKS.

Pour commencer à utiliser le mode automatique EKS, voirCommencez avec Amazon EKS — Mode automatique EKS.

Cette rubrique fournit une vue d'ensemble des options disponibles et décrit les éléments à prendre en compte lorsque vous créez un cluster Amazon EKS. Si vous devez créer un cluster avec votre infrastructure sur site pour le calcul des nœuds, reportez-vous à la section Création d'un cluster EKS avec des nœuds hybrides. Si c'est la première fois que vous créez un cluster Amazon EKS, nous vous recommandons de suivre l'un de nos guidesMise en route avec Amazon EKS. Ces guides vous aident à créer un cluster par défaut simple sans développer toutes les options disponibles.

Prérequis

  • Un VPC et des sous-réseaux existants qui répondent aux exigences Amazon EKS. Avant de déployer un cluster pour une utilisation en production, nous vous recommandons de bien connaître les exigences du VPC et du sous-réseau. Si vous n'avez pas de VPC ni de sous-réseaux, vous pouvez les créer à l'aide d'un modèle fourni par Amazon EKS. AWS CloudFormation

  • L'outil de ligne de commande kubectl est installé sur votre appareil ou AWS CloudShell. La version peut être identique ou supérieure à une version mineure antérieure ou ultérieure à Kubernetes version de votre cluster. Pour installer ou mettre à niveau kubectl, veuillez consulter Configurez kubectl et eksctl.

  • Version 2.12.3 ou version ultérieure 1.27.160 ou version ultérieure de l'interface de ligne de AWS commande (AWS CLI) installée et configurée sur votre appareil ou AWS CloudShell. Pour vérifier votre version actuelle, utilisez aws --version | cut -d / -f2 | cut -d ' ' -f1. Des gestionnaires de packages tels que yumapt-get, ou Homebrew for macOS ont souvent plusieurs versions de retard sur la dernière version de la AWS CLI. Pour installer la dernière version, consultez la section Installation et configuration rapide avec aws configure dans le Guide de l'utilisateur de l'interface de ligne de AWS commande. La version de la AWS CLI installée AWS CloudShell peut également avoir plusieurs versions de retard par rapport à la dernière version. Pour le mettre à jour, consultez la section Installation de la AWS CLI dans votre répertoire de base dans le guide de AWS CloudShell l'utilisateur.

  • Un principal IAM disposant des autorisations create et describe sur un cluster Amazon EKS. Pour plus d’informations, consultez Créez un local Kubernetes cluster sur un avant-poste et Affichage de la liste ou description de tous les clusters.

Étape 1 : créer le rôle IAM du cluster

  1. Si vous possédez déjà un rôle IAM dans le cluster, ou si vous comptez créer votre cluster aveceksctl, vous pouvez ignorer cette étape. Par défaut, eksctl crée un rôle pour vous.

  2. Exécutez la commande suivante pour créer un fichier JSON de politique d'approbation IAM.

    cat >eks-cluster-role-trust-policy.json <<EOF { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "eks.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } EOF
  3. Créez le rôle IAM de cluster Amazon EKS. Si nécessaire, faites précéder eks-cluster-role-trust-policy.json par le chemin d'accès sur votre ordinateur sur lequel vous avez enregistré le fichier lors de l'étape précédente. La commande associe la politique d'approbation que vous avez créée lors de l'étape précédente à ce rôle. Pour créer un rôle IAM, le principal IAM qui crée le rôle doit se voir attribuer l'action (autorisation) IAM iam:CreateRole.

    aws iam create-role --role-name myAmazonEKSClusterRole --assume-role-policy-document file://"eks-cluster-role-trust-policy.json"
  4. Vous pouvez attribuer la politique gérée par Amazon EKS ou créer votre propre politique personnalisée. Pour connaître les autorisations minimales que vous devez utiliser dans votre politique personnalisée, consultez Rôle IAM de cluster Amazon EKS.

    Associez la politique gérée par Amazon EKS nommée Amazon EKSCluster Policy au rôle. Pour attacher une politique IAM à un principal IAM, le principal qui attache la politique doit se voir attribuer l'une des actions (autorisations) IAM iam:AttachUserPolicy ou iam:AttachRolePolicy.

    aws iam attach-role-policy --policy-arn arn:aws: iam::aws:policy/AmazonEKSClusterPolicy --role-name myAmazonEKSClusterRole

Rôle lié au service

Amazon EKS crée automatiquement un rôle lié à un service appeléAWSServiceRoleForAmazonEKS.

Cela s'ajoute au rôle IAM du cluster. Un rôle lié à un service est un type unique de rôle IAM lié directement à Amazon EKS. Ce rôle permet à Amazon EKS de gérer les clusters de votre compte. Pour de plus amples informations, veuillez consulter Utilisation de rôles pour les clusters Amazon EKS.

L'identité IAM que vous utilisez pour créer le cluster EKS doit être autorisée à créer le rôle lié à un service. Cela inclut l'iam:CreateServiceLinkedRoleautorisation.

Si le rôle lié au service n'existe pas déjà et que votre rôle IAM actuel ne dispose pas des autorisations suffisantes pour le créer, l'opération de création du cluster échouera.

Étape 2 : créer un cluster

Vous pouvez créer un cluster en utilisant :

Créer un cluster - eksctl

  1. Vous avez besoin d'0.199.0une version ou d'une version ultérieure de l'outil de ligne de eksctl commande installée sur votre appareil ou AWS CloudShell. Pour installer ou mettre à jour eksctl, veuillez consulter Installation dans la documentation de eksctl.

  2. Création d'un IPv4 cluster Amazon EKS avec la valeur par défaut d'Amazon EKS Kubernetes version dans votre AWS région par défaut. Avant d'exécuter la commande, effectuez les remplacements suivants :

  3. region-codeRemplacez-le par la AWS région dans laquelle vous souhaitez créer votre cluster.

  4. Remplacez my-cluster par un nom pour votre cluster. Un nom ne peut contenir que des caractères alphanumériques (sensibles à la casse) et des traits d'union. Il doit commencer par un caractère alphanumérique et ne doit pas dépasser 100 caractères. Le nom doit être unique dans la AWS région et le AWS compte dans lesquels vous créez le cluster.

  5. Remplacez la version 1.31 par n'importe quelle version prise en charge par Amazon EKS.

  6. Modifiez les valeurs de vpc-private-subnets pour répondre à vos besoins. Vous pouvez également en ajouter d'autres IDs. Vous devez spécifier au moins deux sous-réseaux IDs. Si vous préférez spécifier des sous-réseaux publics, vous pouvez passer --vpc-private-subnets à--vpc-public-subnets. Les sous-réseaux publics ont une table de routage associée avec une route vers une passerelle Internet, mais les sous-réseaux privés n'ont pas de table de routage associée. Nous recommandons d'utiliser des sous-réseaux privés dans la mesure du possible.

    Les sous-réseaux que vous choisissez doivent respecter les exigences relatives aux sous-réseaux d'Amazon EKS. Avant de sélectionner des sous-réseaux, nous vous recommandons de connaître toutes les exigences et considérations relatives aux VPC et aux sous-réseaux Amazon EKS.

  7. Exécutez la commande suivante :

    eksctl create cluster --name my-cluster --region region-code --version {k8s-n} --vpc-private-subnets subnet-ExampleID1,subnet-ExampleID2 --without-nodegroup

    L'approvisionnement de cluster dure plusieurs minutes. Pendant la création du cluster, plusieurs lignes de sortie apparaissent. La dernière ligne de sortie est similaire à celle de l'exemple suivant.

    [✓] EKS cluster "my-cluster" in "region-code" region is ready
  8. Continuez avec Étape 3 : Mettre à jour kubeconfig

Paramètres facultatifs

Pour afficher la plupart des options qui peuvent être spécifiées lors de la création d'un cluster avec eksctl, utilisez la commande eksctl create cluster --help. Pour consulter toutes les options disponibles, vous pouvez utiliser un fichier config. Pour plus d'informations, consultez Utilisation des fichiers de configuration et du schéma du fichier de configuration dans la documentation eksctl. Vous pouvez trouver des exemples de fichiers de configuration sur GitHub.

Les paramètres suivants sont des paramètres facultatifs qui, si nécessaire, doivent être ajoutés à la commande précédente. Vous pouvez activer ces options uniquement lorsque vous créez le cluster, et non après. Si vous devez spécifier ces options, vous devez créer le cluster avec un fichier de configuration eksctl et spécifier les paramètres, plutôt que d'utiliser la commande précédente.

  • Si vous souhaitez spécifier un ou plusieurs groupes de sécurité qu'Amazon EKS attribue aux interfaces réseau qu'il crée, spécifiez l'option SecurityGroup.

    Que vous choisissiez ou non un groupe de sécurité, Amazon EKS crée un groupe de sécurité qui permet la communication entre votre cluster et votre VPC. Amazon EKS associe ce groupe de sécurité, et tout ce que vous choisissez, aux interfaces réseau qu'il crée. Pour plus d'informations sur le groupe de sécurité de cluster créé par Amazon EKS, consultez Afficher les exigences relatives aux groupes de sécurité Amazon EKS pour les clusters. Vous pouvez modifier les règles dans le groupe de sécurité de cluster créé par Amazon EKS.

  • Si vous souhaitez spécifier quel bloc de routage interdomaine IPv4 sans classe (CIDR) Kubernetes attribue des adresses IP de service à partir de, spécifiez l'option IPv4CIDR du service.

    La spécification de votre propre plage peut aider à éviter les conflits entre Kubernetes services et autres réseaux appairés ou connectés à votre VPC. Entrez une plage en notation CIDR. olpPar exemple : 10.2.0.0/16.

    Le bloc d'adresse CIDR doit répondre aux critères suivants :

    • Être situé dans l'une des plages suivantes : 10.0.0.0/8, 172.16.0.0/12, ou 192.168.0.0/16.

    • Avoir une taille minimale de /24 et une taille maximale de /12.

    • Ne pas chevaucher la plage du VPC pour vos ressources Amazon EKS.

      Vous ne pouvez spécifier cette option que lorsque vous utilisez la famille d'adresses IPv4 et uniquement lors de la création du cluster. Si vous ne le spécifiez pas, alors Kubernetes attribue des adresses IP de service à partir des blocs 172.20.0.0/16 CIDR 10.100.0.0/16 ou CIDR.

  • Si vous créez un cluster et que vous souhaitez que le cluster attribue IPv6 des adresses à Pods et des services plutôt que des IPv4 adresses, spécifiez l'option IPFamily.

    Kubernetes attribue des IPv4 adresses à Pods et services, par défaut. Avant de décider d'utiliser la IPv6 famille, assurez-vous de connaître toutes les considérations et exigences relatives aux exigences et considérations relatives aux VPC, les exigences et considérations relatives aux sous-réseaux, consultez les exigences relatives aux groupes de sécurité Amazon EKS pour les clusters et les rubriques. En savoir plus sur IPv6 les adresses des clusters, Pods, et services Si vous choisissez la IPv6 famille, vous ne pouvez pas spécifier de plage d'adresses pour Kubernetes pour attribuer des adresses de IPv6 service comme vous le pouvez pour la IPv4 famille. Kubernetes attribue des adresses de service à partir de la plage d'adresses locale unique (fc00::/7).

Créer un cluster - AWS console

  1. Ouvrez la console Amazon EKS.

  2. Choisissez Add cluster (Ajouter un cluster), puis choisissez Create (Créer).

  3. Sous Options de configuration, sélectionnez Configuration personnalisée

  4. Sous Mode automatique EKS, désactivez l'option Utiliser le mode automatique EKS.

  5. Sur la page Configurer le cluster, renseignez les champs suivants :

    • Nom : nom de votre cluster. Le nom ne peut contenir que des caractères alphanumériques (en distinguant majuscules et minuscules), des traits d'union et des traits de soulignement. Il doit commencer par un caractère alphanumérique et ne doit pas dépasser 100 caractères. Le nom doit être unique dans la AWS région et le AWS compte dans lesquels vous créez le cluster.

    • Rôle IAM du cluster : choisissez le rôle IAM du cluster Amazon EKS que vous avez créé pour autoriser le Kubernetes plan de contrôle pour gérer les AWS ressources en votre nom.

    • Kubernetes version — La version de Kubernetes à utiliser pour votre cluster. Nous vous recommandons de sélectionner la dernière version, sauf si vous avez besoin d'une version antérieure.

    • Type de support — Le Kubernetes politique de version que vous souhaitez définir pour votre cluster. Si vous souhaitez que votre cluster fonctionne uniquement sur une version de support standard, vous pouvez choisir le support standard. Si vous souhaitez que votre cluster bénéficie du support étendu à la fin du support standard d'une version, vous pouvez choisir le support étendu. Si vous sélectionnez un Kubernetes version actuellement en support étendu, vous ne pouvez pas sélectionner le support standard en option.

    • Chiffrement des secrets — (Facultatif) Choisissez d'activer le chiffrement des secrets de Kubernetes secrets utilisant une clé KMS. Vous pouvez également activer cette option une fois que vous avez créé votre cluster. Avant d'activer cette fonctionnalité, assurez-vous de connaître les informations contenues dans Encrypt Kubernetes secrets with AWS KMS sur des clusters existants.

    • Identifications∘: (facultatif) ajoutez des identifications à votre cluster. Pour de plus amples informations, veuillez consulter Organisez les ressources Amazon EKS à l'aide de balises.

    • Déplacement de zone ARC - (facultatif) Vous pouvez utiliser le contrôleur Route53 Application Recovery pour atténuer les zones de disponibilité altérées. Pour de plus amples informations, veuillez consulter En savoir plus sur le changement de zone d'Amazon Application Recovery Controller (ARC) dans Amazon EKS.

  6. Dans la section Accès au cluster de la page de configuration du cluster, entrez les champs suivants :

    • Accès administrateur au cluster Bootstrap : le créateur du cluster est automatiquement un administrateur Kubernetes. Si vous souhaitez désactiver cette option, sélectionnez Interdire l'accès de l'administrateur du cluster.

    • Mode d'authentification du cluster : déterminez comment vous souhaitez accorder aux utilisateurs et aux rôles IAM l'accès à APIs Kubernetes. Pour de plus amples informations, veuillez consulter Définir le mode d'authentification du cluster.

      Lorsque vous avez terminé d'utiliser cette page, choisissez Suivant.

  7. Sur la page Spécifier les réseaux sélectionnez des valeurs pour les champs suivants :

    • VPC : choisissez un VPC existant qui répond aux exigences relatives au VPC Amazon EKS pour y créer votre cluster. Avant de choisir un VPC, nous vous recommandons de connaître toutes les exigences et considérations de View Amazon EKS concernant les exigences réseau pour les VPC et les sous-réseaux. Vous ne pouvez pas modifier le VPC que vous souhaitez utiliser après la création du cluster. Si aucun VPCs n'est répertorié, vous devez d'abord en créer un. Pour de plus amples informations, veuillez consulter Créez un Amazon VPC pour votre cluster Amazon EKS.

    • Sous-réseaux : par défaut, tous les sous-réseaux disponibles dans le VPC spécifié dans le champ précédent sont présélectionnés. Vous devez en sélectionner au moins deux.

      Les sous-réseaux que vous choisissez doivent respecter les exigences relatives aux sous-réseaux d'Amazon EKS. Avant de sélectionner des sous-réseaux, nous vous recommandons de connaître toutes les exigences et considérations relatives aux VPC et aux sous-réseaux Amazon EKS.

      Groupes de sécurité : (facultatif) spécifiez un ou plusieurs groupes de sécurité créant des interfaces réseau auxquelles vous souhaitez associer Amazon EKS.

      Que vous choisissiez ou non un groupe de sécurité, Amazon EKS crée un groupe de sécurité qui permet la communication entre votre cluster et votre VPC. Amazon EKS associe ce groupe de sécurité, et tout ce que vous choisissez, aux interfaces réseau qu'il crée. Pour plus d'informations sur le groupe de sécurité de cluster créé par Amazon EKS, consultez Afficher les exigences relatives aux groupes de sécurité Amazon EKS pour les clusters. Vous pouvez modifier les règles dans le groupe de sécurité de cluster créé par Amazon EKS.

    • Choisissez la famille d'adresses IP du cluster : vous pouvez choisir l'une ou l'autre IPv4et IPv6.

      Kubernetes attribue des IPv4 adresses à Pods et services, par défaut. Avant de décider d'utiliser la IPv6 famille, assurez-vous de connaître toutes les considérations et exigences énoncées dans les exigencesExigences et considérations requises pour les sous-réseaux, Afficher les exigences relatives aux groupes de sécurité Amazon EKS pour les clusters les considérations et les rubriques relatives aux VPC. En savoir plus sur IPv6 les adresses des clusters, Pods, et services Si vous choisissez la IPv6 famille, vous ne pouvez pas spécifier de plage d'adresses pour Kubernetes pour attribuer des adresses de IPv6 service comme vous le pouvez pour la IPv4 famille. Kubernetes attribue des adresses de service à partir de la plage d'adresses locale unique (fc00::/7).

    • (Facultatif) Choisissez Configurer Kubernetes Plage d'adresses IP de service et spécifiez une IPv4plage de services.

      La spécification de votre propre plage peut aider à éviter les conflits entre Kubernetes services et autres réseaux appairés ou connectés à votre VPC. Entrez une plage en notation CIDR. olpPar exemple : 10.2.0.0/16.

      Le bloc d'adresse CIDR doit répondre aux critères suivants :

      • Être situé dans l'une des plages suivantes : 10.0.0.0/8, 172.16.0.0/12, ou 192.168.0.0/16.

      • Avoir une taille minimale de /24 et une taille maximale de /12.

      • Ne pas chevaucher la plage du VPC pour vos ressources Amazon EKS.

    Vous ne pouvez spécifier cette option que lorsque vous utilisez la famille d'adresses IPv4 et uniquement lors de la création du cluster. Si vous ne le spécifiez pas, alors Kubernetes attribue des adresses IP de service à partir des blocs 172.20.0.0/16 CIDR 10.100.0.0/16 ou CIDR.

    • Pour Accès au point de terminaison de cluster, sélectionnez une option. Une fois votre cluster créé, vous pouvez modifier cette option. Avant de sélectionner une option autre que par défaut, assurez-vous de vous familiariser avec les options et leurs implications. Pour de plus amples informations, veuillez consulter Contrôlez l'accès réseau au point de terminaison du serveur API du cluster.

      Lorsque vous avez terminé d'utiliser cette page, choisissez Suivant.

  8. (Facultatif) Sur la page Configurer l'observabilité, choisissez quelles options de Métriques et de Journalisation du plan de contrôle doivent être activées. Par défaut, chaque type de journal est désactivé.

    Lorsque vous avez terminé d'utiliser cette page, choisissez Suivant.

  9. Sur la page Select add-ons (Sélectionner les modules complémentaires), choisissez les modules complémentaires que vous souhaitez ajouter à votre cluster. Certains modules complémentaires sont présélectionnés. Vous pouvez choisir autant de modules complémentaires Amazon EKS et de modules complémentaires AWS Marketplace que vous le souhaitez. Si les modules complémentaires AWS Marketplace que vous souhaitez installer ne figurent pas dans la liste, vous pouvez cliquer sur la numérotation des pages pour afficher des résultats supplémentaires ou rechercher les modules complémentaires AWS Marketplace disponibles en saisissant du texte dans le champ de recherche. Vous pouvez également filtrer par catégorie, fournisseur ou modèle de tarification, puis choisir les modules complémentaires dans les résultats de recherche. Lorsque vous créez un cluster, vous pouvez afficher, sélectionner et installer tout module complémentaire compatible avec EKS Pod Identities, comme indiqué dansDécouvrez comment EKS Pod Identity permet aux pods d'accéder aux AWS services.

    Lorsque vous avez terminé d'utiliser cette page, choisissez Suivant.

    Certains modules complémentaires, tels qu'Amazon VPC CNI, CoreDNS et kube-proxy, sont installés par défaut. Si vous désactivez l'un des modules complémentaires par défaut, cela peut affecter votre capacité à exécuter des applications Kubernetes.

  10. Sur la page Configurer les paramètres de modules complémentaires sélectionnés, sélectionnez la version que vous voulez installer. Vous pourrez toujours effectuer une mise à jour vers une version ultérieure après la création du cluster.

    Pour les modules complémentaires compatibles avec EKS Pod Identities, vous pouvez utiliser la console pour générer automatiquement le rôle avec le nom, la politique AWS gérée et la politique de confiance préremplis spécifiquement pour le module complémentaire. Vous pouvez réutiliser les rôles existants ou créer de nouveaux rôles pour les modules complémentaires pris en charge. Pour connaître les étapes d'utilisation de la console afin de créer des rôles pour les modules complémentaires compatibles avec EKS Pod Identities, voirCréer un module complémentaire (AWS console). Si un module complémentaire ne prend pas en charge EKS Pod Identity, un message contenant les instructions d'utilisation de l'assistant pour créer les rôles IAM pour les comptes de service (IRSA) s'affiche une fois le cluster créé.

    Vous pourrez mettre à jour la configuration de chaque module complémentaire après la création du cluster. Pour plus d'informations sur la configuration des modules complémentaires, consultez Mettre à jour un module complémentaire Amazon EKS. Lorsque vous avez terminé d'utiliser cette page, choisissez Suivant.

  11. Sur la page Vérifier et créer, passez en revue les informations que vous avez saisies ou sélectionnées sur les pages précédentes. Si vous devez apporter des modifications, choisissez Modifier. Lorsque vous êtes satisfait, choisissez Create. Le champ État affiche EN COURS DE CRÉATION pendant que le cluster est provisionné.

    Note

    Vous pouvez recevoir un message d'erreur indiquant que l'une des zones de disponibilité de votre demande n'a pas la capacité suffisante pour créer un cluster Amazon EKS. Si cela se produit, la sortie de l'erreur contient les zones de disponibilité qui peuvent prendre en charge un nouveau cluster. Essayez à nouveau de créer votre cluster avec au moins deux sous-réseaux situés dans les zones de disponibilité prises en charge pour votre compte. Pour de plus amples informations, veuillez consulter Capacité insuffisante.

    L'approvisionnement de cluster dure plusieurs minutes.

  12. Continuez avec Étape 3 : Mettre à jour kubeconfig

Créer un cluster - AWS CLI

  1. Créez votre cluster à l'aide de la commande suivante. Avant d'exécuter la commande, effectuez les remplacements suivants :

    • region-codeRemplacez-le par la AWS région dans laquelle vous souhaitez créer votre cluster.

    • Remplacez my-cluster par un nom pour votre cluster. Le nom ne peut contenir que des caractères alphanumériques (en distinguant majuscules et minuscules), des traits d'union et des traits de soulignement. Il doit commencer par un caractère alphanumérique et ne doit pas dépasser 100 caractères. Le nom doit être unique dans la AWS région et le AWS compte dans lesquels vous créez le cluster.

    • Remplacez la version 1.31 par n'importe quelle version prise en charge par Amazon EKS.

    • Remplacez 111122223333 par l'ID de votre compte et myAmazonEKSClusterRole par le nom de votre rôle IAM de cluster.

    • Remplacez les valeurs de subnetIds par vos propres valeurs. Vous pouvez également en ajouter d'autres IDs. Vous devez spécifier au moins deux sous-réseaux IDs.

      Les sous-réseaux que vous choisissez doivent respecter les exigences relatives aux sous-réseaux d'Amazon EKS. Avant de sélectionner des sous-réseaux, nous vous recommandons de connaître toutes les exigences et considérations relatives aux VPC et aux sous-réseaux Amazon EKS.

    • Si vous ne souhaitez pas spécifier d'ID de groupe de sécurité, ,securityGroupIds=sg-<ExampleID1> supprimez-le de la commande. Si vous souhaitez spécifier un ou plusieurs groupes de sécurité IDs, remplacez les valeurs de par securityGroupIds les vôtres. Vous pouvez également en ajouter d'autres IDs.

      Que vous choisissiez ou non un groupe de sécurité, Amazon EKS crée un groupe de sécurité qui permet la communication entre votre cluster et votre VPC. Amazon EKS associe ce groupe de sécurité, et tout ce que vous choisissez, aux interfaces réseau qu'il crée. Pour plus d'informations sur le groupe de sécurité de cluster créé par Amazon EKS, consultez Afficher les exigences relatives aux groupes de sécurité Amazon EKS pour les clusters. Vous pouvez modifier les règles dans le groupe de sécurité de cluster créé par Amazon EKS.

      aws eks create-cluster --region region-code --name my-cluster --kubernetes-version 1.31 \ --role-arn arn:aws: iam::111122223333:role/myAmazonEKSClusterRole \ --resources-vpc-config subnetIds=subnet-ExampleID1,subnet-ExampleID2,securityGroupIds=sg-ExampleID1
      Note

      Vous pouvez recevoir un message d'erreur indiquant que l'une des zones de disponibilité de votre demande n'a pas la capacité suffisante pour créer un cluster Amazon EKS. Si cela se produit, la sortie de l'erreur contient les zones de disponibilité qui peuvent prendre en charge un nouveau cluster. Essayez à nouveau de créer votre cluster avec au moins deux sous-réseaux situés dans les zones de disponibilité prises en charge pour votre compte. Pour de plus amples informations, veuillez consulter Capacité insuffisante.

      Les paramètres suivants sont des paramètres facultatifs qui, si nécessaire, doivent être ajoutés à la commande précédente. Vous pouvez activer ces options uniquement lorsque vous créez le cluster, et non après.

    • Par défaut, EKS installe plusieurs modules complémentaires réseau lors de la création du cluster. Cela inclut Amazon VPC CNI, CoreDNS et kube-proxy.

      Si vous souhaitez désactiver l'installation de ces modules complémentaires réseau par défaut, utilisez le paramètre ci-dessous. Cela peut être utilisé comme alternative CNIs, comme le cilium. Consultez la référence de l'API EKS pour plus d'informations.

      aws eks create-cluster --bootstrapSelfManagedAddons false

    • Si vous souhaitez spécifier quel bloc de routage interdomaine IPv4 sans classe (CIDR) Kubernetes attribue des adresses IP de service à partir de, vous devez le spécifier en ajoutant --kubernetes-network-config serviceIpv4Cidr=<cidr-block> la commande suivante.

      La spécification de votre propre plage peut aider à éviter les conflits entre Kubernetes services et autres réseaux appairés ou connectés à votre VPC. Entrez une plage en notation CIDR. olpPar exemple : 10.2.0.0/16.

      Le bloc d'adresse CIDR doit répondre aux critères suivants :

      • Être situé dans l'une des plages suivantes : 10.0.0.0/8, 172.16.0.0/12, ou 192.168.0.0/16.

      • Avoir une taille minimale de /24 et une taille maximale de /12.

      • Ne pas chevaucher la plage du VPC pour vos ressources Amazon EKS.

    Vous ne pouvez spécifier cette option que lorsque vous utilisez la famille d'adresses IPv4 et uniquement lors de la création du cluster. Si vous ne le spécifiez pas, alors Kubernetes attribue des adresses IP de service à partir des blocs 172.20.0.0/16 CIDR 10.100.0.0/16 ou CIDR.

  2. Le provisionnement du cluster prend quelques minutes. Vous pouvez vérifier le statut de votre cluster avec la commande suivante.

    aws eks describe-cluster --region region-code --name my-cluster --query "cluster.status"

    Ne passez pas à l'étape suivante tant que le résultat renvoyé ne l'est pasACTIVE.

  3. Continuez avec Étape 3 : Mettre à jour kubeconfig

Étape 3 : Mettre à jour kubeconfig

  1. Si vous avez créé votre cluster à l'aide de eksctl, vous pouvez ignorer cette étape. Cela est dû au fait que eksctl a déjà terminé cette étape pour vous. Activez kubectl pour communiquer avec votre cluster en ajoutant un nouveau contexte au fichier kubectl config. Pour plus d'informations sur la création et la mise à jour du fichier, consultez Connexion kubectl à un cluster EKS en créant un kubeconfig dans le fichier.

    aws eks update-kubeconfig --region region-code --name my-cluster

    L'exemple qui suit illustre un résultat.

    Added new context arn:aws: eks:region-code:111122223333:cluster/my-cluster to /home/username/.kube/config
  2. Confirmez la communication avec votre cluster en exécutant la commande suivante.

    kubectl get svc

    L'exemple qui suit illustre un résultat.

    NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 28h

Étape 4 : Configuration du cluster

  1. (Recommandé) Pour utiliser certains modules complémentaires Amazon EKS ou pour activer des modules individuels Kubernetes charges de travail pour disposer d'autorisations spécifiques de gestion des AWS identités et des accès (IAM), créez un fournisseur IAM OpenID Connect (OIDC) pour votre cluster. Il vous suffit de créer un IAM OIDC fournisseur pour votre cluster une fois. Pour en savoir plus sur les modules complémentaires Amazon EKS, consultez Modules complémentaires Amazon EKS. Pour en savoir plus sur l'attribution des autorisations IAM spécifiques à vos applications, consultez Rôles IAM pour les comptes de service.

  2. (Recommandé) Configurez votre cluster pour Amazon VPC CNI plugin for Kubernetes plugin avant de déployer EC2 des nœuds Amazon sur votre cluster. Par défaut, le plugin a été installé avec votre cluster. Lorsque vous ajoutez EC2 des nœuds Amazon à votre cluster, le plugin est automatiquement déployé sur chaque EC2 nœud Amazon que vous ajoutez. Le plug-in vous oblige à associer l'une des politiques IAM suivantes à un rôle IAM. Si votre cluster utilise cette IPv4 famille, utilisez la politique IAM gérée Amazoneks_CNI_Policy. Si votre cluster utilise cette IPv6 famille, utilisez une politique IAM que vous créez.

    Le rôle IAM auquel vous attachez la politique peut être le rôle IAM du nœud ou un rôle dédié utilisé uniquement pour le plugin. Nous vous recommandons d'associer la politique à ce rôle. Pour plus d'informations sur la création du rôle, consultez notre article Configurer le plug-in Amazon VPC CNI pour utiliser IRSA sur le rôle IAM du nœud Amazon EKS.

  3. Si vous avez déployé votre cluster à l'aide du AWS Management Console, vous pouvez ignorer cette étape. Le AWS Management Console déploie le Amazon VPC CNI plugin for Kubernetes, CoreDNS, et les modules complémentaires kube-proxy Amazon EKS, par défaut.

    Si vous déployez votre cluster à l'aide de l'une des deux options eksctl ou de la AWS CLI, le Amazon VPC CNI plugin for Kubernetes, CoreDNS, et des modules complémentaires kube-proxy autogérés sont déployés. Vous pouvez faire migrer le Amazon VPC CNI plugin for Kubernetes, CoreDNS, et des modules complémentaires kube-proxy autogérés déployés avec votre cluster sur les modules complémentaires Amazon EKS. Pour de plus amples informations, veuillez consulter Modules complémentaires Amazon EKS.

  4. (Facultatif) Si ce n'est pas déjà fait, vous pouvez activer Prometheus métriques pour votre cluster. Pour plus d'informations, consultez Création d'un scraper dans le Guide de l'utilisateur Amazon Managed Service for Prometheus.

  5. Si vous prévoyez de déployer des charges de travail sur votre cluster qui utilisent des volumes Amazon EBS et que vous avez créé un cluster 1.23 ou une version ultérieure, vous devez installer Amazon EBS CSI sur votre cluster avant de déployer les charges de travail.

Étapes suivantes