Content for Ansible Fest 2018
- Service principal description - generate
- Populate credentials file
- Deploy two VMs from playbooks for Mattermost - azure_rm_virtualmachine Deploy Ansible Role to configure first server as MySQL
- Deploy Mattermost application to second server
- Deploy VM from ARM template
- Install Tomcat (or othe application) on VM
- Store VM image deployed from ARM template
- Create 2 node Scale Set from stored ARM template image
- Scale Out VMSS to 3 nodes
- Application Gateway?
This file contains all the variables shared by demo tasks:
Variable | Description |
---|---|
resource_group | This is the resource group name used by demos |
location | Region where resources should be created |
vm_name | Virtual machine name that contains application |
vm_image_name | Name of target image used in the demo |
admin_username | VMSS admin user name |
admin_password | VMSS admin password |
vmss_name | VMSS name |
mysql_username | MySQL user name |
mysql_password | MySQL password |
mysql_server_name | MySQL server name |
mysql_database_name | MySQL database name (should be: mattermost) |
appgateway_name | Application Gateway name |
vnet_name | Virtual network name |
subnet_name | Application Gateway subnet name |
vm_publicip_name | Virtual Machine public IP name |
vmss_publicip_name | Load balancer public IP name |
appgateway_public_ip_name | App Gateway public IP name |
ansible-playbook 0x-xxxxxx.yml -e @vars.yml
Should be run before the event.
It will create all required prerequisites:
- create empty resource group
TODO: decide what prerequisites we actually need
- deploys VM for Mattermost Application
- creates MySQL Server
- creates mattermost database
- creates appropriate firewall rule for Mattermost VM
- sets up Mattermost on VM server
- stops VM with Mattermost
- generalizes it (using REST API)
- creates image
TODO: remove Mattermost VM??
This task creates:
- load balancer
- virtual machine scaleset
and currently also a few prerequisites:
- virtual network
- subnet
- public ip address
- network security group
TODO: Reuse networking infrastructure from previous tasks
This task creates application gateway, but us still not connected to the scaleset.