多集群MongoDB Ops Manager架构
本部分介绍在多个MongoDB Ops Manager Kubernetes集群上部署 应用程序和应用程序数据库的具体注意事项,在这些集群中,您设立 和spec.topology
spec.applicationDatabase.topology
设置为MultiCluster
。
本节介绍以下内容:
注意
有关实际部署步骤,请 参阅在多个 集群上部署 MongoDB Ops ManagerKubernetes资源。
单集群和多集群模式
MongoDB Ops Manager资源规范中的以下设置定义了部署MongoDB Ops Manager应用程序和应用程序数据库自定义资源的模式:
多集群模式。 MongoDB Ops Manager要在多个Kubernetes 集群上部署
spec.topology
应用程序和应用程序数据库,请将 和spec.applicationDatabase.topology
设置为MultiCluster
。如果您将
spec.topology
和spec.applicationDatabase.topology
定义为MultiCluster
,则可以从单成员 Kubernetes 集群开始,然后根据需要扩展多集群部署。 特别是:您可以在只有一个成员集群的多集群模式创建部署。
您可以在多集群模式下,在单个成员集群上部署应用程序数据库的至少3
mongod
进程的副本集。 为了提高应用程序数据库的弹性,您可以将副本集扩展为跨多个 Kubernetes 集群,然后重新部署配置。您可以将单个MongoDB Ops Manager应用程序实例部署在多集群模式的单个成员集群上。 要提高MongoDB Ops Manager应用程序的韧性,您可以添加更多Kubernetes集群,在其上添加MongoDB Ops Manager应用程序实例,然后重新部署配置。
单集群模式。 MongoDB Ops Manager要在单个Kubernetes 集群上部署 应用程序和应用程序数据库,请省略指定以下设置的值,或将
spec.topology
和spec.applicationDatabase.topology
设置为SingleCluster
。
限制
MongoDB Ops Manager在多个Kubernetes 集群上部署 应用程序和应用程序数据库具有以下限制:
您无法将现有MongoDB Ops Manager部署的拓扑结构从单集群更改为多集群。 您可以仅针对
spec.topology
spec.applicationDatabase.topology
MultiCluster
应用程序的新部署,将 和 设置为MongoDB Ops Manager 。如果没有服务网格,则无法使用Kubernetes Operator 部署MongoDB Ops Manager应用程序和应用程序数据库。 要了解更多信息,请参阅服务网格。
您无法使用 HashiCorp Vault 在任何多集群Kubernetes部署中。这包括Ops Manager资源、应用程序数据库资源和
MongoDBMultiCluster
资源的多集群部署。
单集群 MongoDB Ops Manager 部署与多集群MongoDB Ops Manager部署之间的区别
下表列出了MongoDB Ops Manager应用程序和应用程序数据库的单 Kubernetes 集群部署与多 Kubernetes 集群部署之间的差异。 对于单集群和多集群部署,此表中未列出的所有其他功能都是等效的。
能力或要求 | 单集群部署 | 多集群部署 |
---|---|---|
您必须将Kubernetes Operator 安装在与MongoDB Ops Manager应用程序和应用程序数据库相同的集群中。 | 是 | 不需要。Operator 集群还可以托管MongoDB Ops Manager应用程序、应用程序数据库和备份守护进程。 要了解更多信息,请参阅多集群架构图: MongoDB Ops Manager和应用程序数据库。 |
您必须将 Kubernetes Operator 配置为单集群模式或多集群模式。 | No. | 是 |
托管 KubernetesMongoDB Ops Manager应用程序和应用程序数据库的 集群 需要服务网格 。 | No | 是 |
备用密钥存储 ( HashiCorp Vault )受支持。 | 是 | 否。要了解更多信息,请参阅限制。 |
支持所有备份机制。 | 是 | 否。 仅支持与 S3兼容的oplog和快照存储备份。 要了解详情,请参阅 spec.clusterSpecList[*].backup 。 |
KMIP加密 | 是 | 有限制。 |
使用以下资源帮助您学习;了解多 Kubernetes集群部署的架构和性能,并配置网络: