-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathproxmox_deploy.yml
104 lines (98 loc) · 2.38 KB
/
proxmox_deploy.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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
- name: 'set facts'
hosts: 'localhost'
vars_prompt:
- name: ansible_password
prompt: "Node Password"
private: yes
pre_tasks:
- block:
- name: Generate an OpenSSH keypair with the default values (4096 bits, rsa)
openssh_keypair:
path: /home/{{ ansible_user_id }}/.ssh/id_rsa
- name: set_fact
set_fact:
devUser: "{{ ansible_user_id }}"
- name: Fetch the ida_rsa
shell: cat /home/{{ ansible_user_id }}/.ssh/id_rsa.pub
register: myidrsa
- name: set fact
set_fact:
playbook_idrsa2: "{{ myidrsa.stdout }}"
- name: 'prep proxmox hosts for automation'
hosts: 'PV_node1'
vars_prompt:
- name: ansible_password
prompt: "Node Password"
private: yes
- name: VM_template
prompt: "CN template"
default: debian-2022-template
private: no
- name: VM_name
prompt: "VM name"
private: no
- name: VM_password
prompt: "VM password"
private: yes
- name: VM_ID
prompt: "VM ID"
private: no
- name: VM_SSHPort
prompt: "VM SSHPort"
private: no
default: 3333
- name: VM_IP
prompt: "VM IP"
private: no
- name: VM_Gateway
prompt: "VM Gateway"
private: no
- name: VM_Netmask_Slash
prompt: "VM Netmask Slash"
private: no
default: 24
- name: VM_DNS1
prompt: "VM DNS1"
private: no
default: "8.8.8.8"
- name: VM_DNS2
prompt: "VM DNS2"
private: no
default: "8.8.4.4"
- name: VM_SearchDomain
prompt: "VM SearchDomain"
private: no
- name: VM_sockets
prompt: "VM socket/s"
private: no
default: 1
- name: VM_cores
prompt: "VM core/s"
private: no
default: 2
- name: VM_memory
prompt: "VM RAM Memory (MB)"
private: no
default: 8192
- name: VM_INCREASE_DISK
prompt: "Increase (2 GB) virtio0 disk by"
private: no
default: 30
- name: PV_node2
prompt: "Migrate Virtual Machine to"
private: no
default: none
pre_tasks:
- name: "Set network facts"
set_fact:
my_network:
params:
netmask: "{{ VM_Netmask_Slash }}"
vmbr: 0
gateway: "{{ VM_Gateway }}"
dnsservers: "{{ VM_DNS1 }} {{ VM_DNS2 }}"
searchdomain: "{{ VM_SearchDomain }}"
user: root
gather_facts: false
roles:
- { role: proxmox_deploy, default_proxmox_node: "{{ api_node }}", VM_network: my_network, PV_password: "{{ ansible_password }}"}