At the enterprise level, numerous types of virtual private server (VPS) implementations are avaible, each with its own unique strategies, techniques, and configurations. Without some understanding of the fundamental concepts behind each such technology, it's hard to draw valid distinctions among them, and it's also difficult to weigh the competitive advantages accurately when comparing one VPS solution to another. This article briefly examines differences between two similar products from the same vendor.
SWsoft's Virtuozzo and OpenVZ products cater to different crowds in the same market space. They also make possible an excellent side-by-side comparison of proprietary and open source features. But first, let's make a cursory examination of the leading methods for server virtualization.
- Virtual Machines (VMs) emulate system resources running on host resources, and create a Guest OS environment for each targeted platform. Subsequent OS images execute within a guest OS container without modifying the underlying OS. This, in turn, requires a VM monitor (VMM) to validate all guest-issued CPU instructions.
- Paravirtual Machines (PVM) also require a VMM but the primary difference is that any guest OS must be modified to work within a PVM volume. The OS itself must be designed to utilize privileged system calls sparingly and each instance must be uniquely identified to operate alongside other, different guest OSes.
- Virtualization at the OS point-of-view is more intrusive to kernel source code, but gains the ability to operate several instances of a single OS, and provides greater isolation for concurrent applications or OS execution threads. Instead of using a guest/host paradigm, OS-level virtualization is able to logically subdivide existing resources so that other OS instances can coexist within well-defined boundaries.
Virtuozzo abandons the typical hardware abstraction layer constructed in guest emulation environments to adopt a method for subdividing resources logically, according to administrative policy. On the Linux side, Virtuozzo runs a single Linux kernel as its core and exports that core functionality to various distributions, each of which effectively becomes a stand-alone entity. Each virtual private server (VPS) instance created on a single host has a separate set of login credentials, system processes, daemon services, and network address, and can function as a template for rapid deployment of other VPSs. Keep this in mind as you peruse the cursory evaluation of proprietary and open source products that follows.
OpenVZ is considered a subset of the Virtuozzo platform and a testbed for future development of the commercial product line. The OpenVZ platform supports up to eight 32 or 64-bit CPUs, 64 gigabytes of RAM, and a maximum of 100 concurrent VPS instances. A single OpenVZ host can scale dynamically between minimal and maximal system resources according to increased demand without being restarted. Furthermore, OpenVZ uses a single version of the underlying Linux kernel for each of its VPS instances while also enabling separate distributions to run concurrently. This makes OpenVZ ideal for early-adopters, custom in-house integrators, and small IT shops where physical resources are used conservatively but also require support for a variety of Linux distributions.
On the commercial side, Virtuozzo targets production environments and increases the scalability, performance, and the range of utilities included. All this added functionality is designed to facilitate improved management and utilization of virtualized resources. Furthermore, Virtuozzo runs on both Windows and Linux servers unlike OpenVZ, with its direct tie-in to Linux core components. As a for-a-fee product, Virtuozzo boasts a more robust feature set than OpenVZ, including support for up to 32 processors using 32-bit or 64-bit x86 architectures, and thousands of managed VPSs. GUI and browser-based management tools facilitate administration, monitoring, and provisioning of VPS resources in Virtuozzo.
The Virtuozzo Management Console (VZMC) is a client-level management console that provides consolidated access to remote VPS management for both Windows and Linux hosts. This console facilitates configuration, maintenance, and patch management for these platforms and deploys quickly across all VPS instances. The Virtuozzo Control Center provides remote management and consolidates all functionality provided by its various console management applications.
Virtuozzo has a clear and present advantage over OpenVZ for large scale IT enterprises, especially those that use both Windows and Linux platforms. Virtuozzo works especially well where multi-processor scalability is a factor. It can also play a more significant role in high-density server deployments thanks to the wide variety of server management facilities it includes. OpenVZ is best-suited for VPS populations that number in the hundreds, or where in-house platform development efforts revolve primarily around one or more Linux kernel versions.
Justin Korelc is a long-time Linux hacker and system administrator who concentrates on hardware and software security, virtualization, and high-performance Linux systems. Ed Tittel is a full-time freelance writer based in Austin, TX, who specialized in markup languages, information security, networking, and IT certification. Together, both Justin and Ed have contributed to books on Home Theater PCs and the Linux-based MythTV environment, and write regularly about Linux for several TomsHardware sites.