Quero que meus clusters do Amazon Elastic Kubernetes Service (Amazon EKS) usem a Identidade de Pods do EKS. No entanto, recebo um erro “Unable to fetch credentials”.
Resolução
Observação: Se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solução de problemas da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.
Ao tentar ativar a Identidade de Pods do EKS em seus clusters do Amazon EKS, você pode receber um dos seguintes erros:
- “Error when retrieving credentials from container-role: Error retrieving metadata: Received error when attempting to retrieve container metadata: Read timeout on endpoint URL: http://169.254.170.23/v1/credentials”
- “Unable to fetch credentials: error getting credentials to cache: unable to fetch credentials from EKS Auth: operation error EKS Auth”
Para solucionar esses erros, execute as seguintes ações:
-
Para recuperar os logs do pod eks-pod-identity-agent, execute o seguinte comando:
kubectl logs -f eks-pod-identity-agent -n kube-system
-
Se você tiver um cluster privado, certifique-se de permitir o endpoint eks-auth no AWS PrivateLink.
-
Para verificar suas configurações de perfil, abra o shell do pod da aplicação e execute o seguinte comando get-caller-identity da AWS CLI:
aws sts get-caller-identity
-
Confirme se um firewall não está bloqueando o endpoint eks-auth.
-
Se você usa configurações de proxy, execute o seguinte comando para confirmar que configurou o Agente de Identidade de Pods do EKS https_proxy:
kubectl set env ds/eks-pod-identity-agent https_proxy="PROXY-URL" -n kube-system