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

Aiutaci a migliorare questa pagina

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à.

Ruolo IAM per l'esecuzione del Pod Amazon EKS

Il ruolo di Pod esecuzione di Amazon EKS è necessario per l'esecuzione Pods sull' AWS Fargate infrastruttura.

Quando il cluster crea un'Pods AWS Fargate infrastruttura, i componenti in esecuzione sull'infrastruttura Fargate devono effettuare chiamate alle AWS API per conto dell'utente. In questo modo possono eseguire azioni come estrarre le immagini dei container da Amazon ECR o indirizzare i log ad altri AWS servizi. Il ruolo di esecuzione del Pod Amazon EKS fornisce le autorizzazioni IAM per eseguire questa operazione.

Quando crei un profilo Fargate, devi 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 degli accessi basato sul ruolo (RBAC) di Kubernetes del cluster per l'autorizzazione. Ciò consente al kubelet in esecuzione sull'infrastruttura Fargate di registrarsi con il cluster Amazon EKS in modo che possa essere visualizzato nel cluster come nodo.

Nota

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

Importante

I container in esecuzione nel Pod Fargate non possono assumere le autorizzazioni IAM associate a un ruolo di esecuzione del Pod. Per concedere ai contenitori del tuo Fargate Pod le autorizzazioni per accedere ad altri AWS servizi, devi usare. Ruoli IAM per gli account di servizio

Prima di creare un profilo Fargate, è necessario creare un ruolo IAM con la AmazonEKSFargatePodExecutionRolePolicy.

Verifica della presenza di un ruolo di esecuzione del Pod esistente configurato correttamente

Per verificare se l'account dispone già di un ruolo di esecuzione del Pod Amazon EKS configurato correttamente, utilizza la procedura indicata di seguito. Per prevenire il problema di sicurezza "confused deputy", è importante che il ruolo limiti l'accesso in base a SourceArn. È possibile modificare il ruolo di esecuzione secondo necessità per includere il supporto per i profili Fargate su altri cluster.

