Docs 菜单

HashiCorp Vault 中创建密钥

在此页面上

将密钥存储工具设置 HashiCorp Vault 后 ,您还必须在 Vault 中创建密钥。这适用于手动迁移现有 Kubernetes 密钥 的情况 或者您是首次创建密钥。

有关必须手动迁移到保管库的密钥列表,请参阅配置密钥存储的保管库部分。

以下教程将您的编程 API 密钥存储在 Vault 中。 您可以调整此过程中的命令,通过更改基本路径、命名空间和密钥名称将其他密钥添加到 Vault。

要了解有关密钥存储工具的更多信息,请参阅配置密钥存储。

要在 Vault 中为 Kubernetes 操作符 创建档案,您必须:

  1. 拥有或创建MongoDB Ops Manager组织。

  2. 拥有或生成编程 API 密钥。

  3. 为这个新的编程API密钥授予项目所有者角色。

  4. 将任何为Kubernetes Operator提供服务的主机的IPCIDR区块添加到API访问列表中。

  5. 设置 Vault 实例并 启用 Vault。

    注意

    确保 Vault 开发模式 运行 并且您的 Vault 安装遵循所有适用的 配置建议。

要在 Vault 中创建密钥,请执行以下操作:

1

确保您拥有所需 Ops Manager 编程 API 密钥的公钥和私钥。

2

调用以下 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 命令来验证您的密钥,并将变量替换为下表中的值:

占位符
说明
{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}

在此页面上