开发者社区> 问答> 正文

如何从kubernetes configmap中执行bash命令?

我使用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命令的方法。

任何想法或替代解决方案?

展开
收起
k8s小能手 2018-12-14 14:59:07 1978 0
1 条回答
写回答
取消 提交回答
  • 整合最优质的专家资源和技术资料,问答解疑

    您无法在ConfigMap中执行某些操作,它只是一个静态清单。请改用init容器。

    ConfigMaps只是一个静态清单,可以从Kubernetes API读取,也可以在运行时作为文件或环境变量注入容器。无法执行ConfigMap。

    根据您的描述,听起来您最好的选择是使用init容器检索凭据并将其写入使用将使用凭据的应用程序安装到容器中的共享emptyDir卷。

    2019-07-17 23:20:58
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
ACK 云原生弹性方案—云原生时代的加速器 立即下载
ACK集群类型选择最佳实践 立即下载
企业运维之云原生和Kubernetes 实战 立即下载

相关镜像