MongoDB Enterprise Kubernetes Operator 已弃用。新的 MongoDB Controllers for Kubernetes Operator 取代了MongoDB Enterprise Kubernetes Operator。第一个版本的 Controllers for Kubernetes Operator 在功能上等同于 v1.33 的Enterprise Kubernetes Operator。有关此更改的更多信息以及迁移到新 Operator 的指导,请参阅第一个新版本的发布说明。MongoDB Enterprise Kubernetes Operator 的未来版本将不会再发布。根据现有的一年支持政策,每个版本都将结束生命周期。请迁移到Kubernetes Operator 的控制器以获得持续支持。
将密钥存储工具设立为 HashiCorp Vault 后,还必须在 Vault 中创建密钥。这适用于您手动迁移现有Kubernetes密钥或首次创建密钥时。
有关必须手动迁移到保管库的密钥列表,请参阅配置密钥存储的保管库部分。
以下教程将您的编程 API 密钥存储在 Vault 中。 您可以调整此过程中的命令,通过更改基本路径、命名空间和密钥名称将其他密钥添加到 Vault。
要了解有关密钥存储工具的更多信息,请参阅配置密钥存储。
先决条件
要在 Vault 中为 Kubernetes 操作符 创建档案,您必须:
拥有或创建MongoDB Ops Manager组织。
拥有或生成编程 API 密钥。
为这个新的编程API密钥授予项目所有者角色。
将任何为 Kubernetes Operator 提供服务的主机的 IP或CIDR区块添加到API 访问列表。
设置 Vault 实例并启用 Vault。
步骤
要在 Vault 中创建密钥,请执行以下操作:
2
在 Vault 中创建密钥。
调用以下 Vault 命令来创建密钥,并将变量替换为表中的值:
占位符 | 说明 |
---|---|
{Namespace} | 用于标识部署 Kubernetes 操作符的命名空间的标签。 |
{SecretName} | 人类可读标签,用于标识您在保管库中创建的密钥。 |
{PublicKey} | 所需 Ops Manager 编程 API 密钥的公钥。 |
{PrivateKey} | 您所需的 Ops Manager 编程 API 密钥的私钥。 |
vault kv put secret/data/mongodbenterprise/operator/{Namespace}/{SecretName} publicKey={PublicKey} privateKey={PrivateKey} The path in this command is the default path. You can replace ``mongodbenterprise/operator`` with your base path if you customized your |k8s-op-short| configuration.
3
验证 Vault 密钥创建是否成功。
调用以下 Vault 命令来验证您的密钥,并将变量替换为下表中的值:
占位符 | 说明 |
---|---|
{Namespace} | 用于标识部署 Kubernetes 操作符的命名空间的标签。 |
{SecretName} | 人类可读标签,用于标识您在保管库中创建的密钥。 |
vault kv get secret/data/mongodbenterprise/operator/{Namespace}/{SecretName}
此命令会在 Shell 中返回密钥描述:
====== Metadata ====== Key Value --- ----- created_time 2021-12-15T17:20:22.985303Z deletion_time n/a destroyed false version 1 ======= Data ======= Key Value --- ----- publicKey {PublicKey} privateKey {PrivateKey}