Skip to content
Tech News
← Back to articles

Show HN: Holos – QEMU/KVM with a compose-style YAML, GPUs and health checks

read original get QEMU/KVM Management Tool → more articles
Why This Matters

Holos introduces a Docker Compose-like approach for managing multiple KVM/QEMU virtual machines with a simple YAML configuration, eliminating the need for libvirt or XML files. This simplifies VM orchestration, making it more accessible for developers and system administrators to deploy and manage complex VM stacks efficiently. Its integration of GPU support and health checks further enhances its appeal for diverse workloads.

Key Takeaways

holos

Docker compose for KVM. Define multi-VM stacks in a single YAML file. No libvirt, no XML, no distributed control plane.

The primitive is a VM, not a container. Every workload instance gets its own kernel boundary, its own qcow2 overlay, and its own cloud-init seed.

Quick Start

Write a holos.yaml :

name : my-stack services : db : image : ubuntu:noble vm : vcpu : 2 memory_mb : 1024 cloud_init : packages : - postgresql runcmd : - systemctl enable postgresql - systemctl start postgresql web : image : ubuntu:noble replicas : 2 depends_on : - db ports : - " 8080:80 " volumes : - ./www:/srv/www:ro cloud_init : packages : - nginx write_files : - path : /etc/nginx/sites-enabled/default content : | server { listen 80; location / { proxy_pass http://db:5432; } } runcmd : - systemctl restart nginx

Bring it up:

holos up

That's it. Two nginx VMs and a postgres VM, all on the same host, all talking to each other by name.

CLI

... continue reading