Configurar o atndente do Identidade de Pods do Amazon EKS - Amazon EKS

Ajudar a melhorar esta página

Para contribuir com este guia de usuário, escolha o link Editar esta página no GitHub, disponível no painel direito de cada página.

Configurar o atndente do Identidade de Pods do Amazon EKS

As associações de Identidade de Pods do Amazon EKS permitem gerenciar credenciais para suas aplicações de forma semelhante a como os perfis de instância do Amazon EC2 fornecem credenciais para instâncias do Amazon EC2.

A Identidade de Pods do Amazon EKS fornece credenciais para suas workloads com uma API EKS Auth adicional e um pod de atendente executado em cada nó.

dica

Você não precisa instalar o atendente da Identidade de Pods nos clusters do Modo automático do EKS. Essa capacidade é integrada ao Modo automático do EKS.

Considerações

  • Por padrão, o atendente de Identidade de Pods do EKS é pré-instalado nos clusters do EKS em modo automático. Para saber mais, consulte Automatizar a infraestrutura de clusters com o Modo Automático do EKS.

  • Por padrão, o atendente de Identidade de Pods do EKS escuta em um endereço IPv4 e IPv6 para os pods para solicitar credenciais. O atendente usa o endereço IP de loopback (localhost) 169.254.170.23 para IPv4 e o endereço IP de localhost [fd00:ec2::23] para IPv6.

  • Se você desabilitar endereços IPv6 ou de alguma forma impedir endereços IP IPv6 do localhost, o atendente não poderá iniciar. Para iniciar o atendente em nós que não podem usar IPv6, siga as etapas em Desabilitar o IPv6 no EKS Pod Identity Agent para desabilitar a configuração de IPv6.

Criar o atendente de Identidade de Pods do Amazon EKS

Pré-requisitos do atendente

  • Um cluster existente do Amazon EKS. Para implantar, consulte Começar a usar o Amazon EKS. A versão do cluster e a versão da plataforma devem ser iguais ou posteriores às versões listadas em Versões de clusters da Identidade de Pods do EKS.

  • O perfil de nó tem permissões para o atendente realizar a ação AssumeRoleForPodIdentity na API de autenticação do EKS. Você pode usar a política gerenciada da AWS: AmazonEKSWorkerNodePolicy ou adicionar uma política personalizada semelhante à seguinte:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "eks-auth:AssumeRoleForPodIdentity" ], "Resource": "*" } ] }

    Esta ação pode ser limitada por tags para restringir quais funções podem ser assumidas pelos pods que usam o atendente.

  • Os nós podem acessar e baixar imagens do Amazon ECR. A imagem de contêiner do complemento está nos registros listados em Visualizar registros de imagem de contêiner da Amazon para complementos do Amazon EKS.

    Observe que você pode alterar o local da imagem e fornecer imagePullSecrets para complementos EKS nas definições de configuração opcionais em AWS Management Console e em --configuration-values na CLI de AWS.

  • Os nós podem acessar a API de autenticação do Amazon EKS. Para clusters privados, é necessário o endpoint eks-auth em AWS PrivateLink.

Configurar o atendente com o console do AWS

  1. Abra o console do Amazon EKS.

  2. No painel de navegação esquerdo, selecione Clusters e depois o nome do cluster para o qual você deseja configurar o complemento do atendente de Identidade de Pods do EKS.

  3. Escolha a guia Complementos.

  4. Escolha Obter mais complementos.

  5. Selecione a caixa no canto superior direito da caixa do complemento do atentente de Identidade de Pods do EKS e escolha Editar.

  6. Na página Configurar complementos selecionados, selecione qualquer versão na lista suspensa Versão.

  7. (Opcional) Expanda Configurações opcionais para inserir configurações adicionais. Por exemplo, é possível indicar um local alternativo para a imagem do contêiner e ImagePullSecrets. O esquema JSON com chaves aceitas é mostrado no Esquema de configuração do complemento.

    Insira as chaves e os valores de configuração em Valores de configuração.

  8. Escolha Próximo.

  9. Confirme que os pods do atentente de Identidade de Pods do EKS estão em execução no cluster.

    kubectl get pods -n kube-system | grep 'eks-pod-identity-agent'

    Veja abaixo um exemplo de saída.

    eks-pod-identity-agent-gmqp7 1/1 Running 1 (24h ago) 24h eks-pod-identity-agent-prnsh 1/1 Running 1 (24h ago) 24h

    Agora é possível usar associações da Identidade de Pods do EKS em seu cluster. Para obter mais informações, consulte Atribuir um perfil do IAM a uma conta de serviço do Kubernetes.

Configurar o atendente com a AWS CLI

  1. Execute o seguinte comando da AWS CLI. Substitua o my-cluster pelo nome do cluster.

    aws eks create-addon --cluster-name my-cluster --addon-name eks-pod-identity-agent --addon-version v1.0.0-eksbuild.1
    nota

    O atentente de Identidade de Pods do EKS não usa o service-account-role-arn para perfis do IAM para contas de serviço. Você deve fornecer ao atentente de Identidade de Pods do EKS as permissões no perfil de nó.

  2. Confirme que os pods do atentente de Identidade de Pods do EKS estão em execução no cluster.

    kubectl get pods -n kube-system | grep 'eks-pod-identity-agent'

    Veja abaixo um exemplo de saída.

    eks-pod-identity-agent-gmqp7 1/1 Running 1 (24h ago) 24h eks-pod-identity-agent-prnsh 1/1 Running 1 (24h ago) 24h

    Agora é possível usar associações da Identidade de Pods do EKS em seu cluster. Para obter mais informações, consulte Atribuir um perfil do IAM a uma conta de serviço do Kubernetes.