64 lines
1.4 KiB
YAML
64 lines
1.4 KiB
YAML
- name: ensure required packages are installed
|
|
package:
|
|
name={{ vmhost_required_packages|join(',') }}
|
|
state=present
|
|
tags:
|
|
- install
|
|
|
|
- name: ensure libvirtd is configured
|
|
template:
|
|
src=libvirtd.conf.j2
|
|
dest=/etc/libvirt/libvirtd.conf
|
|
mode=0644
|
|
|
|
- name: ensure libvirt can use nfs
|
|
seboolean:
|
|
name=virt_use_nfs
|
|
state=yes
|
|
persistent=yes
|
|
|
|
- name: ensure libvirt runtime configuration directories exists
|
|
file:
|
|
path=/var/lib/libvirt/config/{{ item }}
|
|
mode=0700
|
|
state=directory
|
|
with_items:
|
|
- qemu
|
|
- storage
|
|
- name: ensure libvirt runtime directory bind mounts are set
|
|
mount:
|
|
path: /etc/libvirt/{{ item }}
|
|
src: /var/lib/libvirt/config/{{ item }}
|
|
fstype: none
|
|
opts: bind
|
|
state: mounted
|
|
with_items:
|
|
- qemu
|
|
- storage
|
|
|
|
- name: ensure libvirtd starts at boot
|
|
service:
|
|
name=libvirtd
|
|
enabled=yes
|
|
- name: ensure libvirtd is running
|
|
service:
|
|
name=libvirtd
|
|
state=started
|
|
|
|
- name: ensure libvirt networks are defined
|
|
virt_net:
|
|
command: define
|
|
name: '{{ item.name }}'
|
|
xml: '{{ lookup("template", "net-" + item.type + ".xml.j2") }}'
|
|
with_items: '{{ libvirt_networks }}'
|
|
- name: ensure libvirt networks are active
|
|
virt_net:
|
|
name: '{{ item.name }}'
|
|
state: active
|
|
with_items: '{{ libvirt_networks }}'
|
|
- name: ensure libvirt networks start at boot
|
|
virt_net:
|
|
name: '{{ item.name }}'
|
|
autostart: true
|
|
with_items: '{{ libvirt_networks }}'
|