We have dedicated some time over the past few weeks to put ‘on paper’ four tutorials to help you install the Kubernetes MySQL Operator on dedicated platforms—AWS, Google Cloud Platform, Microsoft Azure and Digital Ocean.
Being a community-oriented initiative, our purpose is to share our Kubernetes-related work in order to encourage knowledge exchange with passionate developers just like us. Our entire Presslabs platform runs on Kubernetes; we’ve been having fun with it for almost 2 years, time in which we’ve earned the experience of building both the MySQL and the WordPress operators, and also other smaller, internal operators to streamline site, project and organization management.
Our MySQL Operator plays an important as it streamlines the MySQL deployment for our apps. Its benefits mark all you need in a MySQL cluster orchestration:
- Resilience due to its automatic failover function
- Carefree, automated recurrent backups
- Easy deployment and high-availability
- Built-in monitoring enabled by its integration with Prometheus.
Hence, its integration flexibility required a certain versatility in order to adapt to the three major platforms and their corresponding development needs.
Only after going great lengths while developing our MySQL Operator we’ve understood the importance of guided development, thus helping the community with a straightforward, A-to-Z installing procedure for different Kubernetes providers was a natural step to us.
We’re going to be honest with you and let you know beforehand that this is not a beginners’ guide.
Starting the cluster with flying colors requires basic knowledge about specific applications for Kubernetes such as:
It’s highly important to know what you can aim for, and we find it reasonably achievable to learn the following:
- How to deploy an application in Kubernetes
- How to create Kubernetes clusters in Amazon, Google Cloud, Microsoft Azure and Digital Ocean
- How to use helm, charts, kubectl
- How to install and use MySQL-Operator and basic operations such as creating MySQL clusters, backups, secrets, checking cluster and backup status.
Starting your Kubernetes cluster on AWS is now easier thanks to kops. We have previously attempted at using Amazon Elastic Container Service for Kubernetes, but it was pretty entangled to us. Some experiments failed despite following the documentation.
The small flop with EKS cost us a total of almost two days. On the contrary, kops made it happen in less than 15 minutes. This was by far the fastest install of all the three platforms we’ve tested.
With the help of kops, you can easily install all the tools you need by using simple command lines. The tutorial includes tips on basic configuration capabilities, as well as how to correctly perform backups.
Merging high-quality services is always a good idea. This is probably the friendliest platform of all, which directly influences the installing process.
The tutorial follows the same procedure as the AWS tutorial; follow the recommendations and put your container in motion.
The best part is that it took us about 30 minutes to make it happen.
Another user-friendly platform, It took about 30 minutes to run the Kubernetes cluster on Microsoft Azure. The rest is in our tutorial.
A user-friendly platform, It took about 30 minutes to run the Kubernetes cluster on Digital Ocean. The tutorial follows the same procedure as the Google Cloud and Microsoft Azure tutorials.
Of course, we’re not going to stop here. It was a nice learning experience and also an important step for us to encourage our MySQL Operator into greater interoperability.
In the upcoming period, we’re going to continue with our tutorials series where we’ll address new features we’ve been working on. Our WordPress Operator tutorial is definitely on the list, too, as well as new features of the MySQL Operator.
In the meantime, feel free to contribute to our operators and their docs which you can find on our Github page. We also have a gitter channel for MySQL Operator where you can join us for questions or even a juicy debate at any time!