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.
Rôle IAM de cluster Amazon EKS
Un rôle IAM du cluster Amazon EKS est requis pour chaque cluster. Les clusters Kubernetes gérés par Amazon EKS utilisent ce rôle pour gérer les nœuds, tandis que l’ancien fournisseur de cloud
Avant de pouvoir créer des clusters Amazon EKS, vous devez créer un rôle IAM avec l'une des politiques IAM suivantes :
-
Une politique IAM personnalisée. Les autorisations minimales ci-dessous permettent au cluster Kubernetes de gérer les nœuds, mais n’autorisent pas l’ancien fournisseur de cloud
à créer des équilibreurs de charge avec Elastic Load Balancing. Votre politique IAM personnalisée doit disposer au moins des autorisations suivantes : { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "ForAnyValue:StringLike": { "aws:TagKeys": "kubernetes.io/cluster/*" } } }, { "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DescribeDhcpOptions", "ec2:DescribeAvailabilityZones", "ec2:DescribeInstanceTopology", "kms:DescribeKey" ], "Resource": "*" } ] }
Note
Avant le 3 octobre 2023, AmazoneksClusterPolicy était requis pour le rôle IAM de chaque cluster.
Avant le 16 avril 2020, les politiques AmazonEKSServicePolicy et AmazonEKSClusterPolicy étaient nécessaires et le nom suggéré pour le rôle était eksServiceRole. Depuis l’introduction du rôle lié au service AWSServiceRoleForAmazonEKS, la politique AmazonEKSServicePolicy n’est plus requise pour les clusters créés à partir du 16 avril 2020.
Recherche d'un rôle de cluster existant
Vous pouvez utiliser la procédure suivante pour vérifier si votre compte possède déjà le rôle de cluster Amazon EKS.
-
Ouvrez la console IAM à l’adresse https://console.aws.amazon.com/iam/
. -
Dans le volet de navigation de gauche, choisissez Rôles.
-
Recherchez dans la liste des rôles
eksClusterRole. Si un rôle qui incluteksClusterRolen’existe pas, consultez Création du rôle de cluster Amazon EKS pour créer le rôle. Si un rôle qui incluteksClusterRoleexiste, sélectionnez le rôle pour afficher les politiques attachées. -
Choisissez Permissions (Autorisations).
-
Assurez-vous que la politique gérée AmazonEKSClusterPolicy est attachée au rôle. Si la politique est attachée, votre rôle de cluster Amazon EKS est configuré correctement.
-
Sélectionnez l'onglet Trust relationships (Relations d'approbation), puis Edit trust policy (Modifier la relation d'approbation).
-
Vérifiez que la relation d'approbation contient la politique suivante. Si la relation d'approbation correspond à la politique ci-dessous, sélectionnez Annuler. Si la relation d’approbation ne correspond pas, copiez la politique dans la fenêtre Modifier la politique d’approbation et sélectionnez Mettre à jour la politique.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "eks.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Création du rôle de cluster Amazon EKS
Pour créer le rôle de cluster, vous pouvez utiliser la AWS Management Console ou la CLI AWS.
- AWS Management Console
-
-
Ouvrez la console IAM à l’adresse https://console.aws.amazon.com/iam/
. -
Choisissez Roles (Rôles) puis Create role (Créer un rôle).
-
Sous Type d’entité approuvée, choisissez Service AWS.
-
Dans la liste déroulante Cas d’utilisation pour d’autres services AWS, choisissez EKS.
-
Sélectionnez EKS - Cluster pour votre cas d'utilisation, puis Next (Suivant).
-
Sous l'onglet Add permissions (Ajouter des autorisations), sélectionnez Next (Suivant).
-
Pour Role name (Nom de rôle), saisissez un nom unique pour votre rôle, par exemple,
eksClusterRole. -
Pour Description, saisissez un texte descriptif tel que
Amazon EKS - Cluster role. -
Sélectionnez Créer un rôle.
-
- AWS CLI
-
-
Copiez le contenu suivant dans un fichier nommé
cluster-trust-policy.json.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "eks.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } -
Créez le rôle. Vous pouvez remplacer
eksClusterRolepar tout nom de votre choix.aws iam create-role \ --role-name eksClusterRole \ --assume-role-policy-document file://"cluster-trust-policy.json" -
Attachez la politique IAM requise au rôle.
aws iam attach-role-policy \ --policy-arn arn:aws:iam::aws:policy/AmazonEKSClusterPolicy \ --role-name eksClusterRole
-