Rôle IAM de cluster Amazon 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.

Rôle IAM de cluster Amazon EKS

Le 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 et le fournisseur de cloud existant utilise ce rôle pour créer des équilibreurs de charge avec Elastic Load Balancing pour les services.

Avant de pouvoir créer des clusters Amazon EKS, vous devez créer un rôle IAM avec l'une des politiques IAM suivantes :

  • AmazonEKSClusterPolicy

  • Une politique IAM personnalisée. Les autorisations minimales suivantes permettent au cluster Kubernetes de gérer les nœuds, mais n'autorisent pas le fournisseur de cloud existant à 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", "kms:DescribeKey" ], "Resource": "*" } ] }
Note

Avant le 3 octobre 2023, le rôle IAM d'ClusterPolicyAmazoneks était requis pour chaque cluster.

Avant le 16 avril 2020, ServicePolicyAmazoneks était également obligatoire et le nom suggéré était. eksServiceRole Avec le rôle lié au service AWSServiceRoleForAmazonEKS, cette politique n'est plus nécessaire 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.

Pour vérifier eksClusterRole dans la console IAM
  1. Ouvrez la console IAM à l’adresse https://console.aws.amazon.com/iam/.

  2. Dans le panneau de navigation de gauche, choisissez Rôles.

  3. Recherchez dans la liste des rôles eksClusterRole. Si un rôle qui inclut eksClusterRole n'existe pas, consultez Création du rôle de cluster Amazon EKS pour créer le rôle. Si un rôle qui inclut eksClusterRole existe, sélectionnez le rôle pour afficher les politiques attachées.

  4. Choisissez Permissions (Autorisations).

  5. Assurez-vous que la politique gérée ClusterPolicy par Amazoneks est attachée au rôle. Si la politique est attachée, votre rôle de cluster Amazon EKS est configuré correctement.

  6. Sélectionnez l'onglet Trust relationships (Relations d'approbation), puis Edit trust policy (Modifier la relation d'approbation).

  7. 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 Edit trust policy (Modifier la politique d'approbation) et sélectionnez Update policy (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

Vous pouvez utiliser le AWS Management Console ou le AWS CLI pour créer le rôle de cluster.

AWS Management Console
Pour créer votre rôle de cluster Amazon EKS dans la console IAM
  1. Ouvrez la console IAM à l’adresse https://console.aws.amazon.com/iam/.

  2. Choisissez Roles (Rôles) puis Create role (Créer un rôle).

  3. Sous Type d'entité approuvée, choisissez Service AWS .

  4. Dans la liste déroulante Use cases for other Services AWS (Cas d'utilisation pour d'autres ), sélectionnez EKS.

  5. Sélectionnez EKS - Cluster pour votre cas d'utilisation, puis Next (Suivant).

  6. Sous l'onglet Add permissions (Ajouter des autorisations), sélectionnez Next (Suivant).

  7. Pour Role name (Nom de rôle), saisissez un nom unique pour votre rôle, par exemple, eksClusterRole.

  8. Pour Description, saisissez un texte descriptif tel que Amazon EKS - Cluster role.

  9. Sélectionnez Créer un rôle.

AWS CLI
  1. 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" } ] }
  2. Créez le rôle. Vous pouvez remplacer eksClusterRole par n'importe quel nom que vous choisissez.

    aws iam create-role \ --role-name eksClusterRole \ --assume-role-policy-document file://"cluster-trust-policy.json"
  3. Attachez la politique IAM requise au rôle.

    aws iam attach-role-policy \ --policy-arn arn:aws:iam::aws:policy/AmazonEKSClusterPolicy \ --role-name eksClusterRole