Aiutaci a migliorare questa pagina
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Vuoi contribuire a questa guida per l'utente? Scorri fino alla fine di questa pagina e seleziona Modifica questa pagina su GitHub. I tuoi contributi contribuiranno a rendere la nostra guida utente migliore per tutti.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
IAMRuolo EKS del nodo Amazon
Il kubelet
daemon del EKS nodo Amazon effettua chiamate AWS APIs a tuo nome. I nodi ricevono le autorizzazioni per queste API chiamate tramite un profilo di IAM istanza e le politiche associate. Prima di poter avviare i nodi e registrarli in un cluster, è necessario creare un IAM ruolo per tali nodi da utilizzare al momento dell'avvio. Questo requisito si applica ai nodi lanciati con Amazon EKS Optimized AMI fornito da Amazon o con qualsiasi altro nodo AMIs che intendi utilizzare. Inoltre, questo requisito si applica sia ai gruppi di nodi gestiti sia ai nodi autogestiti.
Nota
Non puoi utilizzare lo stesso ruolo utilizzato per creare alcun cluster.
Prima di creare i nodi, devi creare un IAM ruolo con le seguenti autorizzazioni:
-
Autorizzazioni
kubelet
per descrivere EC2 le risorse Amazon inVPC, come quelle fornite dalla mazonEKSWorker NodePolicy politica A. Questa policy fornisce anche le autorizzazioni per Amazon EKS Pod Identity Agent. -
Autorizzazioni
kubelet
per l'utilizzo di immagini di container da Amazon Elastic Container Registry (AmazonECR), come previsto dalla EC2ContainerRegistryPullOnly politica di Amazon. Le autorizzazioni per utilizzare le immagini dei contenitori da Amazon Elastic Container Registry (AmazonECR) sono necessarie perché i componenti aggiuntivi integrati per il networking eseguono pod che utilizzano immagini di contenitori di Amazon. ECR -
(Facoltativo) Autorizzazioni per l'Amazon EKS Pod Identity Agent a utilizzare l'
eks-auth:AssumeRoleForPodIdentity
azione per recuperare le credenziali per i pod. Se non utilizzi la A mazonEKSWorker NodePolicy, devi fornire questa autorizzazione oltre alle EC2 autorizzazioni per utilizzare Pod Identity. EKS ` -
(Facoltativo) Se non utilizzi IRSA o EKS Pod Identity per concedere le autorizzazioni ai VPC CNI pod, devi fornire le autorizzazioni per il ruolo VPC CNI on the instance. Puoi utilizzare la policy gestita `Amazon EKS _ CNI _Policy` (se hai creato il cluster con la famiglia IPv4 `) o una IPv6policy creata da te (se hai creato il cluster con la
IPv6
famiglia). Tuttavia, anziché associare la politica a questo ruolo, ti consigliamo di allegare la politica a un ruolo separato utilizzato specificamente per il VPC CNI componente aggiuntivo Amazon. Per ulteriori informazioni sulla creazione di un ruolo separato per il VPC CNI componente aggiuntivo Amazon, consultaConfigura il VPC CNI plug-in Amazon da utilizzare IRSA.
Nota
I gruppi di EC2 nodi Amazon devono avere un IAM ruolo diverso rispetto al profilo Fargate. Per ulteriori informazioni, consulta Amazon EKS Pod IAMruolo di esecuzione.
Verifica della presenza di un ruolo di nodo esistente
Puoi utilizzare la seguente procedura per verificare se il tuo account ha già il ruolo di EKS nodo Amazon.
-
Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/
. -
Nel pannello di navigazione a sinistra, seleziona Ruoli.
-
Ricerca
eksNodeRole
,AmazonEKSNodeRole
oNodeInstanceRole
nell'elenco di ruoli. Se non esiste un ruolo con uno di questi nomi, consulta la sezione relativa Creazione del IAM ruolo del EKS nodo Amazon alla creazione del ruolo. Se esiste un ruolo che contieneeksNodeRole
,AmazonEKSNodeRole
oNodeInstanceRole
, seleziona il ruolo per visualizzare le policy allegate. -
Seleziona Autorizzazioni.
-
Assicurati che le policy EC2ContainerRegistryPullOnly gestite da A mazonEKSWorker NodePolicy e Amazon siano associate al ruolo o che sia allegata una policy personalizzata con le autorizzazioni minime.
Nota
Se la policy di Amazon EKS _ CNI _Policy è associata al ruolo, ti consigliamo di rimuoverla e di collegarla a un IAM ruolo mappato al
aws-node
Kubernetes account di servizio invece. Per ulteriori informazioni, consulta Configura il VPC CNI plug-in Amazon da utilizzare IRSA. -
Scegli Trust relationships (Relazioni di attendibilità), quindi scegli Edit trust policy (Modifica policy di attendibilità).
-
Verifica che la relazione di trust includa la policy seguente. Se la relazione di attendibilità corrisponde alla policy seguente, scegli Cancel (Annulla). Se la relazione di fiducia non corrisponde, copia la politica nella finestra Modifica politica di fiducia e scegli Aggiorna politica.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sts:AssumeRole" ], "Principal": { "Service": [ "ec2.amazonaws.com" ] } } ] }
Creazione del IAM ruolo del EKS nodo Amazon
Puoi creare il IAM ruolo del nodo con AWS Management Console o il AWS CLI.
- AWS Management Console
-
-
Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/
. -
Nel pannello di navigazione a sinistra, seleziona Ruoli.
-
Nella pagina Ruoli, seleziona Crea ruolo.
-
Nella pagina Seleziona un'entità attendibile, esegui le operazioni seguenti:
-
Nella sezione Tipo di entità affidabile, scegli AWS servizio.
-
In Use case (Caso d'uso), scegli EC2.
-
Scegli Next (Successivo).
-
-
Nella pagina Aggiungi autorizzazioni, collega una policy personalizzata o esegui le operazioni seguenti:
-
Nella casella Filtra policy, inserisci
AmazonEKSWorkerNodePolicy
. -
Seleziona la casella di controllo a sinistra di A mazonEKSWorker NodePolicy nei risultati della ricerca.
-
Scegli Cancella filtri.
-
Nella casella Filtra policy, inserisci
AmazonEC2ContainerRegistryPullOnly
. -
Seleziona la casella di controllo a sinistra di Amazon EC2ContainerRegistryPullOnly nei risultati della ricerca.
La CNIpolicy gestita da Amazon EKS _ _Policy o una IPv6policy creata da te devono essere collegate anche a questo ruolo o a un ruolo diverso mappato al
aws-node
Kubernetes account di servizio. Si consiglia di assegnare la politica al ruolo associato al Kubernetes account di servizio anziché assegnarlo a questo ruolo. Per ulteriori informazioni, consulta Configura il VPC CNI plug-in Amazon da utilizzare IRSA. -
Scegli Next (Successivo).
-
-
Nella pagina Name, review, and create (Assegna un nome, rivedi e crea), esegui le operazioni seguenti:
-
Per Role name (Nome ruolo), inserisci un nome univoco per il ruolo, ad esempio
AmazonEKSNodeRole
. -
In Descrizione, sostituisci il testo corrente con un testo descrittivo come
Amazon EKS - Node role
. -
In Aggiungi tag (facoltativo), aggiungi metadati al ruolo collegando i tag come coppie chiave-valore. Per ulteriori informazioni sull'utilizzo dei tag inIAM, consulta Tagging IAM resources nella IAMUser Guide.
-
Scegliere Crea ruolo.
-
-
- AWS CLI
-
-
Per creare il file
node-role-trust-relationship.json
, emetti il seguente comando:cat >node-role-trust-relationship.json <<EOF { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sts:AssumeRole" ], "Principal": { "Service": [ "ec2.amazonaws.com" ] } } ] } EOF
-
Crea il IAM ruolo.
aws iam create-role \ --role-name AmazonEKSNodeRole \ --assume-role-policy-document file://"node-role-trust-relationship.json"
-
Allega due politiche IAM gestite obbligatorie al IAM ruolo.
aws iam attach-role-policy \ --policy-arn arn:aws: iam::aws:policy/AmazonEKSWorkerNodePolicy \ --role-name AmazonEKSNodeRole aws iam attach-role-policy \ --policy-arn arn:aws: iam::aws:policy/AmazonEC2ContainerRegistryPullOnly \ --role-name AmazonEKSNodeRole
-
Associa una delle seguenti IAM politiche al IAM ruolo a seconda della famiglia IP con cui hai creato il cluster. La policy deve essere associata a questo ruolo o a un ruolo associato a Kubernetes
aws-node
account di servizio utilizzato per Amazon VPC CNI plugin for Kubernetes. Si consiglia di assegnare la politica al ruolo associato a Kubernetes account di servizio. Per assegnare la politica al ruolo associato al Kubernetes account di servizio, vedereConfigura il VPC CNI plug-in Amazon da utilizzare IRSA.-
IPv4
aws iam attach-role-policy \ --policy-arn arn:aws: iam::aws:policy/AmazonEKS_CNI_Policy \ --role-name AmazonEKSNodeRole
-
IPv6
-
Copiare il testo seguente e salvarlo in un file denominato
vpc-cni-ipv6-policy.json
.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:AssignIpv6Addresses", "ec2:DescribeInstances", "ec2:DescribeTags", "ec2:DescribeNetworkInterfaces", "ec2:DescribeInstanceTypes" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": [ "arn:aws: ec2:*:*:network-interface/*" ] } ] }
-
Crea la IAM politica.
aws iam create-policy --policy-name AmazonEKS_CNI_IPv6_Policy --policy-document file://vpc-cni-ipv6-policy.json
-
Allega la IAM politica al IAM ruolo. Sostituisci
111122223333
con l'ID del tuo account.aws iam attach-role-policy \ --policy-arn arn:aws: iam::111122223333:policy/AmazonEKS_CNI_IPv6_Policy \ --role-name AmazonEKSNodeRole
-
-
-
📝 Modifica questa pagina su GitHub