1. Bitnami Sealed Secrets 简介
Bitnami Sealed Secrets: Kubernetes 的“加密的 Secrets”.
典型使用场景:
遇到的问题:“我可以在 git 中管理我所有的 K8s 配置,除了 Secrets。” 解决方案:将您的 Secret 加密到 SealedSecret 中,即使在公共存储库中也可以安全存储。SealedSecret 只能由目标集群中运行的控制器解密,其他人(甚至原始作者)无法从 SealedSecret 中获得原始 Secret。
1.1 使用流程
使用 Bitnami Sealed Secrets 的工作流程示例如下:
- 集群管理员在 K8s 集群上部署 Sealed secrets 控制器
- 开发者需要在本地计算机上安装
kubeseal
CLI。 - 开发者创建一个 Secret 资源,然后由
kubeseal
CLI 在运行时从控制器中获取密钥,对该资源进行加密或密封。对于网络受限的环境,公钥也可以存储在本地并由 kubeseal 使用。 Kubeseal 将创建一个SealedSecret
自定义资源。 - 开发者将此 CR 推送到自己的 git 仓库中
- 可使用 ArgoCD 等 CD 工具在集群上部署 CR。
- 控制器将检测到 SealedSecret 资源,并使用集群上的私钥对其进行解密。