Virtual machines on SEAPATH

Virtual machines on SEAPATH

SEAPATH Virtualization stack is powered by well-established open source projects

  • QEMU emulates the hardware and runs virtual machines as processes on the hypervisor

  • KVM offers hardware acceleration

  • Libvirt brings an API to control virtual machines both for applications and for the command line interface

With the correct configuration, these tools can effectively schedule virtual machines with real-time constraints.

Additionally, when deployed on a SEAPATH cluster, virtual machines benefit from the high-availability feature

  • VM disk is stored on the Ceph replicated storage, making it accessible from all machines in the cluster

  • VMs are managed by Pacemaker to schedule them on the different machines of the cluster and enable (live) migration

The vm_manager tool

The complexity of managing all these software components at once led SEAPATH to develop its own tool, vm_manager, which acts as a wrapper around Ceph, Pacemaker, and Libvirt.

This tool is the primary interface to interact with VMs on SEAPATH, whether in standalone mode or in a cluster. Learn more at Virtual machines management

Additionally, an Ansible module, cluster_vm, has been created to deploy virtual machines on a SEAPATH cluster. This module uses vm_manager’s deployment capabilities and integrates them into the infrastructure-as-code philosophy of Ansible. Learn more at Virtual machines deployment