- Deploy Multiple Clusters (Beta) >
- Multi-Cluster Architecture
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
andMemberCluster
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.