VM Snapshot System
KVM-based VM snapshot service built with Rust. Features live snapshotting, incremental backups, and a web interface for VM state management.
- Role: Backend & Systems Developer
- Timeline: April 2023
- Team: Cloud Computing Project (2 members)
- Technologies: Rust, Virtualization, HTML, CSS
- Link: https://github.com/Laxman824/LiveSnapshotProject
Problem
Cloud Computing course project: design and implement a reliable VM snapshotting service on top of a hypervisor stack. Needed to interact with KVM/libvirt, preserve VM state, and expose a usable management interface.
Solution
Implemented a Rust-based snapshot service that talks to KVM/libvirt to create and manage live snapshots of running VMs, with a lightweight web UI for creating, listing, and restoring snapshots without manual hypervisor commands.
Impact
- Enabled live snapshotting with minimal or no VM downtime.
- Introduced incremental snapshots to reduce storage footprint for frequent backups.
- Provided a simple web panel for operators instead of low-level CLI or hypervisor tools.
- Demonstrated safe systems programming in Rust for critical infrastructure workflows.
Key features
- Live VM snapshotting while the guest OS keeps running.
- Full memory and disk state capture for consistent restore points.
- Incremental snapshot support to optimize storage usage.
- Snapshot listing, filtering, and metadata display in the UI.
- One-click snapshot restore from the web interface.
- Basic snapshot scheduling for periodic backups.
- Support for multiple VMs configured via libvirt domains.
- Storage space monitoring and simple retention strategy.
Tech stack
- Backend: Rust, libvirt-rs, actix-web
- Virtualization: KVM, QEMU, libvirt
- Frontend: HTML, CSS, JavaScript
- Storage: QCOW2, LVM
What K Laxman learned
- Hands-on experience with KVM, QEMU, and libvirt APIs.
- Systems programming in Rust with focus on safety and error handling.
- Design of snapshot models including full and incremental backups.
- Practical understanding of VM storage backends and performance trade-offs.
Explore more
- Home — overview, skills and a built-in AI assistant
- Experience — roles at Think360 AI (CAMS), CAMS Mutual Funds and IIT Delhi
- Projects — GenAI, LLM, RAG and full-stack builds
- Education — IIT Delhi, M.Tech & B.Tech Computer Science
- GitHub Activity — open-source contributions
- Contact / Hire me