跳至内容

如何解决当我尝试在我的集群上激活 EKS 容器组身份时出现的“Unable to fetch credentials”(无法获取凭证)错误?

1 分钟阅读
0

我希望我的 Amazon Elastic Kubernetes Service (Amazon EKS) 集群使用 EKS 容器组身份。但是,我收到“Unable to fetch credentials”(无法获取凭证)错误。

解决方案

**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI

当您尝试在 Amazon EKS 集群上激活 EKS 容器组身份时,可能会收到以下错误之一:

  • “从容器角色检索凭证时出错: 检索元数据时出错: 尝试检索容器元数据时收到错误: 端点 URL 的读取超时:http://169.254.170.23/v1/credentials”
  • “无法获取凭证:获取要缓存的凭证时出错:无法从 EKS Auth 获取凭证:操作错误 EKS Auth”

要对这些问题故障排除,请执行以下操作:

  • 要从 eks-pod-identity-agent 容器组中检索日志,请运行以下命令:

    kubectl logs -f eks-pod-identity-agent -n kube-system
  • 如果您有私有集群,请确保在 AWS PrivateLink 中允许 eks-auth 端点

  • 要验证您的角色设置,请打开应用程序容器组的 Shell,然后运行以下 get-caller-identity AWS CLI 命令:

    aws sts get-caller-identity
  • 确认防火墙没有阻止 eks-auth 端点。

  • 如果您使用代理配置,请运行以下命令以确认您已配置 EKS 容器组身份代理 https_proxy

    kubectl set env ds/eks-pod-identity-agent https_proxy="PROXY-URL" -n kube-system
AWS 官方已更新 1 年前