-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Description
The required feature described as a wish
Problem's description
Currently, Apache CloudStack deploys multiple System VMs (Virtual Router, Secondary Storage VM, and Console Proxy VM) with a standard baseline of resource allocation. While this architecture is excellent for scalability and fault isolation in medium to large data centers, it introduces a disproportionate resource overhead (RAM and CPU) in very small environments, home labs, or Edge computing deployments.
In environments with limited physical resources, the mandatory deployment of separate, full-sized System VMs consumes a significant percentage of the available host capacity before any user workload is even launched.
Proposed Solution
We propose introducing a less monolithic approach for System VMs in small-scale deployments. Potential solutions could include:
- Lightweight System VMs: Provide an official "micro" template for System VMs (e.g., based on Alpine Linux or a heavily stripped-down OS) that consumes significantly less baseline RAM/CPU.
- Combined System VM: Introduce a configuration flag to allow combining the roles of the SSVM and CPVM (and potentially basic VR features) into a single, unified System VM for environments that do not require high availability or massive concurrent access.
- Modular toggle: Allow administrators to completely disable certain System VM agents (like Console Proxy) if they are not strictly required for their specific use case.
Use Cases
- Edge Computing: Deploying CloudStack in micro-datacenters at the edge where hardware resources are heavily constrained.
- PoC and Testing: Lowering the barrier of entry for users and developers who want to evaluate CloudStack on smaller hardware (e.g., single-node deployments).
- Small Private Clouds: Small businesses that need IaaS capabilities but have very limited host nodes.
Additional context
This suggestion arises from an architectural analysis conducted as part of a university project on Software Systems Architecture, where we identified this monolithic aspect of the System VMs as a performance bottleneck for small-scale adoption.