Skip to main content

Hypervisors

Hypervisors are the physical servers that run your virtual machines on Bunker.

Overview

Bunker uses Proxmox VE as its primary hypervisor. Proxmox is an open source virtualization solution based on:

  • KVM (Kernel-based Virtual Machine) for hardware virtualization
  • QEMU for hardware emulation
  • LXC for Linux containers

Architecture

Abstraction

The Control Plane uses an abstraction to communicate with hypervisors:

hypervisor_connector (abstract trait)
└── hypervisor_connector_proxmox (Proxmox implementation)
└── hypervisor_connector_resolver (dynamic resolution)

This architecture allows:

  • Adding new hypervisor types without modifying existing code
  • Testing integration with mocks
  • Switching between hypervisors as needed

Features

Hypervisor Management

  • Registration: Add a new Proxmox cluster to the Control Plane
  • Detachment: Remove a hypervisor from the Control Plane
  • Monitoring: Monitor hypervisor health status

Instance Operations

The hypervisor executes operations requested by the Control Plane:

OperationDescription
CloneCreate an instance from a template
StartStart an instance
StopStop an instance
DeleteDelete an instance

High Availability

Proxmox clusters are configured for high availability:

  • Ceph shared storage: VM disks are replicated
  • Live migration: VMs can be moved between nodes without interruption
  • Fencing: Automatic isolation of failing nodes

Next Steps