The Operator was developed and tested with Percona Server for MongoDB 3.6, 4.0, 4.2, and 4.4. Other options may also work but have not been tested.
The MMAPv1 storage engine is no longer supported for all MongoDB versions starting from the Operator version 1.6. MMAPv1 was already deprecated by MongoDB for a long time. WiredTiger is the default storage engine since MongoDB 3.2, and MMAPv1 was completely removed in MongoDB 4.2.
Officially supported platforms
The following platforms were tested and are officially supported by the Operator 1.6.0:
- OpenShift 3.11
- OpenShift 4.5
- Google Kubernetes Engine (GKE) 1.15 - 1.17
- Amazon Elastic Container Service for Kubernetes (EKS) 1.15
- Minikube 1.10
- VMWare Tanzu
Other Kubernetes platforms may also work but have not been tested.
A cluster running an officially supported platform contains at least 3 Nodes and the following resources (if sharding is turned off):
- 2GB of RAM,
- 2 CPU threads per Node for Pods provisioning,
- at least 60GB of available storage for Private Volumes provisioning.
Сonsider using 4 CPU and 6 GB of RAM if sharding is turned on (the default behavior).
Also, the number of Replica Set Nodes should not be odd if Arbiter is not enabled.
Use Storage Class with XFS as the default filesystem if possible to achieve better MongoDB performance.
The Operator is subsequent to specific platform limitations.
- Minikube doesn’t support multi-node cluster configurations because of its local nature, which is in collision with the default affinity requirements of the Operator. To arrange this, the Install Percona Server for MongoDB on Minikube instruction includes an additional step which turns off the requirement of having not less than three Nodes.