Choosing the Right Hypervisor: Apache CloudStack Hypervisor Support
Marco Sinhoreli
Technical Marketing Manager @ ShapeBlue | Apache CloudStack Committer
Apache CloudStack stands out by supporting multiple hypervisors, offering organisations the flexibility to choose the one that best meets their specific business needs. This article analyses the three key hypervisors supported by CloudStack: KVM, VMware vSphere and XCP-ng / XenServer. We will examine their features, architecture, performance metrics, and suitability for various workloads and explore how each integrates with CloudStack to deliver cloud services. Additionally, we will analyse the impact of each hypervisor on operational complexity and cost of ownership.
Furthermore, we will present the results of a survey conducted in 2024 within the CloudStack community, which sheds light on user preferences and the rationale behind choosing specific hypervisors. This survey data provides valuable insights into these technologies’ practical considerations and real-world applications.?
Hypervisor Architecture
KVM Architecture
Kernel-based Virtual Machine (KVM) is a Type 1 hypervisor integrated into the Linux kernel, transforming it into a robust virtualisation platform. The architecture leverages QEMU to emulate hardware for guest OS instances, each running in an isolated user space with unmodified drivers interacting through virtual network interface cards (VNICs). The KVM kernel module directly interfaces with physical hardware, utilizing the host NIC driver and a Linux bridge or Open vSwitch for network connectivity. The network tap facilitates data exchange between the virtual and physical network layers, ensuring efficient and secure virtualisation. The integration with the Linux kernel allows KVM to benefit from kernel-level performance and scalability features.
Additionally, for managing KVM hosts, Libvirt serves as a powerful management API, simplifying the creation, management, and automation of virtual machines, networks, and storage. This integration makes it easier to manage KVM environments and integrates seamlessly with cloud platforms like Apache CloudStack and other tools.
?
VMware vSphere Architecture
VMware vSphere consists of the ESXi hypervisor and vCenter Server. This combination provides a comprehensive virtualisation platform that extends ESXi’s capabilities through centralized management and advanced features. The vCenter Server is the central management point for vSphere, offering essential services and features that enhance the functionality and manageability of ESXi hosts and virtual machines (VMs).
VMware ESXi is a Type 1 hypervisor that provides a complete virtualisation platform by directly interfacing with the physical hardware. The architecture includes the VMkernel, which handles resource scheduling, device drivers, and core services like virtual networking and storage. ESXi hosts VMs through its Virtual Machine Monitor (VMM) and supports various management services, including the CIM broker for hardware management and third-party plugins. The user world API layer enables interaction with system daemons like hostd and vpxa, facilitating seamless operation and integration with VMware’s management ecosystem like vCenter.
XenServer / XCP-ng Architecture
XenServer and XCP-ng utilize the Xen hypervisor as their core virtualisation technology and leverage XAPI (Xen API) to manage the virtualisation stack. The Xen hypervisor is a Type 1 hypervisor that operates directly on the physical hardware, managing multiple guest operating systems (OS) in isolated environments called domains. The architecture includes:
The Xen hypervisor provides core virtualisation functions such as virtual CPU, virtual memory management (MMU), event channels, and hardware interfaces, ensuring efficient resource allocation and isolation between domains.
Hypervisor Capabilities Matrix
Hypervisor Performance
CloudStack Hypervisors Capabilities
Operational Complexity
KVM integration in CloudStack is relatively simple for users familiar with Linux environments. It integrates well with CloudStack orchestration capabilities by relying on libvirt. Initial configuration may require a good understanding of the Linux network and storage. Continuous management is simplified by CloudStack’s native support, but advanced customisations can add complexity.
XCP-ng and XenServer integration with CloudStack is well supported through XAPI, making deployment smoother for those familiar with the Xen architecture. The complexity lies in the detailed configurations needed to optimize performance and ensure compatibility with CloudStack features. Managing XenServer/XCP-ng on CloudStack is usually efficient, but administrators need to be familiar with Xen-specific configurations and optimizations.
领英推荐
VMware vSphere seamlessly integrates with CloudStack through vCenter API, leveraging the robust support of CloudStack. Although the VMware configuration process is easy to use, managing a VMware environment on CloudStack can be more complex due to the extensive set of features. Administrators must be proficient with vSphere and CloudStack to maximize the potential using VMware vSphere.
Cost of Ownership
Let’s analyse the CloudStack hypervisors cost of ownership now. As a free and open-source solution, KVM significantly reduces the total cost of ownership. Lower operational costs are achieved due to the absence of licensing fees, though skilled Linux administrators might be necessary.
XCP-ng is free and open-source, while Citrix XenServer is a paid solution. It has lower operational costs than VMware but may incur costs for commercial support.
VMware has high licensing costs, increasing the total cost of ownership. Higher operational costs are offset by reduced complexity and robust support. Highly efficient resource utilization can reduce hardware costs in large deployments. Considering the recent changes in the virtualisation market, including VMware’s acquisition by Broadcom, many organizations are seeking mature alternatives like Apache CloudStack and the KVM hypervisor to reduce costs associated with price and product changes. We advise you to read this blog post where we explore CloudStack and KVM as open-source alternatives to VMware: https://www.shapeblue.com/apache-cloudstack-as-a-vmware-alternative/
Hypervisor Choices in the CloudStack Community
Hypervisor selection is critical in cloud computing, affecting performance, cost, compatibility, and ease of management. Recently a survey was conducted in the CloudStack community asking about the choice of hypervisor to understand the preferences and reasons behind choosing specific hypervisors. Some insights have been extracted that expose why KVM is the most appropriate preference when used with Apache CloudStack.
Below we display the results of this survey that provide us with insights into the preferences of users and their reasons:
Recommendations
Based on the user preferences and the comparative matrixes, KVM is the preferred hypervisor for those seeking:
VMware vSphere is recommended for environments prioritizing:
XCP-ng and XenServer are suitable for:
Conclusion
Business needs define the hypervisor choice. KVM is the most preferred among organisations using Apache CloudStack because it covers a range of use cases and workloads while offering an attractive cost of ownership due to its open-source nature. KVM is a powerful hypervisor with efficient performance and minimal overhead, enabling it to run virtual machines at scale effectively.
VMware vSphere is known for its robust feature set and high reliability, making it a top choice for enterprises that require extensive management capabilities and are willing to invest in higher licensing costs for advanced features and support. Its integration with CloudStack is seamless, providing a cohesive management experience.
XenServer / XCP-ng offers a balanced solution with superior performance and scalability, particularly for organisations familiar with Xen architecture. It provides a compelling mix of open-source flexibility with the option for commercial support, making it suitable for various infrastructure needs.
In summary, selecting the right hypervisor depends on specific organisational requirements, including budget constraints, desired features, and existing expertise. KVM’s cost-effectiveness and robust performance make it a strong contender for many CloudStack users, while VMware and XenServer / XCP-ng offer unique advantages that cater to different operational needs.