Control Your Database Infrastructure

Automation & Management of MariaDB Galera Clusters: New European Webinars with SkySQL - The MariaDB Company

August 21, 2014
By Severalnines

MariaDB Galera Cluster involves more effort and resource to administer than standalone MariaDB systems. If you would like to learn how to better manage your MariaDB cluster, then this webinar series is for you. 


We will give you practical advice on how to introduce clusters into your MariaDB / MySQL  environment, automate deployment and make it easier for operational staff to manage and monitor the cluster using ClusterControl.


Language, Date & Time: 


English - Tuesday, September 30th @ 11am CEST: Management & Automation of MariaDB Galera Clusters

French - Tuesday, October 7th @ 10am CEST: Gestion et Automatisation de Clusters Galera pour MariaDB

German - Wednesday, October 8th @ 10am CEST: Verwaltung und Automatisierung von MariaDB Galera Cluster


High availability cluster configurations tend to be complex, but once they are designed, they tend to be duplicated many times with minimal variation. Automation can be applied to provisioning, upgrading, patching and scaling. DBAs and Sysadmins can then focus on more critical tasks, such as performance tuning, query design, data modeling or providing architectural advice to application developers. A well managed system can mitigate operational risk, that can result in significant savings and reduced downtime. 




MariaDB Roadshow - London


And if you’re in London this September, do join us at the MariaDB Roadshow event on Thursday, September 18th. We’ll be talking about Automation & Management of Database Clusters there as well and would love to talk to you in person! 


How to Install ClusterControl on Servers without Internet Access

August 18, 2014
By Severalnines

There are several ways to get ClusterControl installed on your database infrastructure, as described in the ClusterControl Quick Start Guide. One simple way is to use an installation script, This script automates the whole process, and is executed on the host where you want to install ClusterControl. By default, it assumes the host has internet connectivity during the installation process.


For users who are not able to have their ClusterControl hosts connect to the Internet during the installation, we have some good news! The installer script now supports offline installations.




Prior to the offline install, make sure you meet the following requirements for the ClusterControl node:

  • Ensure the offline repository is ready. We assume that you already configured an offline repository for this guide. Details on how to setup offline repository is explained on the next section.
  • Firewall, SElinux or AppArmor must be turned off. You can turn on the firewall once the installation has completed. Make sure to allow ports as defined on this page.
  • MySQL server must be installed on the ClusterControl host.
  • ClusterControl packages for the selected version must exist under s9s_tmp directory from the script’s execution path.

We will now explain these steps in the following sections.


Setting Up Offline Repository


The installer script requires an offline repository so it can automate the installation process by installing dependencies. 




1. Insert the DVD installation disc into the DVD drive.


2. Mount the DVD installation disc into the default media location at /media/CentOS:

$ mount /dev/cdrom /media/CentOS


We’re Hiring! And Looking to Add More 9s to the Severalnines Team!

August 15, 2014
By Severalnines




We're looking for an energetic and talented web developer to join our small but agile web team. This position is full-time and pay is negotiable. The hours are flexible and work can be done remotely.


Severalnines is a self-funded startup with a dozen employees; headquartered in Stockholm, Sweden and with a globally distributed, home-office based team. We provide automation and management software for database clusters. Our ClusterControl product is the leading management application for database clusters and is used by thousands of companies.


We were founded in 2010 and launched our product that same year, so you’ll be working on a popular, tried & tested product. There is opportunity to have an immediate impact though as we’re a small team and there is plenty of work to be done as we continue to enhance our product.


New Webinar: Performance Tuning of HAProxy for Database Load Balancing

August 13, 2014
By Severalnines


New Webinar: Performance Tuning of HAProxy for Database Load Balancing

As a follow-up to our previous webinar on MySQL Load Balancing and HAProxy, we are glad to organize a new webinar on Performance Tuning of HAProxy. Tuning your HAProxy instances can significantly increase the performance of your application and decrease response times. Joint us for this special session to find out more!


Date, Time & Registration: 

Tuesday, September 9th @10am CEST (Europe & MEA / Asia Pacific)

Register here

Tuesday, September 9th @6pm CEST (North America / LATAM)

Register here


This webinar will cover the performance tuning basics for HAProxy and explain how to take advantage of some of the new features in 1.5, released in June 2014 after 4 years of development work. We’re delighted to be joined by a well known HAProxy expert, Baptiste Assmann. 



  • New features in HAProxy 1.5
  • What can HAProxy tell you about your application and your database
  • OS/Network performance tuning for databases with short living connections
  • Handling persistent connections
  • Dynamic re-configuration
  • HAProxy multi-process: advantages and limitations
  • HAProxy active/active failover setups
  • Security considerations



Joining us this time is Baptiste Assmann, Product Manager at HAProxy Technologies and a contributor to the HAProxy project.


