MySQL NDB Cluster is one of the best solutions to implement shared-nothing databases, which are durable and scale well.
NDB cluster consists of several elements: there are management servers, data nodes and SQL nodes. Each of them have to be installed and configured properly – but this makes it cumbersome to deploy NDB cluster manually.
In this blog post we will show you how it is done.
First of all, we’ll assume that you have passwordless SSH access configured to all the nodes you will use to deploy NDB Cluster on. Once this is done, you can start the deployment of NDB Cluster using ClusterControl.
You start by selecting the “Deploy” option in the wizard.
As the first step in the wizard, you need to define how the SSH access works. It can either be a direct access with root user or it can be a sudo access with or without a password, as can be seen below:
You can also name your cluster here and decide if you want ClusterControl to disable your firewall or AppArmor or SELinux. It is not needed if those tools are correctly configured to work with MySQL NDB Cluster.
As a next step you have to pick two management servers. You can use either an IP address or a hostname to identify the host.
Then, you need to define the database nodes. Again, you can use IP or hostname. Please keep in mind that you need to have an even number of nodes: 2, 4, 6 etc. It is possible to deploy up to 14 data nodes in your cluster.
Finally, you’ll want to deploy SQL nodes which will be gateways into your MySQL NDB Cluster. Here you should fill a root password for those nodes.
Once you are done here, click “Deploy” button and ClusterControl will start the deployment.
An Activity menu will show you the progress of the job.
Once it’s done, you can start using ClusterControl to monitor and manage your MySQL NDB Cluster.
I trust this blog post will help you to efficiently deploy MySQL NDB Cluster using ClusterControl.
Just try it out for yourself by installing ClusterControl (it’s free)!