-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcreatevm.yml
87 lines (79 loc) · 2.37 KB
/
createvm.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
---
# Resource_group and image has create before excute
- name: For Azure learn
hosts: localhost
connection: local
vars:
resource_group: myRG01
location: westeurope
storageaccount: sssaaa01
virtualnetwork: virtualnetwork01
subnet: subnet01
public_ip: public_ip01
security_ssh: security_ssh01
test_nic: test_nic01
vm_name: myVM01
tasks:
- name: create resource group
azure_rm_resourcegroup:
name: "{{ resource_group }}"
location: "{{ location }}"
- name: create storage account
azure_rm_storageaccount:
resource_group: "{{ resource_group }}"
name: "{{ storageaccount }}"
account_type: Standard_LRS
- name: create virtual network
azure_rm_virtualnetwork:
resource_group: "{{ resource_group }}"
name: "{{ virtualnetwork }}"
address_prefixes: "10.0.0.0/16"
- name: Add subnet
azure_rm_subnet:
resource_group: "{{ resource_group }}"
name: "{{ subnet }}"
address_prefix: "10.0.1.0/24"
virtual_network: "{{ virtualnetwork }}"
- name: create public ip
azure_rm_publicipaddress:
resource_group: "{{ resource_group }}"
allocation_method: Static
name: "{{ public_ip }}"
- name: Create security group that allows SSH
azure_rm_securitygroup:
resource_group: "{{ resource_group }}"
name: "{{ security_ssh }}"
rules:
- name: SSH
protocol: Tcp
destination_port_range: 22
access: Allow
priority: 101
direction: Inbound
- name: Create NIC
azure_rm_networkinterface:
resource_group: "{{ resource_group }}"
name: "{{ test_nic }}"
virtual_network: "{{ virtualnetwork }}"
subnet: "{{ subnet }}"
public_ip_name: "{{ public_ip}}"
security_group: "{{ security_ssh }}"
- name: create virtual machine
azure_rm_virtualmachine:
resource_group: "{{ resource_group }}"
name: "{{ vm_name }}"
state: present
vm_size: Standard_A0
managed_disk_type: Standard_LRS
admin_username: azureuser
admin_password: Password@0329
image:
offer: UbuntuServer
publisher: Canonical
sku: 16.04-LTS
version: latest
# - name: delete all auto create resource
# azure_rm_virtualmachine:
# resource_group: "{{ resource_group }}"
# name: "{{ vm_name }}"
# state: absent