Clustering Moodle on Multiple Servers for High Availability and Scalability

August 12, 2014
By Severalnines

Moodle is an open-source e-learning platform (aka Learning Management System) that is widely adopted by educational institutions to create and administer online courses. For larger student bodies and higher volumes of instruction, moodle must be robust enough to serve thousands of learners, administrators, content builders and instructors simultaneously. Availability and scalability are key requirements as moodle becomes a critical application for course providers. In this blog, we will show you how to deploy and cluster moodle/web, database and file-system components on multiple servers to achieve both high availability and scalability. 


We are going to deploy moodle on top of GlusterFS clustered file system and MariaDB Galera Cluster 10. To eliminate any single point of failure, we will use three nodes to serve the application and database while the remaining two are used for load balancers and the ClusterControl management server. This is illustrated in the following figure:




All hosts are running on CentOS 6.5 64bit with SElinux and iptables disabled. The following is the host definition inside /etc/hosts: 	moodle web db virtual-ip mysql 	moodle1 web1 db1 	moodle2 web2 db2 	moodle3 web3 db3 	lb1 	lb2 clustercontrol


How-to and Performance Impact of SSL-Encrypted Replication Traffic in Galera Cluster for MySQL

August 7, 2014
By Severalnines


Deploying Galera Clusters across WAN environments might lead to concerns around data privacy and security - especially as more organisations are having to comply with national and international regulations. You would not want hackers eavesdropping or intercepting replication traffic. Encrypted replication hides what is sent between the Galera nodes, and makes sure each node is only communicating to the ones it trusts. But how expensive is encryption?


In this blog, we will show you how to encrypt the replication traffic between your Galera nodes. We will also look into the performance impact of this encryption.


Encrypted Replication


Galera supports SSL for the encryption of replication traffic. When encryption is enabled, Galera group communication and Incremental State Transfer (IST) happens over an SSL-encrypted connection. The default SST methods do not support SSL, however this can be scripted.


All nodes in a Galera Cluster communicate via a group communication protocol (default port is 4567), whereby writesets are replicated from originating nodes to the rest of the nodes for certification and possibly commit. This communication protocol can be encrypted with an SSL certificate and a private key.


Note that this does not encrypt the communication between the MySQL client (the application) and the MySQL instances. Finally, at the time of writing, some extra steps are required when adding nodes automatically via ClusterControl.


Enabling Encrypted Replication


Enabling encryption is now supported by the s9s tools available from our Github repository. This feature will be included in the next release of ClusterControl, scheduled by the end of August. The implementation flow is based on Codership’s Galera Cluster documentation.


The following requirements must be met if you would like to run encrypted Galera replication:

  • All nodes in the cluster must run with either SSL enabled or disabled. You cannot have some of them run on SSL while others do not.
  • All Galera nodes must use the same certificate and key file.
  • Galera Cluster need to re-bootstrap to load or unload the SSL parameters.


We’d love to go to Paris for the OpenStack Summit - please vote for our talks!

August 6, 2014
By Severalnines


Well over a thousand sessions have been submitted for the OpenStack Summit and two of them includes our good selves! We’ve submitted two talks with partners of ours: 


… and would love it if the talks were included in the final agenda. For that to happen, we need a few more of your votes today!


The OpenStack Summit is a five-day conference for developers, users, and administrators of OpenStack Cloud Software. It takes place in Paris this November.


You must be an OpenStack Foundation member to vote for the talks that have been submitted. If you aren’t a member, sign up here – it’s free and only takes a minute.  


Our Talk in ‘Products, Tools & Services’:

ClusterControl: Efficient and reliable MySQL Management, Monitoring, and Troubleshooting for OpenStack HA

Speakers: Peter Boros (Percona), Vinay Joosery (Severalnines)


Our Talk in ‘Openstack Operations’:

Deploying Databases for OpenStack

Speakers: Matt Griffin, Jay Pipes (Mirantis), Amrith Kumar (Tesora), Vinay Joosery (Severalnines)



MySQL plays a critical role in OpenStack. It serves as the host database supporting most components such as Nova, Glance, and Keystone and is the most mature guest database in Trove. And we provide the tools necessary to automate and manage your MySQL database clusters. Please vote for our talk to hear more about what we do!


Thank you for your support and we hope to see you at the Paris OpenStack Summit in November!


Announcing ClusterControl Support for MariaDB 10

July 22, 2014
By Severalnines

We just wanted to make it official: Severalnines ClusterControl now supports MariaDB 10!


As most of you know will know by now, MariaDB 10 is the newest and most advanced version of the popular MariaDB relational database system. Whilst remaining application-compatible with the MySQL database, it adds many new capabilities to address the most challenging web and enterprise application use cases. Cluster deployments would be based on MariaDB Galera Cluster 10, which is a complete merge of MariaDB 10.0.12 and Galera Cluster. 


