此版本的文档已存档,且不再支持此版本的MongoDB Enterprise Kubernetes Operator。
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}