Formation DevOps | Formation kubernetes : 4 - Configurer USER IAM sur Kubernetes AWS (EKS)
Ajouter un utilisateur IAM au cluster EKS ?
Créez ClusterRole avec un accès [“get”, “create”,“update”, “delete”, “list”, “watch”] sur [“deployments”, “configmaps”,“pods”, “secrets”, “services”] au
cluster Kubernetes et liez-le au readergroupe via ClusterRoleBinding. Nommez le fichier admin.yaml.
vim admin.yaml
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: admin
rules:
- apiGroups: ["*"]
resources: ["deployments", "configmaps", "pods", "secrets", "services"]
verbs: ["get", "list", "watch"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin
subjects:
- kind: Group
name: admin
apiGroup: rbac.authorization.k8s.io
roleRef:
kind: ClusterRole
name: admin
apiGroup: rbac.authorization.k8s.io
Appliquez les politiques RBAC avec kubectl.
kubectl apply -f admin.yaml
Créez une stratégie IAM pour permettre aux utilisateurs d’afficher les nœuds et les charges de travail de tous les clusters dans AWS Management Console.
Donne lui un nom AmazonEKSViewNodesAndWorkloadsPolicy.
AmazonEKSViewNodesAndWorkloadsPolicy
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"eks:DescribeNodegroup",
"eks:ListNodegroups",
"eks:DescribeCluster",
"eks:ListClusters",
"eks:AccessKubernetesApi",
"ssm:GetParameter",
"eks:ListUpdates",
"eks:ListFargateProfiles"
],
"Resource": "*"
}
]
}
Nous pouvons attacher la stratégie IAM directement à l’utilisateur IAM ou suivre les meilleures pratiques et créer d’abord un groupe IAM. Appelons-le developer set attachons AmazonEKSViewNodesAndWorkloadsPolicyla stratégie IAM.
Ensuite, nous avons besoin d’un utilisateur IAM. Créons-en un et appelons-le developer. Nous allons le placer dans developersle groupe IAM avec un accès en
lecture seule. N’oubliez pas de télécharger les informations d’identification, nous les utiliserons pour configurer AWS cli.
Maintenant, nous devons créer un profil aws local à l’aide developerdes informations d’identification de l’utilisateur. Pour ce faire, ajoutez simplement
–profile un indicateur à aws configure la commande.
aws configure --profile admin
Pour mapper l’utilisateur IAM avec le système Kubernetes RBAC, nous devons modifier aws-authla carte de configuration. Ouvrez la carte de configuration et
ajoutez l’arn de l’utilisateur IAM sous mapUsersla clé.
kubectl edit -n kube-system configmap/aws-auth
Mais cette solution n’est pas recommendé car on peut avoir des erreurs humain et ça peut impacter les accés au cluster
mapUsers: |
- userarn: arn:aws:iam::424432388155:user/admin
username: admin
groups:
- admin
Donc on va manipulier ekctl create iamidentitymapping
:
eksctl create iamidentitymapping --cluster basic-cluster --region=eu-west-1 --arn arn:aws:iam::670270766287:user/user1 --group admin --username admin
kubectl describe -n kube-system configmap/aws-auth
Maintenant, nous devons passer à admin user. Nous devons mettre à jour le contexte Kubernetes à l’aide du admin profil.
N’oubliez pas de mettre à jour la région et le nom du cluster.
aws eks update-kubeconfig --region eu-west-1 --name basic-cluster --profile admin
Vous pouvez vérifier le contexte Kubernetes dans lequel vous utilisez developerle profil pour interagir avec le cluster EKS.
kubectl config view --minify
À présent, nous avons créé une stratégie RBAC avec un accès en lecture seule et l’avons mappée à l’ developerutilisateur IAM. Voyons maintenant ce que nous
pouvons faire dans notre cluster. Vous pouvez exécuter kubectl auth can-i pour vérifier l’accès. Vérifions d’abord si nous pouvons obtenir des pods
dans le cluster Kubernetes. La réponse devrait être yes.
kubectl auth can-i get pods
1. Nous contactez
- Description: Besoin de Formation et des Solutions cloud complètes pour vos applications
- Links:
2. Infra as a Service
- Description: Infrastructure cloud évolutive et sécurisée
- Links:
3. Projets Développeurs
- Description: Découvrez des opportunités passionnantes pour les développeurs
- Links:
4. Développeurs
- Description: Rejoignez notre communauté de développeurs
- Links:
5. Formations Complètes
- Description: Accédez à des formations professionnelles de haute qualité
- Links:
6. Marketplace
- Description: Découvrez notre place de marché de services
- Links:
7. Blogs
- Description: Découvrez nos blogs
- Links:
- comment creer une application mobile ?
- Comment monitorer un site web ?
- Command Checkout in git ?
- Comment git checkout to commit ?
- supprimer une branche git
- dockercoin
- kubernetes c est quoi
- architecture kubernetes
- Installer Gitlab Runner ?
- .gitlab-ci.yml exemples
- CI/CD
- svelte 5 vs solid
- svelte vs lit
- solidjs vs qwik
- alpine vs vue
- Plateform Freelance 2025
- Creation d’un site Web gratuitement
This website is powered by ItGalaxy.io