我使用helm图表创建容器并将其部署到我的K8集群中。我的一个pod需要一个配有sdk密钥的配置文件,以便能够正常启动和运行。此sdk密钥被视为机密密钥,存储在AWS秘密管理器中。因此,我不想将配置文件烘焙到我的docker镜像中。我希望能够在运行时安装此配置文件。在这种情况下,Configmap似乎是一个不错的选择,除了我无法弄清楚如何在掌舵图安装期间从秘密管理器获取此sdk密钥。我的configmap的一部分看起来像这样
data:
app.conf: |
[sdkkey] # I want to be able to retrieve sdk from aws secrets manager
我正在寻找编写bash命令以使用aws cli来获取秘密的方法,但还没有看到从配置映射中执行bash命令的方法。
任何想法或替代解决方案?
您无法在ConfigMap中执行某些操作,它只是一个静态清单。请改用init容器。
ConfigMaps只是一个静态清单,可以从Kubernetes API读取,也可以在运行时作为文件或环境变量注入容器。无法执行ConfigMap。
根据您的描述,听起来您最好的选择是使用init容器检索凭据并将其写入使用将使用凭据的应用程序安装到容器中的共享emptyDir卷。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。