Multi-Cluster Ops Manager Architecture
On this page
This section describes specific considerations for deploying the Ops Manager Application
and the Application Database on multiple Kubernetes clusters, where you set
spec.topology
and spec.applicationDatabase.topology
to MultiCluster
.
This section addresses the following areas:
Note
For actual deployment steps, see Deploy Ops Manager Resources on Multiple Kubernetes Clusters.
Single- and Multi-Cluster Mode
The following settings in the Ops Manager Resource Specification define the mode in which you deploy the Ops Manager Application and the Application Database custom resources:
Multi-cluster mode. To deploy the Ops Manager Application and the Application Database on multiple Kubernetes clusters, set
spec.topology
andspec.applicationDatabase.topology
toMultiCluster
.If you define
spec.topology
andspec.applicationDatabase.topology
asMultiCluster
, this allows you to begin with a single-member Kubernetes cluster and scale your multi-cluster deployment as needed. In particular:You can create a deployment in a multi-cluster mode that has only one member cluster.
You can have the replica set of a minimum 3
mongod
processes for the Application Database deployed on a single member cluster in a multi-cluster mode. To increase resilience of the Application Database, you can expand the replica set to span across multiple Kubernetes clusters and redeploy the configuration.You can have a single Ops Manager Application instance deployed on a single member cluster in a multi-cluster mode. To increase resilience of the Ops Manager Application, you can add more Kubernetes clusters, add the Ops Manager Application instances on them and redeploy the configuration.
Single cluster mode. To deploy the Ops Manager Application and the Application Database on a single Kubernetes cluster, omit specifying the values for the following settings, or set
spec.topology
andspec.applicationDatabase.topology
toSingleCluster
.
Limitations
Deploying the Ops Manager Application and the Application Database on multiple Kubernetes clusters has the following limitations:
You can't change the topology of an existing Ops Manager deployment from single to multi-cluster. You can set
spec.topology
andspec.applicationDatabase.topology
toMultiCluster
only for new deployments of the Ops Manager Application.You can't use the Kubernetes Operator to deploy the Ops Manager Application and the Application Database without a service mesh. To learn more, see Service Mesh.
You can't use HashiCorp Vault in any multi-cluster Kubernetes deployments. This includes multi-cluster deployments of Ops Manager resources, the Application Database resources, and
MongoDBMultiCluster
resources.
Differences between Single and Multi-Cluster Ops Manager Deployments
The following table lists the differences between single and multi-Kubernetes cluster deployments of the Ops Manager Application and the Application Database. All other features not listed in this table are equivalent for single and multi-cluster deployments.
Capability or Requirement | Single-Cluster Deployment | Multi-Cluster Deployment |
---|---|---|
You must install the Kubernetes Operator in the same cluster as the Ops Manager Application and the Application Database. | Yes | No. The operator cluster can also host the Ops Manager Application, the Application Database and the Backup Daemon. To learn more, see Multi-Cluster Architecture Diagram: Ops Manager and the Application Database. |
You must configure the Kubernetes Operator for single or multi-cluster mode. | No. | Yes |
Service mesh is required for Kubernetes clusters hosting the Ops Manager Application and the Application Database. | No | Yes |
Alternative Secret Storage (HashiCorp Vault) is supported. | Yes | No. To learn more, see Limitations. |
All backup mechanisms are supported. | Yes | No. Only S3-compatible Oplog and snapshot storage backups are supported.
To learn more, see |
KMIP encryption | Yes | With limitations. |
Use the following resources to help you learn about the architecture and performance of a multi-Kubernetes cluster deployment, and to configure networking: