Skip Navigation

Deploy a 3 node Percona XtraDB Cluster in Availability Zones

Last updated: 11-06-2021

This template deploys a 3 node MySQL high availability cluster on CentOS 6.5 or Ubuntu 12.04

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
location Default location for the resources
adminUsername user name to ssh to the VMs
adminPassword password to ssh to the VMs
virtualNetworkName virtual network name for the cluster
dbSubnetName subnet name for the MySQL nodes
vnetAddressPrefix IP address in CIDR for virtual network
dbSubnetAddressPrefix IP address in CIDR for db subnet
vmIPs IP Addresses for the 3 VMs
vmNamePrefix host name prefix for the VMs
imagePublisher publisher for the VM OS image
imageOffer VM OS name
imageSKU VM OS version
customScriptCommandToExecute bash script command line
storageAccountType Storage account type for the data disks
_artifactsLocation Linked Templates base url
_artifactsLocationSasToken The sasToken required to access _artifactsLocation. When the template is deployed using the accompanying scripts, a sasToken will be automatically generated.
vmSize Default VM Size

Use the template


New-AzResourceGroup -Name <resource-group-name> -Location <resource-group-location> #use this command when you need to create a new resource group for your deployment
New-AzResourceGroupDeployment -ResourceGroupName <resource-group-name> -TemplateUri
Install and configure Azure PowerShell

Command line

az group create --name <resource-group-name> --location <resource-group-location> #use this command when you need to create a new resource group for your deployment
az group deployment create --resource-group <my-resource-group> --template-uri
Install and Configure the Azure Cross-Platform Command-Line Interface