Salt Virt allows for the disks created for deployed virtual machines
to be finely configured. The configuration is a simple data structure which is
read from the config.option
function, meaning that the configuration can be
stored in the minion config file, the master config file, or the minion's
pillar.
This configuration option is called virt.disk
. The default virt.disk
data structure looks like this:
virt.disk:
default:
- system:
size: 8192
format: qcow2
model: virtio
Note
The format and model does not need to be defined, Salt will default to the optimal format used by the underlying hypervisor, in the case of kvm this it is qcow2 and virtio.
This configuration sets up a disk profile called default. The default profile creates a single system disk on the virtual machine.
Many environments will require more complex disk profiles and may require more than one profile, this can be easily accomplished:
virt.disk:
default:
- system:
size: 8192
database:
- system:
size: 8192
- data:
size: 30720
web:
- system:
size: 1024
- logs:
size: 5120
This configuration allows for one of three profiles to be selected, allowing virtual machines to be created with different storage needs of the deployed vm.