This advanced template deploys N Linux VMs ( Ubuntu) and it configures Ansible so you can easily manage all the VMS from the Ansible Controller VM. Additionally, it will execute an ansible Playbook that creates a RAID with all the available data disks. Don't suffer more pain configuring and managing all your VMs , just use Ansible! Ansible is a very powerful masterless configuration management system based on SSH. Do you need 1 or 10 or 100 VMs? It won't make any difference with Ansible playbooks, just apply consistent configuration to all your VMS
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.
Parameters
Parameter Name | Description |
---|---|
storageAccountType | Storage account Type. Standard_LRS or Premium_LRS |
vmSize | VM Size, for Premium Storage specify DS VMs. |
vmSizeDataDisks | Data disks Size in GBs |
linuxFileSystem | Linux File system |
serversRole | Servers role, for instance webtier, database.A tag will be created with the provided value |
serversPurpose | Servers purpose, for instance development, test, pre-production, production. A tag will be created with the provided value |
numberOfVms | Number of VMs. The template will create N number of identical VMs |
adminUsername | Admin user name |
adminPassword | Admin password |
sshKeyData | ssh public key for the admin user |
sshStorageAccountName | Private storage account name in which you are storing your ssh certificates |
sshStorageAccountKey | Private storage account key in which you are storing your ssh certificates |
dnsLabelPrefix | DNS Label for the Public IP. Must be lowercase. It should match with the following regular expression: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$ or it will raise an error. |
publicIPType | Public facing IP Type. |
location | Location for all resources. |
Use the template
PowerShell
New-AzureRmResourceGroupDeployment -Name <deployment-name> -ResourceGroupName <resource-group-name> -TemplateUri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/ansible-advancedlinux/azuredeploy.jsonInstalling and configuring Azure PowerShell
Command line
azure config mode armInstalling and configuring the Azure cross-platform command-line interface
azure group deployment create <my-resource-group> <my-deployment-name> --template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/ansible-advancedlinux/azuredeploy.json