An open source virtualization center to manage hundreds of thousands of VMs
Website · Architecture · Run it · Docker Compose · Kubernetes · Release Notes
Open vCenter (OVC) is a modern web console for managing VMs. It currently supports Microsoft Hyper-V clusters, hosts and virtual machines: browse your inventory, run VM lifecycle and power actions, edit hardware, manage templates and ISOs, and open a VM console straight from the browser.
Tested on Windows 11, Windows Server 2022 and Windows Server 2025; should also work on 2019/2016.
| Status | Feature |
|---|---|
| ✅ Available | Creating and managing BIOS/UEFI VMs |
| ✅ Available | Disk and virtual NIC management |
| ✅ Available | Snapshots |
| ✅ Available | Mounting / unmounting ISOs |
| ✅ Available | Autostart order |
| ✅ Available | Batch start / stop |
| ✅ Available | Basic CPU / memory / network metrics for VMs and hosts |
| ✅ Available | Remote HTML5 console to Windows/Linux VMs |
| 🗓 Planned | vTPM support |
| 🗓 Planned | vGPU management |
| 🗓 Planned | Cluster host affinity / anti-affinity |
| 🗓 Planned | Automatic storage workload distribution (DRS-like) |
| 🗓 Planned | Non-Hyper-V hosts/agents |
VM Selected > Details Panel

VM tree with the VM detail tabs on the right.
Host Selected > Details Panel

VM tree with the Host detail tabs on the right.
See docs/screenshots/ for more.
OVC is a distributed system: a web frontend, a backend (REST API + worker), and a
lightweight agent running on every Hyper-V host. The frontend is the only REST
client; the backend never talks to a host directly - every operation is published to
RabbitMQ as a Task and picked up by that host's agent, which runs the work and
reports back asynchronously.
Browser ──REST──▶ ovc-frontend ──REST /api/*──▶ ovc-backend ──RabbitMQ──▶ ovc-agent (per host)
│
PostgreSQL + Valkey
See Architecture for the full request lifecycle, queues and task states.
Each component lives in its own repository:
| Component | Role | Repository |
|---|---|---|
| ovc-frontend | React 19 / TanStack Start SSR web UI. | https://github.com/claudio-azevedo/Open-vCenter-Frontend |
| ovc-backend | FastAPI REST API + a RabbitMQ worker. Owns PostgreSQL and Valkey. | https://github.com/claudio-azevedo/Open-vCenter-Backend |
| ovc-agent-hyperv | Go Windows service on every Hyper-V host. Executes the work, replies over RabbitMQ. | https://github.com/claudio-azevedo/Open-vCenter-Agent-HyperV |
| ovc-webrdp | Browser RDP / Hyper-V console gateway (Guacamole). | https://github.com/claudio-azevedo/Open-vCenter-WebRDP |
See Components for each repository's stack and responsibilities in detail.
The backing services (PostgreSQL, RabbitMQ, Valkey, an OIDC provider, and
guacd for the console) are ordinary containers you run yourself - see
Dependencies.
- Running in dev mode - local development stack and per-host agent setup.
- Docker Compose - the whole stack as containers, one compose file, using the published GHCR images.
- Kubernetes - the whole stack as plain manifests.
In both, the OIDC provider (Keycloak or any other) is optional.
Licensed under the Apache License 2.0 - see LICENSE.