Combining Virtualization Providers

You can use multiple virtualization providers within the same lab topology. One of them is the primary provider specified in the provider topology attribute, other(s) are secondary providers specified with provider attribute on individual nodes.

Warning

You MUST use netlab up to start the lab and netlab down to stop the lab when using a combination of virtualization providers. netlab has to do some heavy lifting behind the scenes to make it work.

For example, you could have a topology that implements routers as virtual machines (using libvirt primary provider) and end hosts as containers (using clab secondary provider):

provider: libvirt

nodes:
  h1:
    device: linux
    provider: clab
  r1:
    device: iosv
    module: [ ospf ]
  r2:
    device: iosv
    module: [ ospf ]
  h2:
    device: linux
    provider: clab

links:
- h1-r1
- r1-r2
- r2-h2

netlab supports the following combinations of primary/secondary virtualization providers:

Primary provider

Secondary provider(s)

libvirt

clab