部署独立的 MongoDB 实例
注意
对于此页面上提到的所有 Ops Manager,您都可以将其替换为 Cloud Manager。
重要
您可以使用 Kubernetes Operator 通过 Cloud Manager 和 Ops Manager 6.0.x 版或更高版本来部署 MongoDB 资源。
可以使用 Atlas Operator 将 MongoDB 资源部署到 Atlas。
您可以部署一个独立 MongoDB 实例供 Ops Manager 管理。使用独立实例进行测试和开发。不要将这些部署用于生产系统,因为它们缺乏复制和高可用性。对于所有生产部署,请使用副本集。要了解副本集,请参阅 部署副本集。
先决条件
注意
要避免在单集群 Kubernetes 部署中存储密钥,您可以迁移所有 密钥 到 秘密存储工具 。多个 Kubernetes 集群上的部署不支持将密钥存储在密钥存储工具中,例如 HashiCorp Vault 。
步骤
将kubectl
配置为默认命名空间。
如果您尚未执行,请运行以下命令,执行所创建命名空间的所有 kubectl
命令。
注意
MongoDB Ops Manager如果要在多 Kubernetes 集群 部署中部署MongoDB 资源:
将
context
设置为中心集群的名称,例如:kubectl config set context "$MDB_CENTRAL_CLUSTER_FULL_NAME"
。将
--namespace
设置为您用于多 Kubernetes 集群 MongoDB 部署的相同范围,例如:kubectl config --namespace "mongodb"
。
kubectl config set-context $(kubectl config current-context) --namespace=<metadata.namespace>
复制以下示例独立运行Kubernetes 对象 。
这是一个 YAML 文件,您可以对其进行修改,以满足您所需的配置。更改突出显示的设置,以匹配所需的独立运行配置。
apiVersion: mongodb.com/v1 kind: MongoDB metadata: name: <my-standalone> spec: version: "4.2.2-ent" opsManager: configMapRef: name: <configMap.metadata.name> # Must match metadata.name in ConfigMap file credentials: <mycredentials> type: Standalone persistent: true ...
打开您首选的文本编辑器并粘贴 对象 规范写入新的文本文件。
按以下方式配置上一步中突出显示的设置。
键 | 类型 | 说明 | 例子 |
---|---|---|---|
字符串 | my-project | ||
字符串 | 在此单机上安装的 MongoDB 版本。 Community 版的格式应为 重要提示:确保选择兼容的MongoDB Server版本。 兼容版本因MongoDB 数据库资源使用的基础映像而异。 要了解有关 MongoDB 版本控制的更多信息,请参阅 MongoDB 手册中的 MongoDB 版本控制。 | 为获得最佳结果,请使用 MongoDB最新可用的企业版 与您的MongoDB Ops Manager 版本 兼容 。 | |
字符串 | ConfigMap 的名称MongoDB Ops Manager 连接配置。 此值必须与待创建的资源位于同一命名空间。 | <myproject> | |
字符串 | 您创建的 Secret 名称,其将作为 Ops Manager API 身份验证凭证,以便 Kubernetes Operator 与 Ops Manager 进行通信。 持有凭证的 Ops Manager Kubernetes Secret 对象必须与您要创建的资源位于同一个命名空间中。 重要提示:Kubernetes Operator 会跟踪该 Secret 的任何更改并协调 | <mycredentials> | |
字符串 | 要创建的 MongoDB 资源的类型。 | Standalone | |
字符串 | 可选。 如果该值为 如要更改您持久卷申领的配置,请配置以下集合以满足部署要求:
警告: 授予容器写入 持久卷 的权限 。Kubernetes Operator 在 中设置 Disk UsageDisk IOPSAtlas Charts如果不使用Processes DeploymentMetrics持久卷 , 和 无法显示在 页面的 标签页中, 查看此部署的数据 时也无法显示在 页面中。 | true |
为独立运行部署添加任何其他可接受的设置。
还可以将以下任何可选设置添加到独立运行部署的对象规范文件中:
跟踪独立部署的状态。
要检查 MongoDB
资源的状态,请使用以下命令:
kubectl get mdb <resource-name> -o yaml -w
设置 -w
(观看) 标志后,当配置更改时,输出将立即刷新,直到状态阶段达到 Running
状态。要了解有关资源部署状态的详情,请参阅 Kubernetes Operator 故障排除。
要排查分片集群,请参阅: