Create a HA Sharepoint Deployment

Last updated: 05/08/2016

This template creates 9 new Azure VMs, each group load balancer and a VNet. It configures a primary and backup AD Domain Controller for a new Forest and Domain, two SQL Servers and witness in AlwaysOn configuration and 4 Sharepoint VMs with a Sharepoint farm and site

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
sharepointFarmName The name of the SharePoint farm
location The region to deploy the resources into. Only change if resources need to be deployed to a different location than the resource group.
adminUsername The name of the administrator account of the new VMs and Domain
adminPassword The password for the administrator account of the new VMs and Domain
storageAccountNamePrefix The prefix of the new storage account created to store the VM disks. Different storage accounts will be created for AD, SQL, and SharePoint VMs.
storageAccountType The type of storage account
virtualNetworkName Name of virtual network to be created
virtualNetworkAddressRange The address range of the new VNET in CIDR format
staticSubnet The address range of the subnet static IPs are allocated from in the new VNET
_artifactsLocation Change this value to your repo name if deploying from a fork
_artifactsLocationSasToken Auto-generated token to access _artifactsLocation
domainName The FQDN of the AD Domain created
adVMSize The size of the AD VMs created
adPdcNicIPAddress The IP address of the new AD VM
adBdcNicIPAddress The IP address of the new AD VM
sqlVMSize The size of the SQL VMs created
witnessVMSize The size of the witness VM created
sqlServerServiceAccountUserName The SQL Server service account name
sqlServerServiceAccountPassword The SQL Server Service account password
sqlLBIPAddress The IP address of the new SQL ILB
sqlSubnet The address range of the SQL subnet created in the new VNET
spWebSubnet The address range of the SP Web subnet created in the new VNET
spAppSubnet The address range of the SP App subnet created in the new VNET
spWebIPRGName Resource Group containing existing SP Web IP address
spWebIPNewOrExisting Indicates whether the Sharepoint farm's IP is new or existing
spWebIPAddressName The new or existing - depending on value of spWebIPNewOrExisting parameter - IP address name for SP Web
dnsPrefix The DNS Prefix for the Public IP Address for the Sharepoint Web Application
spVMSize The size of the SP VMs Created
sharePointSetupUserAccountUserName The Sharepoint Setup account name
sharePointSetupUserAccountPassword The Sharepoint Setup account password
sharePointFarmAccountUserName The Sharepoint Farm account name
sharePointFarmAccountPassword The Sharepoint Farm account password
sharePointFarmPassphrasePassword The Sharepoint Farm Passphrase
spSiteTemplateName The Sharepoint Content Site Template Name

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