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.
- Easy and fast deployment.
- A reliable, fully automated, high-available db lifecycle management solution.
- Exaustive documentation.
- Production ready.
- 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.
Well documented, there was no need to contact support.