ClusterControl for MariaDB Clusters


ClusterControl gives you the power to deploy, manage, monitor and scale entire MariaDB Galera clusters efficiently and reliably. ClusterControl acts as a virtual DBA assistant and frees system administrators and developers from the complexity and learning curves associated with database clusters. 



MariaDB European Roadshow - Summer 2014


We had the opportunity to showcase ClusterControl for MariaDB 10 recently during the European MariaDB Roadshow, which took us to Helsinki, Amsterdam, Paris, Hamburg, Berlin and Frankfurt. We were delighted of course to be invited by SkySQL as guest speakers and to have the opportunity to talk to existing and future MariaDB users. 


There is one more date scheduled at the moment for this roadshow - London in September.


Joint live webinar: Management & Automation of MariaDB Galera Clusters


If you’ve missed the European Roadshow and/or would like a more in-depth presentation and demo of ClusterControl, please do register for our joint webinar with SkySQL on 30th September 2014.


How to Configure ClusterControl to run on nginx

July 10, 2014
By Severalnines

ClusterControl uses the Apache HTTP Server to serve its web interface, but it is also possible to use nginx. nginx + PHP fastcgi is well-known for its capabilities to run on a small memory footprint compared to standard Apache + PHP DSO.


In this post, we will show you how to run ClusterControl on nginx web server by swapping out the default Apache web server installed during the initial deployment. This blog post does not mean that we officially support nginx, it just an alternative way that a portion of our users have been interested in. For instance, Phil Bayfield wrote a blog on the same topic a while back.


Apache Configuration


Before we jump into nginx configurations, let’s look at how the ClusterControl web application is configured with Apache web server. ClusterControl consists of two web components, a web UI and CMONAPI. These components are located in the Apache’s document root which might vary depending on the operating system.


1. Make sure ClusterControl UI and CMONAPI exist in the document root. Document root for RedHat/CentOS and Ubuntu 14.04 LTS (Apache 2.4) is located at /var/www/html while Debian and Ubuntu 12.04 and lower is located at /var/www. ClusterControl will be installed under this root directory and you should see something like this:

$ ls -l /var/www/html
drwxr-xr-x. 6 apache apache 4096 Jul  9 16:31 cc-cmonapi-1.2.6
drwxr-xr-x. 5 apache apache 4096 Jul  9 16:31 cc-ui-1.2.6
lrwxrwxrwx. 1 root   root     26 Jul  9 16:31 clustercontrol -> /var/www/html//cc-ui-1.2.6
drwxr-xr-x. 4 apache apache 4096 Jul  8 18:34 cmon
lrwxrwxrwx. 1 root   root     31 Jul  9 16:31 cmonapi -> /var/www/html//cc-cmonapi-1.2.6


2. Apache must be able to read custom configuration file (.htaccess) under the document root directory, by setting AllowOverride options to All. Example in /etc/httpd/conf/httpd.conf:

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all


3. Require the following PHP modules to be installed and enabled:

  • common
  • mysql
  • ldap
  • gd
  • curl

The standard Apache installation via package manager will install PHP to run as dynamic shared object (DSO). Running on this mode will require you to restart Apache in case of php configuration changes.


New Webinar on July 9th: How To Set Up SQL Load Balancing with HAProxy

June 17, 2014
By Severalnines


We continuously see great interest in MySQL load balancing and HAProxy, so we thought it was about time we organised a live webinar on the topic!


As most of your will know, database clusters and load balancing go hand in hand. 


Once your data is distributed and replicated across multiple database nodes, a load balancing mechanism helps distribute database requests, and gives applications a single database endpoint to connect to. 


Instance failures or maintenance operations like node additions/removals, reconfigurations or version upgrades can be masked behind a load balancer. This provides an efficient way of isolating changes in the database layer from the rest of the infrastructure. 


Webinar: How To Set Up Load Balancing with HAProxy


Wednesday, July 9th 2014

Register now - Europe/MEA/APAC

Register now - North America/LatAm


In this webinar, we will cover the concepts around the popular open-source HAProxy load balancer, and show you how to use it with your SQL-based database clusters. We will also discuss HA strategies for HAProxy with Keepalived and Virtual IP.


Keep in touch
Signup for our newsletter:

Alex's Blog

Quickstart $ git clone $ cd docker/percona-xtradb-5.6/centos $ ./ $ ./ 3 $ ./ $ ssh root@ (root123) $ mysql -...
24 weeks 3 days ago

Johan's Blog

FOREIGN KEYs in MySQL Cluster is a big step forward. It is now possible to run enterprise software with NDB Cluster as the storage backend. Over the years, the lack of FOREIGN KEYs have been one of...
1 year 8 weeks ago