Virtuozzo

From Wikipedia, the free encyclopedia

Virtuozzo is a proprietary operating system virtualization product produced by SWsoft, Inc. A version that supports Linux has been available since 2001; a version that supports Microsoft Windows became available in 2005.

Contents

[edit] Description

Virtuozzo creates multiple, isolated virtual environments (VEs, otherwise known as Virtual Private Servers, or VPSs) on a single physical server. This allows the sharing of hardware, systems management effort, and sometimes software licenses among different workloads.

The VE behaves in most respects as if it were a stand-alone server. Each VE has its own superuser (root or Administrator), set of users/groups, IP address(es), processes, files, applications, system libraries and configuration files. The VE is completely accessible via the network. Due to virtualized network stack, a VE owner can have his own routing tables and firewall (iptables) rules.

Virtuozzo can support tens to hundreds of VEs on a single server due to its use of operating system-level virtualization. It is available for Linux and Microsoft Windows.

[edit] Operating system-level virtualization

For more details on this topic, see Operating system-level virtualization.

Virtuozzo virtualizes at the operating system level, rather than the hardware level as other Virtual Machine (VM) products frequently do. Whereas VMs attempt to virtualize "a complete set of hardware," VEs represent a "lighter" abstraction, virtualizing instead "an operating system instance". All VEs run atop a single operating system kernel. The VE mechanism multiplexes this one OS kernel to look like multiple OS (and server) instances, especially from the perspective of running applications, users, and network services. Virtuozzo is based on OpenVZ, and its concepts are similar to several other operating system-level virtualization implementations, including Solaris Containers, Linux-VServer and FreeBSD Jail.

Because they virtualize less, VEs impose lower overhead than VMs. As a result, more VEs can be supported on a given server. Proponents occasionally claim "thousands of VEs per server" in test situations to determine the upper limits of the technology. Virtuozzo supports servers with up to 64 x86 CPUs and 64 GB of RAM, but 1-4 CPU systems are far more common in practice.

[edit] Open source

Virtuozzo for Linux is based on OpenVZ, which is available under the GNU General Public License.

[edit] Comparison to other technologies

Virtuozzo is a different approach to virtualization based on a different architecture from most other virtualization technologies. Virtuozzo was designed to be a low-overhead, fast-performing solution with many tools for simple management, since its early adopters include service providers with thousands of VEs to manage. The technology is based on a single OS flavor for a server, which makes it less useful for developers who would like to run different OSs on a single server. SWsoft claims that the performance and management advantages of having the single OS outweigh this limitation, because most server consolidations are done on similar OSs. Typically the same system administrator, either Windows or Linux, will own a server and control its maintenance.

SWsoft also claims that VM vendors have issued false information regarding the nature of isolation and security of Virtuozzo, and that a core component of the Virtuozzo technology ensures that VEs are isolated and secure. Virtuozzo has been running in service provider environments since 2001, which house hundreds of different unfriendly customers on a single server, without the benefit of an external firewall. Because of these conditions, SWsoft claims that Virtuozzo technology is more tested and secure than VM technologies that all have friendly residents and are protected from hackers.

Because they rely on the services of a single kernel, all of the VEs on a given server are running the same kernel, but everything else — system libraries, configuration and program files — can be different in different VEs, so different Linux distributions are happily coexisting on a single Virtuozzo for Linux server. Still, if you want to run different kernels on the very same physical server at the same time, you should take a look into solutions employing either paravirtualization or software emulation techniques. Note however that those technologies have higher performance overhead and lower density than operating system-level virtualization.

[edit] External links

In other languages