Configuration
The inventory may define these hosts to run:
hypervisors
: Set of hosts to launch virtual machines
Hypervisor
The project use the KVM hypervisor to virtualize machines.
RADOS Block Device
libvirt will automatically detect the RBD and create a pool with this option --enable-rbd
. The found resources can be used to launch a VM (if it's an image for a virtual machine).
Components of VM
Each components of VM should have a VirtIO
interface (like the network and the disk). This reduces problems with the virtual hardware.
Some examples are available here.
Troubleshooting
Bootloader
If the VM is in UEFI mode, it's possible that it doesn't boot because the firmware is not the same. Follow this steps:
- Boot the machine on the cluster
- Re-install the bootloader
- Update the bootloader configuration
Deployment of VM with Ansible
The playbook ansible/playbooks/cluster_setup_deploy_vms.yaml
is used to deploy a virtual machine. There is an ansible library (ansible/library/cluster_vm.py
) to wrap vm_manager.
Configuration
The inventory must define these hosts to run this step:
VMs
: Sets of hosts to launch on hypervisors
Before starting, make sure there is enough space in /home
and /tmp
.