Navigation
This version of the documentation is archived and no longer supported. To learn how to upgrade your version of MongoDB Kubernetes Operator, refer to the upgrade documentation.

Multi-Cluster Architecture

Features Not Available in the Beta Release

Important

Use the beta release of the multi-cluster deployments only in development environments.

The following features of the MongoDB Enterprise Kubernetes Operator and the underlying Kubernetes clusters are not available in the beta release of the multi-cluster deployments:

  • Sharded cluster deployments
  • LDAP authentication
  • Backup and restore
  • X.509 user authentication
  • Ops Manager version earlier than 5.0
  • Split Horizon
  • SRV record connection string

Multi-Cluster Deployment Architecture

The MongoDB Enterprise Kubernetes Operator runs in a central Kubernetes cluster. If you deploy Ops Manager with the Kubernetes Operator, the central cluster may also host Ops Manager. The central cluster holds the MongoDBMulti CustomResource spec for the MongoDB replica set. The member Kubernetes clusters host the MongoDB replica sets.

Istio manages the discovery of MongoDB nodes deployed in different Kubernetes member clusters.

You can host your application on any of the member clusters inside the Istio service mesh, either on Kubernetes clusters outside of the ones that you deploy with the Kubernetes Operator, or on the member clusters that you deploy as part of this tutorial.

The MongoDB Enterprise Kubernetes Operator performs these actions:

  • Identifies the cluster on which to deploy the MongoDB replica set using the corresponding MongoDBMulti CustomResource spec, and deploys the MongoDB replica sets.

  • Watches for the MongoDBMulti CustomResource spec creation in the central cluster.

  • Uses the mounted kubeconfig file to communicate with member clusters.

  • Watches for the CentralCluster and MemberCluster events to confirm that the multi-cluster deployment is in the desired state.

  • Reconciles resources. Creates the necessary resources, such as Configmaps, Secrets, Service objects, and Statefulset objects in each member cluster corresponding to the number of replica set members in the MongoDB cluster.

    This Kubernetes secret, along with other secrets that Kubernetes Operator creates, can later be migrated to a different secret storage tool to avoid storing secrets in Kubernetes.

Diagram showing the high-level architecture of the multi-cluster deployment across regions and availability zones using the MongoDB Enterprise Kubernetes Operator