Get Hands-on with Amazon EKS - Workshop Event Series
Whether you're taking your first steps with Kubernetes or you're an experienced practitioner looking to sharpen your skills, our Amazon EKS workshop series delivers practical, real-world experience that moves you forward. Learn directly from AWS solutions architects and EKS specialists through hands-on sessions designed to build your confidence with Kubernetes. Register now and start building with Amazon EKS!
Comment résoudre les problèmes d'accès dans mes clusters Amazon EKS ?
Je rencontre des problèmes lorsque j'essaie d'accorder l'accès à mes clusters Amazon Elastic Kubernetes Service (Amazon EKS).
Résolution
Remarque : Si des erreurs surviennent lorsque vous exécutez des commandes de l'interface de la ligne de commande AWS (AWS CLI), consultez la section Résoudre des erreurs liées à l’AWS CLI. Vérifiez également que vous utilisez bien la version la plus récente de l'interface.
Utilisez les entrées d'accès Amazon EKS pour accorder l'accès à l'API Kubernetes aux utilisateurs et aux rôles AWS Identity and Access Management (IAM).
Configurer les autorisations du principal IAM
Le principal IAM doit disposer des autorisations suivantes pour votre cluster :
- CreateAccessEntry
- ListAccessEntries
- DescribeAccessEntry
- DeleteAccessEntry
- UpdateAccessEntry
- ListAccessPolicies
- AssociateAccessPolicy
- DisassociateAccessPolicy
Pour plus d'informations sur les autorisations Amazon EKS, consultez la section Actions définies par Amazon Elastic Kubernetes Service.
Configurer les autorisations relatives à la politique d'accès
La politique d'accès définit le niveau d'accès qui permet à un utilisateur d'accéder à l'API Kubernetes. Utilisez les politiques suivantes pour créer des entrées d'accès :
- AmazonEKSAdminPolicy
- AmazonEKSClusterAdminPolicy
- AmazonEKSAdminViewPolicy
- AmazonEKSEditPolicy
- AmazonEKSViewPolicy
Lorsque vous créez des entrées d'accès avec les politiques précédentes, vous accordez l'accès à un espace de noms pour les autorisations au niveau du cluster Kubernetes.
Remarque : Vous ne pouvez pas modifier le contenu d'une politique d'accès ni créer vos propres politiques d'accès.
Autoriser les utilisateurs IAM à accéder à votre cluster Amazon EKS
Modifier le mode d'authentification
Important : Une fois que vous avez activé la méthode de saisie d'accès, vous ne pouvez plus la désactiver à nouveau.
Pour utiliser les entrées d'accès, mettez à jour le mode d'authentification du cluster Amazon EKS sur API ou API_AND_CONFIG_MAP. Exécutez la commande update-cluster-config de l'AWS CLI suivante :
aws eks update-cluster-config \ --name my-cluster \ --access-config authenticationMode=API_AND_CONFIG_MAP
Remarque : Remplacez my-cluster par le nom de votre cluster. Pour désactiver définitivement la méthode ConfigMap, remplacez API_AND_CONFIG_MAP par API.
Créer une entrée d'accès pour l'entité IAM et associer la politique d'accès
Fournissez un accès administrateur de cluster à votre cluster Amazon EKS. Tout d'abord, exécutez la commande create-access-entry suivante pour créer une entrée d'accès pour votre utilisateur ou votre rôle IAM :
aws eks create-access-entry --cluster-name my-cluster \ --principal-arn arn:aws:iam::111122223333:user/example-user
Remarque : Remplacez my-cluster par le nom de votre cluster et arn:aws:iam::111122223333:user/example-user par votre rôle IAM ou l'ARN de votre utilisateur.
Puis, exécutez la commande associate-access-policy suivante pour associer AmazonEKSClusterAdminPolicy à l’utilisateur ou au rôle IAM :
aws eks associate-access-policy --cluster-name my-cluster\ --principal-arn arn:aws:iam::111122223333:user/example-user \ --policy-arn arn:aws:eks::aws:cluster-access-policy/AmazonEKSClusterAdminPolicy \ --access-scope type=cluster
Remarque : Remplacez my-cluster par le nom de votre cluster et arn:aws:iam::111122223333:user/example-user par votre rôle IAM ou l'ARN de votre utilisateur.
Pour fournir à l'utilisateur ou au rôle IAM un accès administrateur à un espace de noms spécifique, exécutez la commande associate-access-policy suivante :
aws eks associate-access-policy --cluster-name my-cluster\ --principal-arn arn:aws:iam::111122223333:role/example-role \ --policy-arn arn:aws:eks::aws:cluster-access-policy/AmazonEKSAdminPolicy \ --access-scope type=namespace,namespaces=test*
Remarque : Remplacez my-cluster par le nom de votre cluster et arn:aws:iam::111122223333:role/example-role par votre rôle IAM ou l'ARN de l'utilisateur. Remplacez également test par le nom de votre espace de noms.
Pour utiliser les entrées d'accès avec contrôle d'accès basé sur les rôles (RBAC) Kubernetes, exécutez la commande create-access-entry :
aws eks create-access-entry --cluster-name my-cluster \ --principal-arn arn:aws:iam::111122223333:role/example-role-2 \ --kubernetes-groups viewers
Remarque : Remplacez my-cluster par le nom de votre cluster et arn:aws:iam::111122223333:user/example-role-2 par votre rôle IAM ou l'ARN de l'utilisateur. Remplacez viewers par le nom du groupe spécifié dans l'objet Kubernetes RoleBinding ou ClusterRoleBinding de votre cluster.
Confirmer les informations d'identification de votre entité IAM
Pour vérifier les informations d'identification de l'utilisateur ou du rôle IAM utilisées sur l'AWS CLI, exécutez la commande get-caller-identity suivante :
aws sts get-caller-identity
La sortie de commande doit renvoyer l'utilisateur ou le rôle IAM pour lequel vous avez créé une entrée d'accès. Si vous recevez un rôle ou un utilisateur IAM différent, assurez-vous d'avoir correctement configuré le rôle ou les informations d'identification de l'utilisateur.
Créer Kubeconfig pour votre entité IAM
Pour créer le Kubeconfig pour votre rôle ou utilisateur IAM, exécutez la commande update-kubeconfig suivante :
aws eks update-kubeconfig --name my-cluster --region aws-region
Remarque : Remplacez my-cluster par le nom de votre cluster et aws-region par votre région AWS.
Vérifier votre accès à Kubernetes
Vérifiez que votre entité IAM est authentifiée et que vous pouvez accéder aux ressources de votre cluster Amazon EKS.
Pour vérifier si vous pouvez créer des pods dans n'importe quel espace de noms, exécutez la commande suivante :
kubectl auth can-i create pods --all-namespaces
Pour vérifier si vous pouvez répertorier les déploiements dans un espace de noms spécifique, exécutez la commande suivante :
kubectl auth can-i list deployments.apps -n test
Remarque : Remplacez test par le nom de votre espace de noms.
- Sujets
- Containers
- Langue
- Français

Contenus pertinents
- demandé il y a 3 ans
- demandé il y a 2 ans
AWS OFFICIELA mis à jour il y a un an
AWS OFFICIELA mis à jour il y a 5 mois