Verifica della presenza di un ruolo di esecuzione del Pod Amazon EKS nella console IAM
  1. Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel pannello di navigazione a sinistra, seleziona Ruoli.

  3. Nella pagina Ruoli, cerca l'elenco dei ruoli per AmazonEks FargatePodExecutionRole. Se il ruolo non esiste, consulta Creazione del ruolo di esecuzione del Pod Amazon EKS per crearlo. Se il ruolo è presente, selezionalo.

  4. Nella pagina FargatePodExecutionRoleAmazonEks, procedi come segue:

    1. Seleziona Autorizzazioni.

    2. Assicurati che la policy gestita da FargatePodExecutionRolePolicyAmazonEks di Amazon sia associata al ruolo.

    3. Scegli Trust relationships (Relazioni di trust).

    4. Seleziona Edit trust policy (Modifica policy di attendibilità).

  5. Nella pagina Edit trust policy (Modifica policy di attendibilità), verifica che la relazione di attendibilità contenga la policy seguente e una riga per i profili Fargate nel cluster. In tal caso, scegli Cancel (Annulla).

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:eks:region-code:111122223333:fargateprofile/my-cluster/*" } }, "Principal": { "Service": "eks-fargate-pods.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

    Se la policy corrisponde ma non contiene una riga che specifica i profili Fargate sul cluster, aggiungi la riga riportata di seguito nella parte superiore dell'oggetto ArnLike. Sostituisci region-code con la Regione AWS in cui si trova il cluster, 111122223333 con il tuo ID account e my-cluster con il nome del cluster.

    "aws:SourceArn": "arn:aws:eks:region-code:111122223333:fargateprofile/my-cluster/*",

    Se la policy non corrisponde, copia la policy precedente nel modulo e scegli Update policy (Aggiorna policy). Sostituisci region-code con la Regione AWS in cui si trova il cluster. * Sostituisci 111122223333 con il tuo ID account e my-cluster con il nome del cluster. Se vuoi usare lo stesso ruolo per tutti i cluster dell'account, sostituisci my-cluster con *.

Creazione del ruolo di esecuzione del Pod Amazon EKS

Se non disponi già del ruolo di Pod esecuzione di Amazon EKS per il tuo cluster, puoi utilizzare AWS Management Console o the AWS CLI per crearlo.

AWS Management Console
Creazione di un ruolo di esecuzione PodAWS Fargate tramite la AWS Management Console
  1. Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel pannello di navigazione a sinistra, seleziona Ruoli.

  3. Nella pagina Ruoli, seleziona Crea ruolo.

  4. Nella pagina Seleziona un'entità attendibile, esegui le operazioni seguenti:

    1. Nella sezione Trusted entity type (Tipo di entità attendibile), scegli AWS service (Servizio ).

    2. Nell'elenco a discesa Casi d'uso per altri Servizi AWS, scegli EKS.

    3. Scegli Pod EKS - Fargate.

    4. Scegli Next (Successivo).

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

  6. Nella pagina Name, review, and create (Assegna un nome, rivedi e crea), esegui le operazioni seguenti:

    1. Per Role name (Nome ruolo), inserisci un nome univoco per il ruolo, ad esempio AmazonEKSFargatePodExecutionRole.

    2. In Aggiungi tag (facoltativo), aggiungi metadati al ruolo collegando i tag come coppie chiave-valore. Per ulteriori informazioni sull'utilizzo di tag in IAM, consulta la sezione Applicazione di tag alle risorse IAM nella Guida per l'utente di IAM.

    3. Scegli Crea ruolo.

  7. Nella pagina Ruoli, cerca l'elenco dei ruoli per AmazonEks FargatePodExecutionRole. Seleziona il ruolo.

  8. Nella pagina FargatePodExecutionRoleAmazonEks, procedi come segue:

    1. Scegli Trust relationships (Relazioni di trust).

    2. Seleziona Edit trust policy (Modifica policy di attendibilità).

  9. Nella pagina Modifica policy di attendibilità, effettua le operazioni seguenti:

    1. Copia e incolla il contenuto seguente nel modello Modifica policy di attendibilità. Sostituisci il codice regionale us-iso-east con Regione AWS quello in cui si trova il tuo cluster. * Sostituisci 111122223333 con il tuo ID account e my-cluster con il nome del cluster. Se vuoi usare lo stesso ruolo per tutti i cluster dell'account, sostituisci my-cluster con *.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:eks:region-code:111122223333:fargateprofile/my-cluster/*" } }, "Principal": { "Service": "eks-fargate-pods.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
    2. Scegli Aggiorna policy.

AWS CLI
Per creare un ruolo di AWS FargatePod esecuzione con AWS CLI
  1. Copia e incolla il contenuto seguente in un file denominato pod-execution-role-trust-policy.json. Sostituisci il codice regionale us-iso-east con Regione AWS quello in cui si trova il tuo cluster. * Sostituisci 111122223333 con il tuo ID account e my-cluster con il nome del cluster. Se vuoi usare lo stesso ruolo per tutti i cluster dell'account, sostituisci my-cluster con *.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:eks:region-code:111122223333:fargateprofile/my-cluster/*" } }, "Principal": { "Service": "eks-fargate-pods.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. Crea un ruolo IAM di esecuzione del Pod.

    aws iam create-role \ --role-name AmazonEKSFargatePodExecutionRole \ --assume-role-policy-document file://"pod-execution-role-trust-policy.json"
  3. Allegare la policy IAM gestita da Amazon EKS richiesta al ruolo.

    aws iam attach-role-policy \ --policy-arn arn:aws:iam::aws:policy/AmazonEKSFargatePodExecutionRolePolicy \ --role-name AmazonEKSFargatePodExecutionRole