The Challenge
Civo is a cloud-native service provider that built its entire tech stack and approach based on Kubernetes, the open source container orchestration platform created by Google. Using the lightweight Kubernetes distributions K3s and Talos, Civo provides cloud services with predictable pricing, great performance and a simple developer experience.
As part of extending its service portfolio, Civo wanted to launch managed database services for its customers. However, this would rely on using Kubernetes operators to control and manage those database instances for customers. This would be a critical component to the service, so any deployment would have to be reliable, well supported, and able to support the multi-tenant environment that Civo offered to its customers.
The Solution
Civo originally considered putting together its own Kubernetes operator to meet its needs and also investigated those operators available as part of the open source ecosystem. However, those options did not match up to Percona Operator for MySQL and its XtraDB Cluster offering. Based on MySQL, Percona XtraDB Cluster is an open source database that supports critical business applications across public, private, or hybrid cloud environments. It is a free, open source, and enterprise-grade solution that includes high availability and security features that companies like Civo require.
Using XtraDB Cluster with Percona Operator for MySQL meant that Civo could roll out its DBaaS offering for customers quickly and efficiently.
Working With Percona
Civo tested Percona Operator for MySQL and reviewed all the available documentation. Using this, the team was able to quickly deploy the infrastructure they needed to provide a DBaaS to their customers and automate deployment tasks so that it could run efficiently. The Percona XtraDB Cluster and operator supports Civo’s requirements around creating high availability and standalone database clusters, scaling them automatically, handling backup and restore operations, and automatically recovering instances when required. The operator also manages database logging, metrics and monitoring for the service.
Civo runs its customer workloads in isolated tenant environments, which required customization of resources such as annotations and needed the operator to run in “namespace” rather than cluster-wide mode. Percona and Civo collaborated to deliver updates to XtraDB and then make them available as part of the overall service.
Civo relies on Percona for its database as a service offering to its customers, Percona Operator for MySQL based on XtraDB Cluster. Working with Percona, the team at Civo has developed and implemented its DBaaS for customers.