Skip to main content

Control Plane

The Control Plane is the central service that orchestrates the entire Bunker infrastructure.

Overview

The Control Plane is responsible for:

Architecture

Services

The Control Plane exposes several gRPC services:

ServiceResponsibility
InstancesCreation, deletion, starting, stopping VMs
HypervisorsRegistration and management of Proxmox clusters
ResourcesStorage and network management
InfrastructureDatacenter management

Technologies

ComponentTechnology
LanguageRust
RPCgRPC (Tonic)
DatabasePostgreSQL
Async RuntimeTokio

gRPC API

The Control Plane exposes a gRPC API compliant with Google Cloud API standards.

Example: List Instances

grpcurl -plaintext \
console.getbunker.net:443 \
bunker.instances.v1.Instances/ListInstances

Available Operations

Instances:

  • ListInstances - List instances
  • CreateInstance - Create an instance
  • DeleteInstance - Delete an instance
  • StartInstance - Start an instance
  • StopInstance - Stop an instance

Hypervisors:

  • ListHypervisors - List hypervisors
  • RegisterHypervisor - Register a hypervisor
  • DetachHypervisor - Detach a hypervisor

Synchronizer

The Synchronizer is a background service that:

  • Maintains consistency between the Control Plane state and hypervisors
  • Detects instance state changes
  • Reconciles divergences

Next Steps