kubectl mongodb 插件的 migrate-to-mck 命令生成将自托管部署迁移到Kubernetes Kubernetes下的 Kubernetes 所需的Kubernetes自定义资源。它有两个子命令:mongodb(生成 MongoDB资源)和 users(生成 MongoDBUser 资源)。
这两个子命令在生成任何输出之前都会验证源自动化配置,并在出现任何阻塞问题时以非零状态退出。两者都支持缺失值的交互式提示,以及当您提供所有必需标志时的完全非交互式模式。
kubectl mongodb migrate-to-mck mongodb
为迁移目标生成 MongoDB 自定义资源。
标记 | 必需 | 说明 |
|---|---|---|
| 是 | Ops Manager或Cloud Manager项目的名称 |
| 是 | 持有Ops Manager或Cloud Manager API密钥的 |
| No | 生成的资源的Kubernetes命名空间。默认为 |
| No | 要写入生成的资源的文件路径。 |
| 仅当启用 TLS 时 | |
| 仅当启用 Prometheus 时 | 预先创建的 |
| No | 在生成的资源上设置 |
kubectl mongodb migrate-to-mck users
为迁移目标的经过身份验证的用户生成 MongoDBUser 资源。
标记 | 必需 | 说明 |
|---|---|---|
| 是 | Ops Manager或Cloud Manager项目的名称 |
| 是 | 持有Ops Manager或Cloud Manager API密钥的 |
| No | 生成的资源的Kubernetes命名空间。默认为 |
| No | 要写入生成的资源的文件路径。 |
| No | 将SCRAM用户映射到 |
| No | 生成的 |
注意
该插件会根据 $external数据库为 X.509 和LDAP用户生成 MongoDBUser 资源。该插件会跳过自动化代理用户。
创建前要求
在运行任一子命令之前,请创建以下Kubernetes对象:
具有
baseUrl、orgId和projectName键的项目ConfigMap。具有
publicKey和privateKey密钥的API密钥Secret。每个SCRAM用户一个
Secret,每个用户都有一个password密钥。如果已启用 Prometheus,则带有 Prometheus 的
password密钥的Secret会抓取凭证。如果已启用 TLS:
带有
ca-pem密钥的<resourceName>-caConfigMap。名为
<certsSecretPrefix>-<resourceName>-cert的kubernetes.io/tlsSecret。
如果已启用 X.509代理身份验证,则会生成名为
<certsSecretPrefix>-<resourceName>-agent-certs的Secret。