为了让Kubernetes Operator 在Cloud Manager或Ops Manager项目中创建或更新对象,您需要将编程API密钥存储在密钥存储工具中。
同一个命名空间中可以存在多个密钥。 每个用户都应该有自己的密钥。
您可以按照以下步骤手动将编程API密钥存储为Kubernetes密钥。或者,您可以:
使用“创建 Vault 密钥”过程,将编程API密钥存储为 Vault 密钥。要使用 Vault,还必须配置密钥存储。
先决条件
要为 Kubernetes 操作符 创建档案,您必须:
授予此新的编程 API 密钥:
组织所有者 或
Global Owner角色(如果您希望Kubernetes Operator 创建并管理项目)。
注意
您必须向编程API密钥授予“组织所有者”或
Global Owner角色。如果您只想向编程API密钥授予“项目所有者”角色,则必须首先创建项目,然后为具有“项目所有者”角色的项目创建“编程API密钥”。如果编程API密钥只有“项目所有者”角色,则Kubernetes Operator 无法创建项目。
步骤
要创建 Kubernetes 密钥,请执行以下操作:
创建新的 Kubernetes 密钥
确保您拥有所需 Ops Manager 编程 API 密钥的公钥和私钥。
调用以下 Kubernetes 命令来创建密钥:
kubectl -n <metadata.namespace> \ create secret generic <mycredentials> \ --from-literal="publicKey=<publicKey>" \ --from-literal="privateKey=<privateKey>" -n标志限制了此密钥适用的命名空间空间。所有MongoDB Kubernetes资源必须与密钥和 ConfigMap 位于同一命名空间中。 Kubernetes Operator 不使用密钥或 ConfigMap。注意
此命令的已弃用版本会指定
user和publicApiKey,而不是publicKey和privateKey。 Kubernetes 操作符接受任一版本的身份验证。