我想在ConfigMap
中使用Secret
。这可能吗?
例:
例如,如果您想从 Fluentd 写入 S3,则可能需要这样做。在配置中,您必须添加您的 AWS 凭证。
选择:
在集群本身上使用环境变量。我不喜欢这个想法,因为变量仍然会以纯文本形式包含机密。
在设置过程中传递密码。如果使用部署工具,则可以在部署应用程序期间传递机密。这也不是一个不错的解决方案,因为您仍然将机密作为纯文本传递给部署工具。此方法的一个优点是,您不会意外地将密钥签入到 git。
尽量避免在 kubernetes 中使用 aws 凭证。
如您所见aws_key_id
和aws_sec_key
是可选字段。
利用 AWS IAM 角色并将其分配给 kubernetes 节点。
然后尝试运行您的流畅应用程序,而其配置中没有 aws 凭证。
试一试吧。
希望这有帮助。
更新:
本文介绍了使用 AWS iam for kubernetes 的不同方法。
Kube2iam 和许多其他类似的工具可能会有所帮助。试一试。
不,这是不可能的。应始终对敏感数据使用机密。
默认情况下,机密只是文件的 base64 编码内容,因此您应该使用 Vault 之类的工具来安全存储敏感数据。