Skip to content

Virtual Machines

Not officially supported

Hedgehog does not officially support running control or gateway nodes as virtual machines.

The examples on this page use libvirt/QEMU. The underlying requirements — UEFI without secure boot, VirtIO devices, and PCI passthrough for gateway data-plane NICs — apply to any hypervisor.

Common Settings

These apply to both control and gateway nodes.

  • Use the q35 machine type with efi firmware. Only UEFI boot is supported.
  • Disable secure boot:

    <os firmware='efi'>
      <firmware>
        <feature enabled='no' name='secure-boot'/>
      </firmware>
    </os>
    
  • Use VirtIO devices wherever possible.

  • Attach a console device.
  • Enable autostart so the VM starts with the host.
  • The QEMU guest agent is built into the Flatcar image. To use it, add a virtio-serial port named org.qemu.guest_agent.0. See the Flatcar documentation for details.

Control Node

  • Size the VM to meet or exceed the control node requirements.
  • Configure both NICs as virtio: one for the outside world, one for the out-of-band management network of the fabric switches.

Gateway Node