• 4 min read

MariaDB Enterprise Cluster® on Azure

We are excited to announce the launch of MariaDB Enterprise Cluster in the Microsoft Azure Marketplace. This offering provisions a 3-node production-ready MariaDB Galera cluster with MaxScale.

As part of our continued efforts to provide a first-class experience to developers using open source technologies in Microsoft Azure, today we are excited to announce the launch of MariaDB Enterprise Cluster in Microsoft Azure Marketplace.

MariaDB is the database that powers billions of users on sites like Booking.com and Wikipedia. It has more than two million users globally and 500 customers in more than 45 countries subscribe to MariaDB Enterprise Server, including global brands such as HP, Wikipedia, Deutsche Telekom, Virgin Mobile, and Booking.com.

With this announcement, developers and DBAs can now provision a 3-node production-ready MariaDB Enterprise Cluster with MariaDB MaxScale®, using virtual machines of sizes D2/DS2 and up. MariaDB Enterprise Cluster with Galera technology is a multi-master cluster that achieves high availability and scalability through features such as synchronous replication, read and write to any cluster nodes without slave lag, automatic membership control of new nodes joining the cluster and failed nodes dropping from the cluster.

MariaDB MaxScale is a database gateway that insulates client applications from the complexities of a database cluster. In addition to load balancing, MariaDB MaxScale also provides logging, filtering, and monitoring mechanisms. The MaxScale VMs of this architecture are two A series virtual machines with no data disks attached.  An Azure load balancer is placed in front of the MaxScale VMs to achieve high availability.  The VMs can be accessed through the load balancer’s public IP or DNS.

All the VMs run on a custom VM image based on OpenLogic CentOS 7.2. The following diagram illustrates the MariaDB deployment architecture on Azure.

image

This offering is made available by our partnership with MariaDB Corporation, a leader in open source database solutions for SaaS, Cloud, and on-premises applications that require high availability, scalability, and performance.

With partnerships such as the one we are announcing today, we continue our journey to provide first-class experiences for open source practitioners in a hyper scale, hybrid cloud platform.  If you are looking to accelerate time-to-market for your open source based data solutions and applications or to start exploring cloud-native open source solutions, check out our trial and get started for free!

Getting Started

MariaDB Enterprise Cluster is available in the Azure Marketplace. To deploy, go to the Azure portal, select New, and search for MariaDB.  Make sure to select MariaDB Enterprise Cluster + MariaDB MaxScale.

Marketplace

Step 1

After clicking Create on the offer cover page, fill in the parameters on the Basics page.

  • If you don’t already have a MariaDB Enterprise Download token, you can obtain one for free. The token must be valid in order for the deployment to succeed.
  • When you choose a location, please be aware that premium storage is not yet available in all datacenters. So if you plan to use premium storage with DS series VMs, pick a location where premium storage is available.  

Step1Basics

Step 2

On the VM Configuration page, specify VM sizes and storage account type.

  • If you choose the DS series VMs for database nodes, it is recommended to select Premium-LRS as the storage account type instead of the default Standard-LRS to fully leverage the performance of premium storage.
  • Based on the VM size you choose, you may exceed the default quota for VM cores in your subscription. If this happens, you can open a support ticket and specify the region in which you would like core quota increased, and specify that the type of cores needed is ARM (Azure Resource Manager).
  • The SSH public key must be a valid SSH key.

image

Step 3

On the App Access Configuration page, specify the information needed for a client application to access the cluster.

  • By default, the DNS name is prefixed by the cluster name specified in Step 1. The full DNS name will be:
    ..cloudapp.azure.com
    You can verify that this name is available, and if not, you can change it to another name.
  • App username and password are used by client applications to access the cluster.
  • There are two options in “Load Balancer Visibility”:
    • Internal – the MaxScale endpoints for MariaDB can only be accessed via an internal load balancer
    • Public – the MaxScale endpoints for MariaDB can be accessed from the Internet
  • App schema/database is the name of the database that will be created for client applications.

image

Follow the wizard to verify the parameters and create the cluster. It should take about 15 to 25 minutes for the deployment to complete. Once the cluster is ready, you can access it remotely with the following command if you enabled public load balancer in Step 3.

mysql –h ..cloudapp.azure.com –P 4006 –u  –p

Alternatively, if you enabled internal load balancer in Step 3, you can SSH into MaxScale using the same DNS name, and connect to the cluster from within the Azure VNET.  The default SSH ports for the 2 MaxScale nodes are 2201 and 2202.  The default private IP for the internal load balancer is 10.0.1.10.

mysql –h 10.0.1.10 –P 4006 –u  –p

Troubleshooting

If the deployment fails, navigate to the resource group specified in Step 1.  Click on the failed deployment.

failure1

Expand the failure, and scroll down to the oldest event that caused the failure to see the detailed error messages.

failure2

If the error appears to be transient, or if it’s caused by invalid parameters, you may remove the entire resource group if it doesn’t contain any other resources created outside the MariaDB cluster and deploy again.

Additional Information