Live Lab Demo
The demo-live-lab script provides an interactive demonstration of Schedune's VirtualMachine runtime lifecycle utilizing KVM and QEMU.
It runs locally on an x86_64 Linux host or nested-KVM x86_64 environment that possesses KVM extensions and the qemu-system binaries.
What it does
The demo proves host node ingestion, runtime lifecycle, and backend readiness by completing the following sequence:
- Preflight Checks: Ensures you have KVM extensions and QEMU.
- Environment Reset: Drops the local state.
- Agent Inspect & Control Plane Start: Scrapes host capabilities locally, generating a
node_id, and pushes them via Schedune Intake. - Artifact Creation: Generates a 10MB empty
qcow2image.- Note: The demo intentionally uses an empty
qcow2because its focus is proving the underlying KVM execution and capability engine, not booting a specific Guest OS or Application.
- Note: The demo intentionally uses an empty
- Explain & Predict: Analyzes why an architecture-specific VM requiring KVM maps strictly to the local Node's Holding Pool.
- Validate & Dry-Run: Confirms the Launch Specification and simulates execution.
- Execute: Directly spawns a
qemu-system-*process on the node via Schedune. - Lifecycle & Readiness: Polls until the control socket reports the virtual machine is actively listening.
- Trace & Events: Shows the recorded telemetry trace and state machine events for the Launch.
- Termination: Issues an API call to tear down the underlying process.
- Orphans: Confirms no lingering processes exist in the Recovery engine.
Usage
# Build Schedune binaries
make build
# Run the Live Lab interactively
make demo-live-lab
# Run the Live Lab and exit automatically
make demo-live-lab-once