The nova.virt.libvirt.vif Module

VIF drivers for libvirt.

class LibvirtBaseVIFDriver(get_connection)

Bases: object

get_config(instance, network, mapping, image_meta, inst_type)
get_vif_devname(mapping)
has_libvirt_version(want)
plug(instance, vif)
unplug(instance, vif)
class LibvirtBridgeDriver(get_connection)

Bases: nova.virt.libvirt.vif.LibvirtGenericVIFDriver

Retained in Grizzly for compatibility with Quantum drivers which do not yet report ‘vif_type’ port binding. Will be deprecated in Havana, and removed in Ixxxx.

get_config(instance, network, mapping, image_meta, inst_type)
plug(instance, vif)
unplug(instance, vif)
class LibvirtGenericVIFDriver(get_connection)

Bases: nova.virt.libvirt.vif.LibvirtBaseVIFDriver

Generic VIF driver for libvirt networking.

get_br_name(iface_id)
get_bridge_name(network)
get_config(instance, network, mapping, image_meta, inst_type)
get_config_802qbg(instance, network, mapping, image_meta, inst_type)
get_config_802qbh(instance, network, mapping, image_meta, inst_type)
get_config_bridge(instance, network, mapping, image_meta, inst_type)

Get VIF configurations for bridge type.

get_config_ovs(instance, network, mapping, image_meta, inst_type)
get_config_ovs_bridge(instance, network, mapping, image_meta, inst_type)
get_config_ovs_ethernet(instance, network, mapping, image_meta, inst_type)
get_config_ovs_hybrid(instance, network, mapping, image_meta, inst_type)
get_firewall_required()
get_ovs_interfaceid(mapping)
get_veth_pair_names(iface_id)
plug(instance, vif)
plug_802qbg(instance, vif)
plug_802qbh(instance, vif)
plug_bridge(instance, vif)

Ensure that the bridge exists, and add VIF to it.

plug_ovs(instance, vif)
plug_ovs_bridge(instance, vif)

No manual plugging required.

plug_ovs_ethernet(instance, vif)
plug_ovs_hybrid(instance, vif)

Plug using hybrid strategy

Create a per-VIF linux bridge, then link that bridge to the OVS integration bridge via a veth device, setting up the other end of the veth device just like a normal OVS port. Then boot the VIF on the linux bridge using standard libvirt mechanisms.

unplug(instance, vif)
unplug_802qbg(instance, vif)
unplug_802qbh(instance, vif)
unplug_bridge(instance, vif)

No manual unplugging required.

unplug_ovs(instance, vif)
unplug_ovs_bridge(instance, vif)

No manual unplugging required.

unplug_ovs_ethernet(instance, vif)

Unplug the VIF by deleting the port from the bridge.

unplug_ovs_hybrid(instance, vif)

UnPlug using hybrid strategy

Unhook port from OVS, unhook port from bridge, delete bridge, and delete both veth devices.

class LibvirtHybridOVSBridgeDriver(get_connection)

Bases: nova.virt.libvirt.vif.LibvirtGenericVIFDriver

Retained in Grizzly for compatibility with Quantum drivers which do not yet report ‘vif_type’ port binding. Will be deprecated in Havana, and removed in Ixxxx.

get_bridge_name(network)
get_config(instance, network, mapping, image_meta, inst_type)
get_ovs_interfaceid(mapping)
plug(instance, vif)
unplug(instance, vif)
class LibvirtOpenVswitchDriver(get_connection)

Bases: nova.virt.libvirt.vif.LibvirtGenericVIFDriver

Retained in Grizzly for compatibility with Quantum drivers which do not yet report ‘vif_type’ port binding. Will be deprecated in Havana, and removed in Ixxxx.

get_bridge_name(network)
get_config(instance, network, mapping, image_meta, inst_type)
get_ovs_interfaceid(mapping)
plug(instance, vif)
unplug(instance, vif)
class LibvirtOpenVswitchVirtualPortDriver(get_connection)

Bases: nova.virt.libvirt.vif.LibvirtGenericVIFDriver

Retained in Grizzly for compatibility with Quantum drivers which do not yet report ‘vif_type’ port binding. Will be deprecated in Havana, and removed in Ixxxx.

get_bridge_name(network)
get_config(instance, network, mapping, image_meta, inst_type)
get_ovs_interfaceid(mapping)
plug(instance, vif)
unplug(instance, vif)
class QuantumLinuxBridgeVIFDriver(get_connection)

Bases: nova.virt.libvirt.vif.LibvirtGenericVIFDriver

Retained in Grizzly for compatibility with Quantum drivers which do not yet report ‘vif_type’ port binding. Will be deprecated in Havana, and removed in Ixxxx.

get_bridge_name(network)
get_config(instance, network, mapping, image_meta, inst_type)
plug(instance, vif)
unplug(instance, vif)
is_vif_model_valid_for_virt(virt_type, vif_model)

Previous topic

The nova.virt.libvirt.utils Module

Next topic

The nova.virt.libvirt.volume Module

This Page