Ajudar a melhorar esta página
Quer contribuir para este guia do usuário? Escolha o link Editar esta página no GitHub, disponível no painel direito de cada página. Suas contribuições ajudarão a tornar nosso guia do usuário melhor para todos.
Alguns complementos do Amazon EKS precisam de permissões e perfis do IAM para chamar APIs da AWS. Por exemplo, o complemento CNI da Amazon VPC chama determinadas APIs da AWS para configurar recursos de rede na sua conta. Esses complementos precisam receber permissão usando o IAM. Mais especificamente, a conta de serviço do pod que executa o complemento precisa estar associada a um perfil do IAM com uma política do IAM específica.
A forma recomendada de conceder permissões da AWS para workloads de cluster é usando o recurso Identidades de Pods do Amazon EKS. Você pode usar uma Associação de identidade de pods para mapear a conta de serviço de um complemento para um perfil do IAM. Se um pod usa uma conta de serviço que tem uma associação, o Amazon EKS define variáveis de ambiente nos contêineres do pod. As variáveis de ambiente configuram os SDKs da AWS, incluindo a AWS CLI, para usar as credenciais de Identidade de pods do EKS. Para ter mais informações, consulte Saiba como a EKS Pod Identity concede aos pods acesso aos serviços da AWS.
Os complementos do Amazon EKS podem ajudar a gerenciar o ciclo de vida das associações de identidades de pods correspondentes ao complemento. Por exemplo, você pode criar ou atualizar um complemento do Amazon EKS e a associação de identidade de pods necessária em uma única chamada de API. O Amazon EKS também fornece uma API para recuperar políticas do IAM sugeridas.
-
Confirme se o agente de identidade de pods do Amazon EKS está configurado no cluster.
-
Determine se o complemento que você deseja instalar requer permissões do IAM usando a operação
describe-addon-versions
da AWS CLI. Se o sinalizadorrequiresIamPermissions
fortrue
, você deverá usar a operaçãodescribe-addon-configurations
para determinar as permissões necessárias para o complemento. A resposta inclui uma lista sugerida de políticas do IAM gerenciadas. -
Recupere o nome da conta do serviço Kubernetes e a política do IAM sugerida usando a operação
describe-addon-configuration
da CLI. Avalie o escopo da política sugerida em relação aos seus requisitos de segurança. -
Crie um perfil do IAM usando a política de permissões sugerida e a política de confiança exigida pela Identidade de Pod. Para ter mais informações, consulte Criar uma associação de identidade de pod (console do AWS ).
-
Crie ou atualize um complemento do Amazon EKS usando a CLI. Especifique pelo menos uma associação de identidade de pods. Uma associação de identidade de pods é o nome de uma conta de serviço do Kubernetes e o ARN do perfil do IAM.
-
Associações de identidades de pods criadas usando as APIs do complemento pertencem ao respectivo complemento. Se você excluir o complemento, a associação de identidade de pods também será excluída. Você pode evitar essa exclusão em cascata usando a opção
preserve
ao excluir um complemento usando a AWS CLI ou a API. Também é possível atualizar ou excluir diretamente a associação de identidade de pods, se necessário. Os complementos não podem assumir a propriedade de associações de identidades de pods existentes. Você deve excluir a associação existente e recriá-la usando uma operação de criação ou atualização de complemento. -
O Amazon EKS recomenda o uso de associações de identidades de pods para gerenciar permissões do IAM para complementos. O método anterior, perfis do IAM para contas de serviço (IRSA), ainda é compatível. Você pode especificar um
serviceAccountRoleArn
do IRSA e uma associação de identidade de pods para um complemento. Se o agente de identidade de pods do EKS estiver instalado no cluster,serviceAccountRoleArn
será ignorado, e o EKS usará a associação de identidade de pods fornecida. Se a Identidade de Pods não estiver habilitada,serviceAccountRoleArn
será usado. -
Se você atualizar as associações de identidades de pods para um complemento existente, o Amazon EKS iniciará uma reinicialização contínua dos pods do complemento.
-