Ruolo IAM per l'esecuzione del pod Amazon EKS - Amazon EKS

Ruolo IAM per l'esecuzione del pod Amazon EKS

Il ruolo di esecuzione del pod Amazon EKS è necessario per eseguire i pod AWS sull'infrastruttura Fargate.

Quando il cluster crea pod su AWS Infrastruttura Fargate, i componenti in esecuzione sull'infrastruttura Fargate devono effettuare chiamate ad API AWS per conto dell'utente, per eseguire operazioni come estrarre immagini container da Amazon ECR o instradare i log ad altri servizi AWS. Il ruolo di esecuzione del pod Amazon EKS fornisce le autorizzazioni IAM per eseguire questa operazione.

Quando si crea un profilo Fargate, è necessario specificare un ruolo di esecuzione del pod per i componenti Amazon EKS che vengono eseguiti su infrastruttura Fargate utilizzando il profilo. Questo ruolo viene aggiunto al controllo di accesso basato sul ruolo (RBAC) di Kubernetes del cluster per l'autorizzazione, in modo che kubelet in esecuzione sull’infrastruttura Fargate possa registrarsi con il cluster Amazon EKS. Questo è ciò che consente all'infrastruttura Fargate di apparire nel cluster come nodi.

Nota

Il profilo Fargate deve avere un ruolo IAM diverso dai gruppi di nodi Amazon EC2.

I container in esecuzione nel pod Fargate non possono assumere le autorizzazioni IAM associate al ruolo di esecuzione del pod. Per concedere ai container nel pod Fargate le autorizzazioni per accedere ad altri AWS servizi, è necessario utilizzare Ruoli IAM per gli account di servizio.

Prima di creare un profilo Fargate, è necessario creare un ruolo IAM con la seguente policy IAM:

Verificare la presenza di un ruolo di esecuzione del pod esistente

Per verificare se l'account dispone già di un ruolo di esecuzione del pod Amazon EKS, utilizzare la procedura indicata di seguito.

Per verificare la presenza di AmazonEKSFargatePodExecutionRole nella console IAM

  1. Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel riquadro di navigazione a sinistra seleziona Ruoli.

  3. Cercare l'elenco dei ruoli per AmazonEKSFargatePodExecutionRole. Se il ruolo non esiste, consultare Creazione del ruolo di esecuzione del pod Amazon EKS per crearlo. Se il ruolo è presente, seleziona il ruolo per visualizzare le policy allegate.

  4. Selezionare Autorizzazioni.

  5. Verificare che la policy gestita di Amazon AmazoneksFargatePodexecutionRolePolicy sia allegata al ruolo. Se la policy è allegata, il ruolo di esecuzione del pod Amazon EKS è configurato correttamente.

  6. Scegli Trust relationships (Relazioni di attendibilità), quindi scegli Edit trust policy (Modifica policy di attendibilità).

  7. Verifica che la relazione di trust includa la seguente policy. Se la relazione di trust corrisponde alla policy sottostante, scegli Cancel (Annulla). Se la relazione di attendibilità non corrisponde, copia la policy nella finestra Edit trust policy (Modifica policy di attendibilità) e scegli Update policy (Aggiorna policy).

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "eks-fargate-pods.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Creazione del ruolo di esecuzione del pod Amazon EKS

Se ancora non se ne dispone nel proprio account, utilizzare la seguente procedura per creare un ruolo di esecuzione del pod Amazon EKS.

Per creare un AWS Ruolo di esecuzione del pod Fargate con il AWS Management Console

  1. Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Scegliere Roles (Ruoli), quindi Create role (Crea ruolo).

  3. In Use case (Caso d'uso), scegli EKS dall'elenco dei servizi in Use cases for other AWS services (Casi d'uso per altri servizi AWS).

  4. Scegli EKS - Fargate pod (EKS - Pod fargate) per il tuo caso d'uso, quindi scegli Next (Successivo).

  5. Nella scheda Add permissions (Aggiungi autorizzazioni), scegli Next (Successivo).

  6. Per Nome ruolo, immettere un nome univoco per il ruolo, ad esempio AmazonEKSFargatePodExecutionRole.

  7. Per Description (Descrizione), sostituisci il testo corrente con un testo descrittivo come Amazon EKS - Pod execution role.

  8. Scegliere Create role (Crea ruolo).