first commit
This commit is contained in:
4
ReadMe.md
Normal file
4
ReadMe.md
Normal file
@@ -0,0 +1,4 @@
|
||||
Requirements auf dem ansible host:
|
||||
|
||||
sudo pip3 install proxmoxer
|
||||
sudo pip3 install requests
|
||||
7
ansible.cfg
Normal file
7
ansible.cfg
Normal file
@@ -0,0 +1,7 @@
|
||||
[defaults]
|
||||
remote_user = simon
|
||||
inventory = hosts.ini
|
||||
vault_password_file = ~/.ansible/vault_pass.txt
|
||||
private_key_file=~/.ssh/ansible
|
||||
fact_caching = jsonfile
|
||||
fact_caching_connection = facts/
|
||||
2
hosts.ini
Normal file
2
hosts.ini
Normal file
@@ -0,0 +1,2 @@
|
||||
[vms]
|
||||
test-vm vm_memory="2048" vm_cores="2" vm_ip_address="ip=10.11.12.88/24,gw=10.11.12.254" vm_root_disk_size="+20G"
|
||||
52
main.yml
Normal file
52
main.yml
Normal file
@@ -0,0 +1,52 @@
|
||||
---
|
||||
- name: create VM from template
|
||||
hosts: all
|
||||
gather_facts: false
|
||||
vars_files:
|
||||
- vars/proxmox.yml
|
||||
|
||||
tasks:
|
||||
- name: Create VM from template
|
||||
proxmox_kvm:
|
||||
node: "{{ node }}"
|
||||
api_host: "{{ pve_host }}"
|
||||
api_user: "{{ pve_user }}"
|
||||
api_password: "{{ pve_password }}"
|
||||
validate_certs: no
|
||||
name: "{{ inventory_hostname }}"
|
||||
storage: "{{ storage }}"
|
||||
clone: "{{ clone }}"
|
||||
onboot: true
|
||||
register: vm_created
|
||||
delegate_to: localhost
|
||||
|
||||
# Display new VM details
|
||||
- debug:
|
||||
var: vm_created
|
||||
delegate_to: localhost
|
||||
|
||||
- name: Update VM configuration
|
||||
community.general.proxmox_kvm:
|
||||
api_host: "{{ pve_host }}"
|
||||
api_user: "{{ pve_user }}"
|
||||
api_password: "{{ pve_password }}"
|
||||
name: "{{ inventory_hostname }}"
|
||||
node: "{{ node }}"
|
||||
memory: "{{ vm_memory }}"
|
||||
cores: "{{ vm_cores }}"
|
||||
ipconfig:
|
||||
ipconfig0: "{{ vm_ip_address }}"
|
||||
update: true
|
||||
delegate_to: localhost
|
||||
|
||||
- name: Update the disk size
|
||||
community.general.proxmox_disk:
|
||||
api_host: "{{ pve_host }}"
|
||||
api_user: "{{ pve_user }}"
|
||||
api_password: "{{ pve_password }}"
|
||||
name: "{{ inventory_hostname }}"
|
||||
disk: scsi0
|
||||
backup: false
|
||||
size: "{{ vm_root_disk_size }}"
|
||||
state: resized
|
||||
delegate_to: localhost
|
||||
6
vars/proxmox.yml
Normal file
6
vars/proxmox.yml
Normal file
@@ -0,0 +1,6 @@
|
||||
pve_host: "10.11.12.25"
|
||||
node: "pve"
|
||||
pve_user: "root@pam"
|
||||
pve_password: "uXeheig0"
|
||||
storage: "local_wdblack_2tb_zfs"
|
||||
clone: "ubuntu-cloud"
|
||||
Reference in New Issue
Block a user