Nicolas Massé 3 months ago
parent
commit
a1f2587db3
  1. 9
      ansible/create-vm.yaml
  2. 9
      ansible/templates/cloud-init/network-config.j2
  3. 8
      ansible/templates/cloud-init/user-data.j2

9
ansible/create-vm.yaml

@ -18,6 +18,7 @@
libvirt_images_path: /var/lib/libvirt/images libvirt_images_path: /var/lib/libvirt/images
libvirt_domains_debug: '{{ debug | default(True) | bool }}' libvirt_domains_debug: '{{ debug | default(True) | bool }}'
has_podman_artifact_extract: false has_podman_artifact_extract: false
libvirt_domain_mac_address: "{{ '04:00:' ~ (libvirt_domain_parameters.ipv4_address | ansible.utils.ipv4('address') | ansible.utils.ip4_hex(':')) }}"
## ##
## Parameters of the VM to create ## Parameters of the VM to create
@ -25,7 +26,9 @@
libvirt_domain_parameters: libvirt_domain_parameters:
name: test-vm name: test-vm
mac: 52:54:00:6b:3c:58 ipv4_address: 192.168.122.10/24
ipv4_gateway: 192.168.122.1
ipv4_nameserver: 192.168.122.1
network: default network: default
rhel_version: 9 rhel_version: 9
ram: 2048 ram: 2048
@ -47,6 +50,8 @@
dest: user-data dest: user-data
- src: cloud-init/meta-data.j2 - src: cloud-init/meta-data.j2
dest: meta-data dest: meta-data
- src: cloud-init/network-config.j2
dest: network-config
# Root disk source # Root disk source
root_disk: root_disk:
## ##
@ -72,7 +77,7 @@
size: '{{ libvirt_domain_parameters.disk }}' size: '{{ libvirt_domain_parameters.disk }}'
- network: - network:
network: '{{ libvirt_domain_parameters.network }}' network: '{{ libvirt_domain_parameters.network }}'
mac.address: '{{ libvirt_domain_parameters.mac }}' mac.address: '{{ libvirt_domain_mac_address }}'
- console: - console:
pty: pty:
target.type: virtio target.type: virtio

9
ansible/templates/cloud-init/network-config.j2

@ -0,0 +1,9 @@
version: 2
ethernets:
interface0:
match:
macaddress: "{{ libvirt_domain_mac_address }}"
set-name: interface0
addresses:
- "{{ libvirt_domain_parameters.ipv4_address }}"
gateway4: "{{ libvirt_domain_parameters.ipv4_gateway }}"

8
ansible/templates/cloud-init/user-data.j2

@ -46,6 +46,14 @@ write_files:
KerberosAuthentication no KerberosAuthentication no
permissions: '0440' permissions: '0440'
append: false append: false
- path: /etc/NetworkManager/conf.d/00-static-dns.conf
content: |
[main]
rc-manager=unmanaged
- path: /etc/resolv.conf
content: |
search libvirt.test
nameserver {{ libvirt_domain_parameters.ipv4_nameserver }}
runcmd: runcmd:
- systemctl disable --now --no-block rpcbind.socket - systemctl disable --now --no-block rpcbind.socket

Loading…
Cancel
Save