ansible vm creation (depreciated)
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
# Proxmox variables
|
||||
proxmox_user: "root@pam"
|
||||
proxmox_password: "{{ vault_proxmox_root_password }}"
|
||||
proxmox_host: "main-street-usa"
|
||||
proxmox_host: "main-street-usa.local.mk-labs.cloud"
|
||||
|
||||
# DNS variables
|
||||
dns_server: "monorail" # .local.mk-labs.cloud"
|
||||
|
||||
58
ansible/host_vars/big-thunder-mountain/old_vars
Normal file
58
ansible/host_vars/big-thunder-mountain/old_vars
Normal file
@@ -0,0 +1,58 @@
|
||||
---
|
||||
# file: host_vars/vm_template/vars
|
||||
# Ansible vars template for hosts created via cloning.
|
||||
|
||||
# Supported hypervisors:
|
||||
# - Proxmox
|
||||
|
||||
platform: "proxmox"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu
|
||||
# - 24.04
|
||||
# - Fedora
|
||||
# - 42
|
||||
|
||||
vm_os_distribution: "ubuntu"
|
||||
vm_os_version: "24.04"
|
||||
|
||||
# Current VM sizes are:
|
||||
# - Small: 2 cores, 2GB memory, 8 GiB virtual disk
|
||||
# - Medium: 2 cores, 4GB memory, 16 GiB virtual disk
|
||||
# - Large: 4 cores, 4GB memory, 32 GiB virtual disk
|
||||
# - Large Plus: 4 cores, 4GB memory, 48 GiB virtual disk
|
||||
# - Xlarge: 4 cores, 8GB memory, 64 GiB virtual disk
|
||||
# - Xlarge Plus: 4 cores, 8GB memory, 128 GiB virtual disk
|
||||
|
||||
vm_size: "large-plus"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "general"
|
||||
|
||||
# Proxmox does not yet do dynamic load balancing, the host target sets the target for HA groups
|
||||
# and backup groups. (ha_group will be factored out in the next functionality update.)
|
||||
|
||||
ha_group: "pve03"
|
||||
proxmox_host_target: "pve03"
|
||||
|
||||
# Currently, only single NIC VMs using IPv4 are supported via cloning. The IP address also
|
||||
# sets the Proxmox VMID. The VMID is a combination of the 3rd and 4th octet of the IPv4 address.
|
||||
|
||||
ip_address: 10.1.71.52
|
||||
vm_mac_address: 'BC:24:11:11:BC:58'
|
||||
|
||||
# Software
|
||||
# Future enhancement will allow specification of additional software to automatically deploy to
|
||||
# the VM after creation.
|
||||
|
||||
#terraform_version: "1.11.3"
|
||||
|
||||
# ---
|
||||
vm_clone_source: "{{ vm_os_distribution }}-{{ vm_os_version }}-{{ vm_size }}"
|
||||
hostname: "{{ inventory_hostname }}.{{ base_domain }}" # Change variable to fqdn
|
||||
@@ -7,19 +7,32 @@
|
||||
|
||||
platform: "proxmox"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu (clone)
|
||||
# - 24.04
|
||||
# - Fedora (clone)
|
||||
# - 42
|
||||
# - Talos (create)
|
||||
# - 1.11.5
|
||||
|
||||
vm_os_distribution: "talos"
|
||||
vm_os_version: "1.11.5"
|
||||
|
||||
# VM ISO
|
||||
# Talos: talos-v1.11.5-nocloud-amd64.iso
|
||||
|
||||
vm_iso_storage: "templates"
|
||||
vm_iso: "talos-v{{ vm_os_version }}-nocloud-amd64.iso"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
# Comment out for VM create
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu
|
||||
# - 24.04
|
||||
# - Fedora
|
||||
# - 42
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_os_distribution: "ubuntu"
|
||||
vm_os_version: "24.04"
|
||||
vm_storage: "liberty-tree"
|
||||
|
||||
# Current VM sizes are:
|
||||
# - Small: 2 cores, 2GB memory, 8 GiB virtual disk
|
||||
@@ -31,10 +44,6 @@ vm_os_version: "24.04"
|
||||
|
||||
vm_size: "large-plus"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "general"
|
||||
|
||||
# Proxmox does not yet do dynamic load balancing, the host target sets the target for HA groups
|
||||
# and backup groups. (ha_group will be factored out in the next functionality update.)
|
||||
|
||||
@@ -54,5 +63,37 @@ vm_mac_address: 'BC:24:11:11:BC:58'
|
||||
#terraform_version: "1.11.3"
|
||||
|
||||
# ---
|
||||
|
||||
vm_clone_source: "{{ vm_os_distribution }}-{{ vm_os_version }}-{{ vm_size }}"
|
||||
hostname: "{{ inventory_hostname }}.{{ base_domain }}" # Change variable to fqdn
|
||||
|
||||
# Dictionaries for VM resources
|
||||
# - cores (quantity)
|
||||
# - memory (MB)
|
||||
# - virtual disk (GiB)
|
||||
|
||||
vm_definitions:
|
||||
small:
|
||||
cores: 2
|
||||
memory: 2048
|
||||
disk: 8
|
||||
medium:
|
||||
cores: 2
|
||||
memory: 4096
|
||||
disk: 16
|
||||
large:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 32
|
||||
large-plus:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 48
|
||||
xlarge:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 64
|
||||
xlarge-plus:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 128
|
||||
|
||||
60
ansible/host_vars/haunted-mansion/old_vars
Normal file
60
ansible/host_vars/haunted-mansion/old_vars
Normal file
@@ -0,0 +1,60 @@
|
||||
---
|
||||
# file: host_vars/vm_template/vars
|
||||
# Ansible vars template for hosts created via cloning.
|
||||
|
||||
# Supported hypervisors:
|
||||
# - Proxmox
|
||||
|
||||
platform: "proxmox"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu
|
||||
# - 24.04
|
||||
# - Fedora
|
||||
# - 42
|
||||
|
||||
vm_os_distribution: "ubuntu"
|
||||
vm_os_version: "24.04"
|
||||
|
||||
# Current VM sizes are:
|
||||
# - Small: 2 cores, 2GB memory, 8 GiB virtual disk
|
||||
# - Medium: 2 cores, 4GB memory, 16 GiB virtual disk
|
||||
# - Large: 4 cores, 4GB memory, 32 GiB virtual disk
|
||||
# - Large Plus: 4 cores, 4GB memory, 48 GiB virtual disk
|
||||
# - Xlarge: 4 cores, 8GB memory, 64 GiB virtual disk
|
||||
# - Xlarge Plus: 4 cores, 8GB memory, 128 GiB virtual disk
|
||||
|
||||
vm_size: "xlarge"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "general"
|
||||
|
||||
# Proxmox does not yet do dynamic load balancing, the host target sets the target for HA groups
|
||||
# and backup groups. (ha_group will be factored out in the next functionality update.)
|
||||
|
||||
ha_group: "pve03"
|
||||
proxmox_host_target: "pve03"
|
||||
|
||||
# Currently, only single NIC VMs using IPv4 are supported via cloning. The IP address also
|
||||
# sets the Proxmox VMID. The VMID is a combination of the 3rd and 4th octet of the IPv4 address.
|
||||
|
||||
ip_address: 10.1.71.61
|
||||
vm_mac_address: 'BC:24:11:C9:3A:13'
|
||||
|
||||
# Software
|
||||
# Future enhancement will allow specification of additional software to automatically deploy to
|
||||
# the VM after creation.
|
||||
|
||||
#terraform_version: "1.11.3"
|
||||
|
||||
# ---
|
||||
|
||||
|
||||
vm_clone_source: "{{ vm_os_distribution }}-{{ vm_os_version }}-{{ vm_size }}"
|
||||
hostname: "{{ inventory_hostname }}.{{ base_domain }}" # Change variable to fqdn
|
||||
@@ -7,19 +7,32 @@
|
||||
|
||||
platform: "proxmox"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu (clone)
|
||||
# - 24.04
|
||||
# - Fedora (clone)
|
||||
# - 42
|
||||
# - Talos (create)
|
||||
# - 1.11.5
|
||||
|
||||
vm_os_distribution: "talos"
|
||||
vm_os_version: "1.11.5"
|
||||
|
||||
# VM ISO
|
||||
# Talos: talos-v1.11.5-nocloud-amd64.iso
|
||||
|
||||
vm_iso_storage: "templates"
|
||||
vm_iso: "talos-v{{ vm_os_version }}-nocloud-amd64.iso"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
# Comment out for VM create
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu
|
||||
# - 24.04
|
||||
# - Fedora
|
||||
# - 42
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_os_distribution: "ubuntu"
|
||||
vm_os_version: "24.04"
|
||||
vm_storage: "liberty-tree"
|
||||
|
||||
# Current VM sizes are:
|
||||
# - Small: 2 cores, 2GB memory, 8 GiB virtual disk
|
||||
@@ -31,10 +44,6 @@ vm_os_version: "24.04"
|
||||
|
||||
vm_size: "xlarge"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "general"
|
||||
|
||||
# Proxmox does not yet do dynamic load balancing, the host target sets the target for HA groups
|
||||
# and backup groups. (ha_group will be factored out in the next functionality update.)
|
||||
|
||||
@@ -55,6 +64,36 @@ vm_mac_address: 'BC:24:11:C9:3A:13'
|
||||
|
||||
# ---
|
||||
|
||||
|
||||
vm_clone_source: "{{ vm_os_distribution }}-{{ vm_os_version }}-{{ vm_size }}"
|
||||
hostname: "{{ inventory_hostname }}.{{ base_domain }}" # Change variable to fqdn
|
||||
|
||||
# Dictionaries for VM resources
|
||||
# - cores (quantity)
|
||||
# - memory (MB)
|
||||
# - virtual disk (GiB)
|
||||
|
||||
vm_definitions:
|
||||
small:
|
||||
cores: 2
|
||||
memory: 2048
|
||||
disk: 8
|
||||
medium:
|
||||
cores: 2
|
||||
memory: 4096
|
||||
disk: 16
|
||||
large:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 32
|
||||
large-plus:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 48
|
||||
xlarge:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 64
|
||||
xlarge-plus:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 128
|
||||
|
||||
59
ansible/host_vars/peter-pans-flight/old_vars
Normal file
59
ansible/host_vars/peter-pans-flight/old_vars
Normal file
@@ -0,0 +1,59 @@
|
||||
---
|
||||
# file: host_vars/vm_template/vars
|
||||
# Ansible vars template for hosts created via cloning.
|
||||
|
||||
# Supported hypervisors:
|
||||
# - Proxmox
|
||||
|
||||
platform: "proxmox"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu
|
||||
# - 24.04
|
||||
# - Fedora
|
||||
# - 42
|
||||
|
||||
vm_os_distribution: "ubuntu"
|
||||
vm_os_version: "24.04"
|
||||
|
||||
# Current VM sizes are:
|
||||
# - Small: 2 cores, 2GB memory, 8 GiB virtual disk
|
||||
# - Medium: 2 cores, 4GB memory, 16 GiB virtual disk
|
||||
# - Large: 4 cores, 4GB memory, 32 GiB virtual disk
|
||||
# - Large Plus: 4 cores, 4GB memory, 48 GiB virtual disk
|
||||
# - Xlarge: 4 cores, 8GB memory, 64 GiB virtual disk
|
||||
# - Xlarge Plus: 4 cores, 8GB memory, 128 GiB virtual disk
|
||||
|
||||
vm_size: "xlarge"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "general"
|
||||
|
||||
# Proxmox does not yet do dynamic load balancing, the host target sets the target for HA groups
|
||||
# and backup groups. (ha_group will be factored out in the next functionality update.)
|
||||
|
||||
ha_group: "pve03"
|
||||
proxmox_host_target: "pve03"
|
||||
|
||||
# Currently, only single NIC VMs using IPv4 are supported via cloning. The IP address also
|
||||
# sets the Proxmox VMID. The VMID is a combination of the 3rd and 4th octet of the IPv4 address.
|
||||
|
||||
ip_address: 10.1.71.62
|
||||
vm_mac_address: 'BC:24:11:AA:8F:3A'
|
||||
|
||||
# Software
|
||||
# Future enhancement will allow specification of additional software to automatically deploy to
|
||||
# the VM after creation.
|
||||
|
||||
#terraform_version: "1.11.3"
|
||||
|
||||
# ---
|
||||
|
||||
vm_clone_source: "{{ vm_os_distribution }}-{{ vm_os_version }}-{{ vm_size }}"
|
||||
hostname: "{{ inventory_hostname }}.{{ base_domain }}" # Change variable to fqdn
|
||||
@@ -7,19 +7,32 @@
|
||||
|
||||
platform: "proxmox"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu (clone)
|
||||
# - 24.04
|
||||
# - Fedora (clone)
|
||||
# - 42
|
||||
# - Talos (create)
|
||||
# - 1.11.5
|
||||
|
||||
vm_os_distribution: "talos"
|
||||
vm_os_version: "1.11.5"
|
||||
|
||||
# VM ISO
|
||||
# Talos: talos-v1.11.5-nocloud-amd64.iso
|
||||
|
||||
vm_iso_storage: "templates"
|
||||
vm_iso: "talos-v{{ vm_os_version }}-nocloud-amd64.iso"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
# Comment out for VM create
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu
|
||||
# - 24.04
|
||||
# - Fedora
|
||||
# - 42
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_os_distribution: "ubuntu"
|
||||
vm_os_version: "24.04"
|
||||
vm_storage: "liberty-tree"
|
||||
|
||||
# Current VM sizes are:
|
||||
# - Small: 2 cores, 2GB memory, 8 GiB virtual disk
|
||||
@@ -31,10 +44,6 @@ vm_os_version: "24.04"
|
||||
|
||||
vm_size: "xlarge"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "general"
|
||||
|
||||
# Proxmox does not yet do dynamic load balancing, the host target sets the target for HA groups
|
||||
# and backup groups. (ha_group will be factored out in the next functionality update.)
|
||||
|
||||
@@ -57,3 +66,34 @@ vm_mac_address: 'BC:24:11:AA:8F:3A'
|
||||
|
||||
vm_clone_source: "{{ vm_os_distribution }}-{{ vm_os_version }}-{{ vm_size }}"
|
||||
hostname: "{{ inventory_hostname }}.{{ base_domain }}" # Change variable to fqdn
|
||||
|
||||
# Dictionaries for VM resources
|
||||
# - cores (quantity)
|
||||
# - memory (MB)
|
||||
# - virtual disk (GiB)
|
||||
|
||||
vm_definitions:
|
||||
small:
|
||||
cores: 2
|
||||
memory: 2048
|
||||
disk: 8
|
||||
medium:
|
||||
cores: 2
|
||||
memory: 4096
|
||||
disk: 16
|
||||
large:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 32
|
||||
large-plus:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 48
|
||||
xlarge:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 64
|
||||
xlarge-plus:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 128
|
||||
|
||||
59
ansible/host_vars/space-mountain/old_vars
Normal file
59
ansible/host_vars/space-mountain/old_vars
Normal file
@@ -0,0 +1,59 @@
|
||||
---
|
||||
# file: host_vars/vm_template/vars
|
||||
# Ansible vars template for hosts created via cloning.
|
||||
|
||||
# Supported hypervisors:
|
||||
# - Proxmox
|
||||
|
||||
platform: "proxmox"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu
|
||||
# - 24.04
|
||||
# - Fedora
|
||||
# - 42
|
||||
|
||||
vm_os_distribution: "ubuntu"
|
||||
vm_os_version: "24.04"
|
||||
|
||||
# Current VM sizes are:
|
||||
# - Small: 2 cores, 2GB memory, 8 GiB virtual disk
|
||||
# - Medium: 2 cores, 4GB memory, 16 GiB virtual disk
|
||||
# - Large: 4 cores, 4GB memory, 32 GiB virtual disk
|
||||
# - Large Plus: 4 cores, 4GB memory, 48 GiB virtual disk
|
||||
# - Xlarge: 4 cores, 8GB memory, 64 GiB virtual disk
|
||||
# - Xlarge Plus: 4 cores, 8GB memory, 128 GiB virtual disk
|
||||
|
||||
vm_size: "large-plus"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "general"
|
||||
|
||||
# Proxmox does not yet do dynamic load balancing, the host target sets the target for HA groups
|
||||
# and backup groups. (ha_group will be factored out in the next functionality update.)
|
||||
|
||||
ha_group: "pve03"
|
||||
proxmox_host_target: "pve03"
|
||||
|
||||
# Currently, only single NIC VMs using IPv4 are supported via cloning. The IP address also
|
||||
# sets the Proxmox VMID. The VMID is a combination of the 3rd and 4th octet of the IPv4 address.
|
||||
|
||||
ip_address: 10.1.71.51
|
||||
vm_mac_address: 'BC:24:11:1A:E8:8C'
|
||||
|
||||
# Software
|
||||
# Future enhancement will allow specification of additional software to automatically deploy to
|
||||
# the VM after creation.
|
||||
|
||||
#terraform_version: "1.11.3"
|
||||
|
||||
# ---
|
||||
|
||||
vm_clone_source: "{{ vm_os_distribution }}-{{ vm_os_version }}-{{ vm_size }}"
|
||||
hostname: "{{ inventory_hostname }}.{{ base_domain }}" # Change variable to fqdn
|
||||
@@ -7,19 +7,32 @@
|
||||
|
||||
platform: "proxmox"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu (clone)
|
||||
# - 24.04
|
||||
# - Fedora (clone)
|
||||
# - 42
|
||||
# - Talos (create)
|
||||
# - 1.11.5
|
||||
|
||||
vm_os_distribution: "talos"
|
||||
vm_os_version: "1.11.5"
|
||||
|
||||
# VM ISO
|
||||
# Talos: talos-v1.11.5-nocloud-amd64.iso
|
||||
|
||||
vm_iso_storage: "templates"
|
||||
vm_iso: "talos-v{{ vm_os_version }}-nocloud-amd64.iso"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
# Comment out for VM create
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu
|
||||
# - 24.04
|
||||
# - Fedora
|
||||
# - 42
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_os_distribution: "ubuntu"
|
||||
vm_os_version: "24.04"
|
||||
vm_storage: "liberty-tree"
|
||||
|
||||
# Current VM sizes are:
|
||||
# - Small: 2 cores, 2GB memory, 8 GiB virtual disk
|
||||
@@ -31,10 +44,6 @@ vm_os_version: "24.04"
|
||||
|
||||
vm_size: "large-plus"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "general"
|
||||
|
||||
# Proxmox does not yet do dynamic load balancing, the host target sets the target for HA groups
|
||||
# and backup groups. (ha_group will be factored out in the next functionality update.)
|
||||
|
||||
@@ -57,3 +66,34 @@ vm_mac_address: 'BC:24:11:1A:E8:8C'
|
||||
|
||||
vm_clone_source: "{{ vm_os_distribution }}-{{ vm_os_version }}-{{ vm_size }}"
|
||||
hostname: "{{ inventory_hostname }}.{{ base_domain }}" # Change variable to fqdn
|
||||
|
||||
# Dictionaries for VM resources
|
||||
# - cores (quantity)
|
||||
# - memory (MB)
|
||||
# - virtual disk (GiB)
|
||||
|
||||
vm_definitions:
|
||||
small:
|
||||
cores: 2
|
||||
memory: 2048
|
||||
disk: 8
|
||||
medium:
|
||||
cores: 2
|
||||
memory: 4096
|
||||
disk: 16
|
||||
large:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 32
|
||||
large-plus:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 48
|
||||
xlarge:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 64
|
||||
xlarge-plus:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 128
|
||||
|
||||
59
ansible/host_vars/splash-mountain/old_vars
Normal file
59
ansible/host_vars/splash-mountain/old_vars
Normal file
@@ -0,0 +1,59 @@
|
||||
---
|
||||
# file: host_vars/vm_template/vars
|
||||
# Ansible vars template for hosts created via cloning.
|
||||
|
||||
# Supported hypervisors:
|
||||
# - Proxmox
|
||||
|
||||
platform: "proxmox"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu
|
||||
# - 24.04
|
||||
# - Fedora
|
||||
# - 42
|
||||
|
||||
vm_os_distribution: "ubuntu"
|
||||
vm_os_version: "24.04"
|
||||
|
||||
# Current VM sizes are:
|
||||
# - Small: 2 cores, 2GB memory, 8 GiB virtual disk
|
||||
# - Medium: 2 cores, 4GB memory, 16 GiB virtual disk
|
||||
# - Large: 4 cores, 4GB memory, 32 GiB virtual disk
|
||||
# - Large Plus: 4 cores, 4GB memory, 48 GiB virtual disk
|
||||
# - Xlarge: 4 cores, 8GB memory, 64 GiB virtual disk
|
||||
# - Xlarge Plus: 4 cores, 8GB memory, 128 GiB virtual disk
|
||||
|
||||
vm_size: "large-plus"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "general"
|
||||
|
||||
# Proxmox does not yet do dynamic load balancing, the host target sets the target for HA groups
|
||||
# and backup groups. (ha_group will be factored out in the next functionality update.)
|
||||
|
||||
ha_group: "pve03"
|
||||
proxmox_host_target: "pve03"
|
||||
|
||||
# Currently, only single NIC VMs using IPv4 are supported via cloning. The IP address also
|
||||
# sets the Proxmox VMID. The VMID is a combination of the 3rd and 4th octet of the IPv4 address.
|
||||
|
||||
ip_address: 10.1.71.53
|
||||
vm_mac_address: 'BC:24:11:84:D7:2F'
|
||||
|
||||
# Software
|
||||
# Future enhancement will allow specification of additional software to automatically deploy to
|
||||
# the VM after creation.
|
||||
|
||||
#terraform_version: "1.11.3"
|
||||
|
||||
# ---
|
||||
|
||||
vm_clone_source: "{{ vm_os_distribution }}-{{ vm_os_version }}-{{ vm_size }}"
|
||||
hostname: "{{ inventory_hostname }}.{{ base_domain }}" # Change variable to fqdn
|
||||
@@ -7,19 +7,32 @@
|
||||
|
||||
platform: "proxmox"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu (clone)
|
||||
# - 24.04
|
||||
# - Fedora (clone)
|
||||
# - 42
|
||||
# - Talos (create)
|
||||
# - 1.11.5
|
||||
|
||||
vm_os_distribution: "talos"
|
||||
vm_os_version: "1.11.5"
|
||||
|
||||
# VM ISO
|
||||
# Talos: talos-v1.11.5-nocloud-amd64.iso
|
||||
|
||||
vm_iso_storage: "templates"
|
||||
vm_iso: "talos-v{{ vm_os_version }}-nocloud-amd64.iso"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
# Comment out for VM create
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu
|
||||
# - 24.04
|
||||
# - Fedora
|
||||
# - 42
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_os_distribution: "ubuntu"
|
||||
vm_os_version: "24.04"
|
||||
vm_storage: "liberty-tree"
|
||||
|
||||
# Current VM sizes are:
|
||||
# - Small: 2 cores, 2GB memory, 8 GiB virtual disk
|
||||
@@ -31,10 +44,6 @@ vm_os_version: "24.04"
|
||||
|
||||
vm_size: "large-plus"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "general"
|
||||
|
||||
# Proxmox does not yet do dynamic load balancing, the host target sets the target for HA groups
|
||||
# and backup groups. (ha_group will be factored out in the next functionality update.)
|
||||
|
||||
@@ -57,3 +66,34 @@ vm_mac_address: 'BC:24:11:84:D7:2F'
|
||||
|
||||
vm_clone_source: "{{ vm_os_distribution }}-{{ vm_os_version }}-{{ vm_size }}"
|
||||
hostname: "{{ inventory_hostname }}.{{ base_domain }}" # Change variable to fqdn
|
||||
|
||||
# Dictionaries for VM resources
|
||||
# - cores (quantity)
|
||||
# - memory (MB)
|
||||
# - virtual disk (GiB)
|
||||
|
||||
vm_definitions:
|
||||
small:
|
||||
cores: 2
|
||||
memory: 2048
|
||||
disk: 8
|
||||
medium:
|
||||
cores: 2
|
||||
memory: 4096
|
||||
disk: 16
|
||||
large:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 32
|
||||
large-plus:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 48
|
||||
xlarge:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 64
|
||||
xlarge-plus:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 128
|
||||
|
||||
100
ansible/host_vars/splash/vars
Normal file
100
ansible/host_vars/splash/vars
Normal file
@@ -0,0 +1,100 @@
|
||||
---
|
||||
# file: host_vars/vm_template/vars
|
||||
# Ansible vars template for hosts creation via clone or create.
|
||||
|
||||
# Supported hypervisors:
|
||||
# - Proxmox
|
||||
|
||||
platform: "proxmox"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu (clone)
|
||||
# - 24.04
|
||||
# - Fedora (clone)
|
||||
# - 42
|
||||
# - Talos (create)
|
||||
# - 1.11.5
|
||||
|
||||
vm_os_distribution: "talos"
|
||||
vm_os_version: "1.11.5"
|
||||
|
||||
# VM ISO
|
||||
# Talos: talos-v1.11.5-nocloud-amd64.iso
|
||||
|
||||
vm_iso_storage: "templates"
|
||||
vm_iso: "talos-v{{ vm_os_version }}-nocloud-amd64.iso"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
# Comment out for VM create
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "liberty-tree"
|
||||
|
||||
# Current VM sizes are:
|
||||
# - Small: 2 cores, 2GB memory, 8 GiB virtual disk
|
||||
# - Medium: 2 cores, 4GB memory, 16 GiB virtual disk
|
||||
# - Large: 4 cores, 4GB memory, 32 GiB virtual disk
|
||||
# - Large Plus: 4 cores, 4GB memory, 48 GiB virtual disk
|
||||
# - Xlarge: 4 cores, 8GB memory, 64 GiB virtual disk
|
||||
# - Xlarge Plus: 4 cores, 8GB memory, 128 GiB virtual disk
|
||||
|
||||
vm_size: "small"
|
||||
|
||||
# Proxmox does not yet do dynamic load balancing, the host target sets the target for HA groups
|
||||
# and backup groups. (ha_group will be factored out in the next functionality update.)
|
||||
|
||||
ha_group: "pve03"
|
||||
proxmox_host_target: "tomorrowland"
|
||||
|
||||
# Currently, only single NIC VMs using IPv4 are supported via cloning. The IP address also
|
||||
# sets the Proxmox VMID. The VMID is a combination of the 3rd and 4th octet of the IPv4 address.
|
||||
# Comment out vm_mac_address if new MAC address should be generated
|
||||
|
||||
ip_address: 10.1.71.99
|
||||
vm_mac_address: 'BC:24:11:97:C3:AA'
|
||||
|
||||
# Software
|
||||
# Future enhancement will allow specification of additional software to automatically deploy to
|
||||
# the VM after creation.
|
||||
|
||||
#terraform_version: "1.11.3"
|
||||
|
||||
# ---
|
||||
|
||||
vm_clone_source: "{{ vm_os_distribution }}-{{ vm_os_version }}-{{ vm_size }}"
|
||||
hostname: "{{ inventory_hostname }}.{{ base_domain }}" # Change variable to fqdn
|
||||
|
||||
# Dictionaries for VM resources
|
||||
# - cores (quantity)
|
||||
# - memory (MB)
|
||||
# - virtual disk (GiB)
|
||||
|
||||
vm_definitions:
|
||||
small:
|
||||
cores: 2
|
||||
memory: 2048
|
||||
disk: 8
|
||||
medium:
|
||||
cores: 2
|
||||
memory: 4096
|
||||
disk: 16
|
||||
large:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 32
|
||||
large-plus:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 48
|
||||
xlarge:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 64
|
||||
xlarge-plus:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 128
|
||||
@@ -1,26 +1,39 @@
|
||||
---
|
||||
# file: host_vars/vm_template/vars
|
||||
# Ansible vars template for hosts created via cloning.
|
||||
# Ansible vars template for hosts creation via clone or create.
|
||||
|
||||
# Supported hypervisors:
|
||||
# - Proxmox
|
||||
|
||||
platform: "proxmox"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Templates are named in the following format (all lower case): <OS Distribution>-<OS Version>-<VM Size>
|
||||
# Current OS offerings are:
|
||||
# - Ubuntu
|
||||
# - Ubuntu (clone)
|
||||
# - 24.04
|
||||
# - Fedora
|
||||
# - Fedora (clone)
|
||||
# - 42
|
||||
# - Talos (create)
|
||||
# - 1.11.5
|
||||
|
||||
vm_os_distribution: "ubuntu"
|
||||
vm_os_version: "24.04"
|
||||
|
||||
# VM ISO
|
||||
# Talos: talos-v1.11.5-nocloud-amd64.iso
|
||||
|
||||
vm_iso_storage: "templates"
|
||||
vm_iso: "talos-v{{ vm_os_version }}-nocloud-amd64.iso"
|
||||
|
||||
# This is the Proxmox node where all the VM templates are stored. (Templates are not global.)
|
||||
# Comment out for VM create
|
||||
|
||||
proxmox_clone_node: "fantasyland"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "general"
|
||||
|
||||
# Current VM sizes are:
|
||||
# - Small: 2 cores, 2GB memory, 8 GiB virtual disk
|
||||
# - Medium: 2 cores, 4GB memory, 16 GiB virtual disk
|
||||
@@ -31,18 +44,15 @@ vm_os_version: "24.04"
|
||||
|
||||
vm_size: "large-plus"
|
||||
|
||||
# Proxmox storage target.
|
||||
|
||||
vm_storage: "general"
|
||||
|
||||
# Proxmox does not yet do dynamic load balancing, the host target sets the target for HA groups
|
||||
# and backup groups. (ha_group will be factored out in the next functionality update.)
|
||||
|
||||
ha_group: "pve03"
|
||||
proxmox_host_target: "pve03"
|
||||
proxmox_host_target: "tomorrowland"
|
||||
|
||||
# Currently, only single NIC VMs using IPv4 are supported via cloning. The IP address also
|
||||
# sets the Proxmox VMID. The VMID is a combination of the 3rd and 4th octet of the IPv4 address.
|
||||
# Comment out vm_mac_address if new MAC address should be generated
|
||||
|
||||
ip_address: 10.1.71.249
|
||||
# vm_mac_address: 'BC:24:11:11:BC:58'
|
||||
@@ -57,3 +67,38 @@ ip_address: 10.1.71.249
|
||||
|
||||
vm_clone_source: "{{ vm_os_distribution }}-{{ vm_os_version }}-{{ vm_size }}"
|
||||
hostname: "{{ inventory_hostname }}.{{ base_domain }}" # Change variable to fqdn
|
||||
|
||||
# Dictionaries for VM resources
|
||||
# - cores (quantity)
|
||||
# - memory (MB)
|
||||
# - virtual disk (GiB)
|
||||
|
||||
small:
|
||||
cores: 2
|
||||
memory: 2048
|
||||
disk: 8
|
||||
|
||||
medium:
|
||||
cores: 2
|
||||
memory: 4096
|
||||
disk: 16
|
||||
|
||||
large:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 32
|
||||
|
||||
large-plus:
|
||||
cores: 4
|
||||
memory: 4096
|
||||
disk: 48
|
||||
|
||||
xlarge:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 64
|
||||
|
||||
xlarge-plus:
|
||||
cores: 4
|
||||
memory: 8192
|
||||
disk: 128
|
||||
|
||||
@@ -90,6 +90,10 @@ internal_cluster:
|
||||
# int-worker01:
|
||||
int-worker02:
|
||||
|
||||
talos_cluster:
|
||||
hosts:
|
||||
splash:
|
||||
|
||||
fastpass_control_plane:
|
||||
hosts:
|
||||
space-mountain:
|
||||
|
||||
23
ansible/playbooks/create_vm.yml
Executable file
23
ansible/playbooks/create_vm.yml
Executable file
@@ -0,0 +1,23 @@
|
||||
---
|
||||
- name: Master playbook to create VM
|
||||
hosts: all
|
||||
gather_facts: false
|
||||
|
||||
- name: Proxmox Create VM Playbook
|
||||
ansible.builtin.import_playbook: proxmox_create_vm.yml
|
||||
|
||||
- name: Set cloud-init network
|
||||
ansible.builtin.import_playbook: populate_cloud_init.yml
|
||||
when: vm_os_distribution == "ubuntu"
|
||||
|
||||
- name: DNS Playbook
|
||||
ansible.builtin.import_playbook: add_dns_entry.yml
|
||||
|
||||
- name: DHCP Playbook
|
||||
ansible.builtin.import_playbook: add_dhcp_reservation.yml
|
||||
|
||||
- name: Start VM Playbook
|
||||
ansible.builtin.import_playbook: proxmox_start_vm.yml
|
||||
|
||||
- name: Set Hostname Playbook
|
||||
ansible.builtin.import_playbook: set_hostname.yml
|
||||
50
ansible/playbooks/proxmox_create_vm.yml
Executable file
50
ansible/playbooks/proxmox_create_vm.yml
Executable file
@@ -0,0 +1,50 @@
|
||||
---
|
||||
- name: Create VM ID from IP address for Proxmox hosts
|
||||
hosts: all
|
||||
gather_facts: false
|
||||
|
||||
tasks:
|
||||
- name: Create Proxmox VMs
|
||||
delegate_to: "localhost"
|
||||
when: platform is defined and platform == "proxmox"
|
||||
block:
|
||||
- name: Create VM ID from IP address
|
||||
ansible.builtin.set_fact:
|
||||
vm_id: "{{ ip_address.split('.')[-2] }}{{ '%03d' % (ip_address.split('.')[-1] | int) }}"
|
||||
|
||||
- name: Create VM with an EFI disk, with Secure Boot disabled by default
|
||||
community.proxmox.proxmox_kvm:
|
||||
api_user: "{{ proxmox_user }}"
|
||||
api_password: "{{ proxmox_password }}"
|
||||
api_host: "{{ proxmox_host }}"
|
||||
name: "{{ inventory_hostname }}"
|
||||
node: "{{ proxmox_clone_node }}"
|
||||
vmid: "{{ vm_id }}"
|
||||
net:
|
||||
net0: "virtio,bridge=vmbr0"
|
||||
ide:
|
||||
ide0: "{{ vm_iso_storage }}:iso/{{ vm_iso }},media=cdrom"
|
||||
scsihw: "virtio-scsi-single"
|
||||
scsi:
|
||||
scsi0: "{{ vm_storage }}:{{ vm_definitions[vm_size]['disk'] }},format=qcow2"
|
||||
bios: "ovmf"
|
||||
cpu: "x86-64-v2"
|
||||
cores: "{{ vm_definitions[vm_size]['cores'] }}"
|
||||
memory: "{{ vm_definitions[vm_size]['memory'] }}"
|
||||
efidisk0:
|
||||
storage: "{{ vm_storage }}"
|
||||
format: raw
|
||||
efitype: 4m
|
||||
pre_enrolled_keys: false
|
||||
timeout: 600
|
||||
|
||||
# - name: Add VM to HA group
|
||||
# community.proxmox.proxmox_cluster_ha_resources:
|
||||
# api_user: "{{ proxmox_user }}"
|
||||
# api_password: "{{ proxmox_password }}"
|
||||
# api_host: "{{ proxmox_host }}"
|
||||
# name: vm:"{{ vm_id }}"
|
||||
# state: "present"
|
||||
# group: "{{ ha_group }}"
|
||||
# max_relocate: 2
|
||||
# max_restart: 2
|
||||
@@ -2,7 +2,7 @@
|
||||
---
|
||||
collections:
|
||||
- name: community.general
|
||||
version: 11.1.0
|
||||
version: 11.4.1
|
||||
|
||||
# - name: nccurry.openshift
|
||||
# version: 1.4.0
|
||||
@@ -14,3 +14,6 @@ collections:
|
||||
# version: 0.27.0
|
||||
|
||||
- name: kubernetes.core
|
||||
|
||||
- name: community.proxmox
|
||||
version: 1.4.0
|
||||
2
ansible/~/_out/talosconfig
Normal file
2
ansible/~/_out/talosconfig
Normal file
@@ -0,0 +1,2 @@
|
||||
context: ""
|
||||
contexts: {}
|
||||
Reference in New Issue
Block a user