Setup Ansible to efficiently manage N Linux VMs

par Gonzalo
Dernière mise à jour : 23/03/2016

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

Ce modèle ARM (Azure Resource Manager) a été créé par un membre de la communauté et non par Microsoft. Chaque modèle ARM vous est concédé sous licence sous un contrat de licence par son propriétaire, et non par Microsoft. Microsoft ne peut pas être tenu responsable des modèles ARM fournis et concédés sous licence par les membres de la communauté, ni ne vérifie leur sécurité, leur compatibilité ou leurs performances. Les modèles ARM de la communauté ne sont pris en charge par aucun programme ou service de support Microsoft. Ils sont rendus disponibles EN L'ÉTAT sans garantie d'aucune sorte.

Paramètres

Nom du paramètre 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.

Utiliser le modèle

PowerShell

New-AzureRmResourceGroupDeployment -Name <deployment-name> -ResourceGroupName <resource-group-name> -TemplateUri https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/ansible-advancedlinux/azuredeploy.json
Installer et configurer Azure PowerShell

Ligne de commande

azure config mode arm
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
Installer et configurer l'interface de ligne de commande multiplateforme Azure