Production ready, robust DB solution built for Kubernetes envs.
Use Cases and Deployment Scope
For a long time we struggled finding a viable solution to migrate our existing db workloads inside Kubernetes to leverage its benefits across our entire infrastructure (cloud native and multi-cloud). The state of db inside k8s is always been a critical topic. We started testing and using Kubernetes during its early state, it's been always great at stateless workloads but using it with stateful apps was a pain. It got better with storage development and improvements. Before "operators era" proper db workloads required manual management, of course that easily raised administrative overhead. Then the future started to be brighter with the introduction of operators and the "official" Oracle's MySQL Operator, then Presslab's one, finally Percona's operator. With the last one we was able, for the first time, to ship production db workloads. We started with non-critical ones and after not much time we was "all-in" with all db workloads in Kubernetes. We had a very great time with Percona Kubernetes Operator for Percona XtraDB Cluster.
Pros
- Easy and fast deployment.
- A reliable, fully automated, high-available db lifecycle management solution.
- Exaustive documentation.
- Production ready.
Cons
- Some differences compared to "traditional" MySQL solution.
- Had some hard times trying to use it combined with pre-existing techs like WordPress, Magento, etc.
- The specific k8s environment features can have an impact on it, like the storage solutions offered by the cloud vendor.
Likelihood to Recommend
Production ready, robust DB solution built for Kubernetes envs, we was able, for the first time, to ship production db workloads inside k8s. Be sure to check differences with "traditional" MySQL and other clustering solutions. Also be sure to match it with proper k8s storage solutions.