Database management for cloud stats provider
Migrating from MySQL to MariaDB with ClusterControl.
Background
CloudStats is a SaaS cloud-based server monitoring platform capable of monitoring Linux, Windows, macOS servers and personal computers, websites, and IP addresses.
CloudStats collects the most important statistics information from your servers, instances, and droplets using a secure CloudStats agent which is installed on the monitored servers. More than 1300 servers and 1000 websites are monitored by CloudStats as of October 2015 and have the CloudStats agent installed on them.
Compared to other server monitoring platforms, CloudStats is very easy to use and does not require any special knowledge to operate. The agent can be installed using just one single shell command and any number of servers can be quickly added to the panel.
Challenge
Due to the rapid growth of the number of monitored servers and websites that all send statistics information to CloudStats every minute, the CloudStats team has faced the challenge of a rapidly growing MySQL database that soon became unable to handle the large number of INSERT and UPDATE requests performed at each agent update.
It turned out, that a single MySQL instance was failing to process such a large number of incoming requests and was frequently going down which prevented normal operation of CloudStats platform and caused user discontent.
Another problem was that at the 3rd-party server provider that CloudStats was using the servers were not optimized for high database performance and were showing low disk IOPS rate which is critical for database-intensive applications. Low disk IOPS rate contributed to CloudStats issues at that time.
It was of particular importance to plan CloudStats infrastructure in such a way that it would support the further exponential growth and would allow to add many more features into CloudStats control panel.
Solution
In order to solve the issues that CloudStats platform was having WooServers’ team had to analyze the structure of the application and find the suitable techonologies and server configurations that would allow to achieve long-term application scalability and fault tolerance.
Due to the fact that CloudStats is a Ruby-based application that uses Apache Tomcat for its front-end and MySQL for its backend, our team decided to distribute applications over different server types in order to both maximize application performance and achieve scalability.
First of all, in order to solve the database issues, we selected the MariaDB database cluster which is a drop-in replacement for MySQL. Since MariaDB does not have a particular graphic
control panel, we made a decision to use the control panel provided by Severalnines group that has the ClusterControl tool which allows to deploy, manage, monitor, and scale MariaDB and other database cluster deployments.
In order to make sure MariaDB cluster is able to handle high database load causing by CloudStats platform, we used the WooServers Amadeus XRV 6500 server series that is built
to handle high-load database environments such as that of CloudStats. Furthermore, this server boasts an outstanding 55,000 IOPS rate which cannot be easily matched by cloud
environments that use shared disk storages like Amazon AWS, Rackspace Cloud, or Microsoft Azure.
Outcome
Thanks to close cooperation with Severalnines group which provides the database cluster automation tool ClusterControl, WooServers team was able to easily set up and provision a MariaDB Galera Cluster on its infrastructure to meet the growing database demands of CloudStats system.
While cluster management can be a tedious task, ClusterControl allows to easily provison, scale, monitor and manage your Galera cluster. Severalnines has provided useful “Quick Configuration” scripts which allow to provision a new cluster within minutes.
Due to WooServers SSD dedicated servers being particularly optimized for MariaDB/MySQL performance, using ClusterControl panel offers the best combination for MariaDB cluster management. The fact that ClusterControl comes with pre-defined support of Load Balancing tools, such as HaProxy and MaxScale, makes it the best database management tool on the market currently.
Thanks to the perfect match of WooServers hardware infrastructure and database management software from Severalnines it became possible to create a solution optimized for sustaining database intensive processes and achieve platform scalability, fault tolerance as well as prepare the system for future growth.
Summary
Easy database management
While cluster management can be a tedious task, ClusterControl allows to easily provison, scale, monitor, and manage your Galera cluster.
Set up and provision MariaDB Galera Cluster
Thanks to close cooperation with Severalnines group which provides the database cluster automation tool ClusterControl, WooServers team was able to easily set up and provision a MariaDB Galera Cluster.
New combined product range
A new combined product range was created to satisfy the needs of the clients who require a complete cluster solution for their high load and database-intensive IT environments.
Ready to automate your database?
Sign up now and you’ll be running your database in just minutes.