amazon-web-services - 将 AWS SecretManager 与 Fargate 一起使用:无法找到凭证
问题描述
场景:
我们在 EKS 上有一个使用 Fargate 节点的 K8s 集群。我将我们的凭证/机密存储在 AWS SecretManager 中,并希望我们部署在 AWS Fargate 上的工作人员直接访问这些机密。
问题:
容器内的 python 代码会引发以下错误,因为它找不到任何 aws 凭据):
botocore.exceptions.NoCredentialsError: Unable to locate credentials
这与此处提出的问题非常相似,我已经按照该问题的答案中的建议添加了一个服务帐户。
具体来说,我按照这里的指南进行操作。
但是,最后一步不会为我返回预期的输出。没有将 AWS 环境变量注入任何 pod。
我还尝试在这里关注研讨会:https://www.eksworkshop.com/beginner/110_irsa/deploy/ 但仍然没有得到预期的输出。
如果有人能在这里指出正确的方向,我将不胜感激。提前致谢!
解决方案
我相信您缺少此处所述的集群创建步骤。具体来说:
- 在 AWS 中设置 OIDC ID 提供商 (IdP)。
如果您想自动将东西注入您的 Pod,请考虑创建一个MutatingAdmissionWebhook,它基本上响应JSONPatch
K8s 适用于您指定的任何对象。
这是有关如何创建一个的详细演练。
推荐阅读
- sql - 在 GROUP BY 分组中,根据另一列的最高值选择值
- reactjs - 在移动设备上使用 Mapbox GL JS 进行跟踪的问题
- glsl - 格子玻尔兹曼 WebGL 翻译结果到处都是 NaN
- django - 如何使用 Django 进行 URL 屏蔽?
- android - Room/sqlite 数据库锁和隔离级别
- ios - Xcode 11.0 beta 5 中没有这样的模块“Firebase”错误
- fiware - 我正在尝试使用 FIWARE token_script.sh 文件获取 X-Auth-Token 但它给了我一个空令牌
- android - 无法将 Activity 投射到片段中的接口
- javascript - VueJS 组件 prop 仅在重用时显示最后一个 JSON 条目
- python - 如何通过 Python Pronouncing 库中的音素搜索特定单词?