Deploys a 2 node master/slave MySQL replication cluster

Last updated: 22/05/2018

This template deploys a 2 node master/slave MySQL replication cluster on CentOS 6.5 or 6.6

This Azure Resource Manager (ARM) template was created by a member of the community and not by Microsoft. Each ARM template is licensed to you under a licence agreement by its owner, not Microsoft. Microsoft is not responsible for ARM templates provided and licensed by community members and does not screen for security, compatibility or performance. Community ARM templates are not supported under any Microsoft support programme or service, and are made available AS IS without warranty of any kind.


Parameter Name Description
dnsName Connect to your cluster using
vmUserName user name to ssh to the VMs
vmPassword password to ssh to the VMs
mysqlRootPassword mysql root user password single quote not allowed
mysqlReplicationPassword mysql replication user password single quote not allowed
mysqlProbePassword mysql probe password single quote not allowed
vmSize size for the VMs
diskType Storage account type for the cluster
virtualNetworkName Virtual network name for the cluster
vnetNewOrExisting Identifies whether to use new or existing Virtual Network
virtualNetworkExistingRGName If using existing VNet, specifies the resource group for the existing VNet
dbSubnetName subnet name for the MySQL nodes
vnetAddressPrefix IP address in CIDR for virtual network
dbSubnetAddressPrefix IP address in CIDR for db subnetq
dbSubnetStartAddress Start IP address in the subnet for the VMs
imagePublisher publisher for the VM OS image
imageOffer VM OS name
imageSKU VM OS version
mysqlFrontEndPort0 MySQL public port master
mysqlFrontEndPort1 MySQL public port slave
sshNatRuleFrontEndPort0 public ssh port for VM1
sshNatRuleFrontEndPort1 public ssh port for VM2
mysqlProbePort0 MySQL public port master
mysqlProbePort1 MySQL public port slave
artifactsPath template and script file location
customScriptCommandToExecute bash script command line
publicIPName public IP name for MySQL loadbalancer
location Location for all resources.

Use the template


New-AzureRmResourceGroupDeployment -Name <deployment-name> -ResourceGroupName <resource-group-name> -TemplateUri
Installing and configuring Azure PowerShell

Command line

azure config mode arm
azure group deployment create <my-resource-group> <my-deployment-name> --template-uri
Installing and configuring the Azure cross-platform command-line interface