Severalnines Blog
The automation and management blog for open source databases

Deploying and Monitoring MySQL and MongoDB clusters in the cloud with NinesControl

Severalnines
Posted in:

NinesControl is a new service from Severalnines which helps you deploy MySQL, Galera, and MongoDB clusters in the cloud. In this blog post we will show you how you can easily deploy and monitor your databases on on AWS, DigitalOcean, and Google Cloud.

Deployment

NinesControl now supports Amazon Web Services, DigitalOcean, and Google Cloud. Before you attempt to deploy, you need first to configure access credentials to the cloud of your choice. We covered this topic in a blog post.

Once it’s done, you should see in the “Cloud Accounts” tab the credentials defined for the chosen cloud provider.

You’ll see screen below as you do not have any clusters running yet:

You can click on “Deploy your first cluster” to start your first deployment. You will be presented with a screen like below - you can pick the cluster type you’d like to deploy, set some configuration settings like port, data directory and password. You can also set number of nodes in the cluster and which database vendor you’d like to use.

For MongoDB, the deployment screen is fairly similar with some additional settings to configure.

Once you are done here, it’s time to move to the second step - picking credentials to use to deploy your cluster. You have an option to pick either DigitalOcean and Amazon Web Services. You can also pick whatever credentials you have added to NinesControl. In our example, we just have a single credential but it’s perfectly ok to have more than one credential per cloud provider.

Once you’ve made your choice, proceed to the third, final step in which you will pick what kind of VM’s you’d like to use. This screen differs between AWS and DigitalOcean.

If you picked AWS, you will have an option to choose the operating system and VM size. You also need to pick the VPC in which you will deploy too and subnet which will be used by your cluster. If you don’t see anything on the drop-down list, you can click on “[Add]” buttons to create both VPC and subnet and NinesControl will create these for you. Finally, you need to set the volume size of the VMs. After that, you can trigger the deployment.

DigitalOcean uses a bit different screen setup but the idea is similar - you need to pick a region, operating system and a size of droplet.

Once you are done, click on “Deploy cluster” to start deployment.

Status of the deployment will be show in the cluster list. You can also click on a status bar to see full log of a deployment. Whenever you’d like to deploy a new cluster, you will have to click on the “Deploy cluster” button.

Monitoring

Once deployment completes, you’ll see a list of your clusters.

When you click on one of them, you’ll see a list of nodes in the cluster and cluster-wide metrics.

Of course, metrics are cluster-dependent. Above is what you will see on a MySQL/MariaDB Galera cluster. MongoDB will present you different graphs and metrics:

When you click on a node, you will be redirected to host statistics of that particular node - CPU, network, disk, RAM usage - all of those very important basics which tell you about node health:

As you can see, NinesControl not only allows you to deploy Galera and MongoDB clusters in a fast and efficient way but it also collects important metrics for you and shows them as graphs.

Give it a try and let us know what you think.

Related Post

Docker: All the Severalnines Resources

Severalnines was an early believer in Docker and have developed many exciting resources and tutorials on how to utilize Docker for open source database management.

ClusterControl on Docker

This blog describes how to utilize a Docker image file to install a containerized version of ClusterControl.

Watch the tutorial: backup best practices for MySQL, MariaDB and Galera Cluster

These are the replay details of our webinar on backup strategies and best practices for MySQL, MariaDB and Galera clusters. If you missed the session, would like to watch it again or browse through the slides, they’re now online for viewing.

Using the Galera Replication Window advisor to avoid SST

In Galera Cluster, the gcache provides incremental state transfers by sending transactions to joining nodes. But if the gcache file is too small, this may cause full state snapshot transfers. The Galera replication window advisor will continuously review if your gcache size is large enough.