Atom feed of this document
 

 Hypervisor configuration basics

The node where the nova-compute service is installed and running is the machine that runs all the virtual machines, referred to as the compute node in this guide.

By default, the selected hypervisor is KVM. To change to another hypervisor, change the libvirt_type option in nova.conf and restart the nova-compute service.

Here are the general nova.conf options that are used to configure the compute node's hypervisor. Specific options for particular hypervisors can be found in following sections.

Table 2.21. Description of configuration options for hypervisor
Configuration option=Default value Description
block_migration_flag=VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, VIR_MIGRATE_NON_SHARED_INC (StrOpt) Migration flags to be set for block migration
checksum_base_images=False (BoolOpt) Write a checksum for files in _base to disk
default_ephemeral_format=None (StrOpt) The default format an ephemeral_volume will be formatted with on creation.
disk_cachemodes= (ListOpt) Specific cachemodes to use for different disk types e.g: ["file=directsync","block=none"]
force_raw_images=True (BoolOpt) Force backing images to raw format
inject_password=True (BoolOpt) Whether baremetal compute injects password or not
libvirt_cpu_mode=None (StrOpt) Set to "host-model" to clone the host CPU feature flags; to "host-passthrough" to use the host CPU model exactly; to "custom" to use a named CPU model; to "none" to not set any CPU model. If libvirt_type="kvm|qemu", it will default to "host-model", otherwise it will default to "none"
libvirt_cpu_model=None (StrOpt) Set to a named libvirt CPU model (see names listed in /usr/share/libvirt/cpu_map.xml). Only has effect if libvirt_cpu_mode="custom" and libvirt_type="kvm|qemu"
libvirt_disk_prefix=None (StrOpt) Override the default disk prefix for the devices attached to a server, which is dependent on libvirt_type. (valid options are: sd, xvd, uvd, vd)
libvirt_images_rbd_ceph_conf= (StrOpt) path to the ceph configuration file to use
libvirt_images_type=default (StrOpt) VM Images format. Acceptable values are: raw, qcow2, lvm,rbd, default. If default is specified, then use_cow_images flag is used instead of this one.
libvirt_images_rbd_pool=rbd (StrOpt) the RADOS pool in which rbd volumes are stored
libvirt_images_volume_group=None (StrOpt) LVM Volume Group that is used for VM images, when you specify libvirt_images_type=lvm.
libvirt_inject_key=True (BoolOpt) Inject the ssh public key at boot time
libvirt_inject_partition=1 (IntOpt) The partition to inject to : -2 => disable, -1 => inspect (libguestfs only), 0 => not partitioned, >0 => partition number
libvirt_inject_password=False (BoolOpt) Inject the admin password at boot time, without an agent.
libvirt_iscsi_use_multipath=False (BoolOpt) use multipath connection of the iSCSI volume
libvirt_iser_use_multipath=False (BoolOpt) use multipath connection of the iSER volume
libvirt_lvm_snapshot_size=1000 (IntOpt) The amount of storage (in megabytes) to allocate for LVM snapshot copy-on-write blocks.
libvirt_nonblocking=True (BoolOpt) Use a separated OS thread pool to realize non-blocking libvirt calls
libvirt_ovs_bridge=br-int (StrOpt) Name of Integration Bridge used by Open vSwitch
libvirt_snapshot_compression=False (BoolOpt) Compress snapshot images when possible. This currently applies exclusively to qcow2 images
libvirt_snapshots_directory=$instances_path/snapshots (StrOpt) Location where libvirt driver will store snapshots before uploading them to image service
libvirt_sparse_logical_volumes=False (BoolOpt) Create sparse logical volumes (with virtualsize) if this flag is set to True.
libvirt_type=kvm (StrOpt) Libvirt domain type (valid options are: kvm, lxc, qemu, uml, xen)
libvirt_uri= (StrOpt) Override the default libvirt URI (which is dependent on libvirt_type)
libvirt_use_virtio_for_bridges=True (BoolOpt) Use virtio for bridge interfaces with KVM/QEMU
libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtGenericVIFDriver (StrOpt) The libvirt VIF driver to configure the VIFs.
libvirt_volume_drivers=iscsi=nova.virt.libvirt.volume.LibvirtISCSIVolumeDriver, iser=nova.virt.libvirt.volume.LibvirtISERVolumeDriver, local=nova.virt.libvirt.volume.LibvirtVolumeDriver, fake=nova.virt.libvirt.volume.LibvirtFakeVolumeDriver, rbd=nova.virt.libvirt.volume.LibvirtNetVolumeDriver, sheepdog=nova.virt.libvirt.volume.LibvirtNetVolumeDriver, nfs=nova.virt.libvirt.volume.LibvirtNFSVolumeDriver, aoe=nova.virt.libvirt.volume.LibvirtAOEVolumeDriver, glusterfs=nova.virt.libvirt.volume.LibvirtGlusterfsVolumeDriver, fibre_channel=nova.virt.libvirt.volume.LibvirtFibreChannelVolumeDriver, scality=nova.virt.libvirt.volume.LibvirtScalityVolumeDriver (ListOpt) Libvirt handlers for remote volumes.
libvirt_wait_soft_reboot_seconds=120 (IntOpt) Number of seconds to wait for instance to shut down after soft reboot request is made. We fall back to hard reboot if instance does not shutdown within this window.
preallocate_images=none (StrOpt) VM image preallocation mode: "none" => no storage provisioning is done up front, "space" => storage is fully allocated at instance start
remove_unused_base_images=True (BoolOpt) Should unused base images be removed?
remove_unused_kernels=False (BoolOpt) Should unused kernel images be removed? This is only safe to enable if all compute nodes have been updated to support this option. This will enabled by default in future.
remove_unused_original_minimum_age_seconds=86400 (IntOpt) Unused unresized base images younger than this will not be removed
remove_unused_resized_minimum_age_seconds=3600 (IntOpt) Unused resized base images younger than this will not be removed
rescue_image_id=None (StrOpt) Rescue ami image
rescue_kernel_id=None (StrOpt) Rescue aki image
rescue_ramdisk_id=None (StrOpt) Rescue ari image
rescue_timeout=0 (IntOpt) Automatically unrescue an instance after N seconds. Set to 0 to disable.
snapshot_image_format=None (StrOpt) Snapshot image format (valid options are : raw, qcow2, vmdk, vdi). Defaults to same as source image
timeout_nbd=10 (IntOpt) time to wait for a NBD device coming up
use_cow_images=True (BoolOpt) Whether to use cow images
use_usb_tablet=True (BoolOpt) Sync virtual and real mouse cursors in Windows VMs
vcpu_pin_set=None (StrOpt) Which pcpus can be used by vcpus of instance e.g: "4-12,^8,15"
virt_mkfs=['default=mkfs.ext3 -L %(fs_label)s -F %(target)s', 'linux=mkfs.ext3 -L %(fs_label)s -F %(target)s', 'windows=mkfs.ntfs --force --fast --label %(fs_label)s %(target)s'] (MultiStrOpt) mkfs commands for ephemeral device. The format is <os_type>=<mkfs command>

Log a bug against this page


loading table of contents...