We were thrilled to announce the latest version of NinesControl early this week. Let’s have a closer look at some of the new features that were introduced.
Web console for accessing SSH, SQL and MongoDB command line
It is now possible to have SSH access from the NinesControl interface to any of your database servers, via a web based SSH proxy.
WebSSH and WebSQL - you can easily access your database’s shell and MySQL CLI directly from the NinesControl web page:
Just check the drop down menu for any of the database nodes, and you’ll see both WebSSH and WebSQL. If you are running MongoDB, you will have a MongoDB shell. Clicking on them opens a new window, with a connection to your database. It can be either access to the command line:
or access to the MySQL CLI:
Or access to the MongoDB CLI:
We use dedicated users to make such access possible - for the shell, it is ‘ninescontrol’ user and for the MySQL CLI - ‘ninescontroldb@localhost’. For MongoDB, it is the admin user you define when creating the MongoDB cluster. Make sure you don’t make changes to those users if you want to have this method of access available.
Add node to the cluster
With the new release of NinesControl, you have the tool to scale your cluster. If you ever find yourself in a position where you need one more database node to handle the load, you can easily add it through the “Add Node” action:
You will be presented with a screen where you need to pick the size of the new node:
After you click “Add Node”, the deployment process begins:
After a while node should be up and running.
Of course, whenever you feel like you don’t utilize all of your nodes, you can remove some of them:
While scaling your cluster up and down, please keep in mind that it is recommended to have odd number of nodes in both Galera and MongoDB clusters. You also should not reduce the number of nodes below three - this is a requirement if you want your cluster to be fault-tolerant.
Disable autorecovery for the cluster
NinesControl works in the background to make sure your cluster is up and running and your application can reach it and issue queries. Failed nodes are automatically recovered and restarted. Still, it may happen that you don’t want NinesControl to bring a node back up. It could be that you are performing some maintenance which requires the database instance to stay down. Maybe you want to restore an external binary backup and then bootstrap the rest of the cluster from that node? Right now it is extremely easy to disable automated recovery - all you need to do is to click on the Autorecovery switch in the UI:
It will change to:
Right now NinesControl will not attempt to restore nodes which failed.
Google Compute Engine Support
We hope that this blog post helped you better understand the new features available in NinesControl. Please give them a try and let us know what you think.