create your own

Introduction to virtualization systems

65
rate or flag this page

By Ancillotti




With the release of processors getting faster and the use of increasing amounts of RAM, it became more and more sense to group multiple servers from a single machine, using a virtualization system.

Virtualization is achieved by inserting an intermediate layer between the system running inside the virtual machine and the machine's hardware, simulating a complete computer.Virtualization software is then responsible for managing all the hardware resources, including interrupts and memory addresses, so that the systems within virtual machines (virtual machines, or simply VMs) to operate as if each one had a whole machine reserved for you.

The main system in this case is to be called the "host" (host) and the systems that are running inside the virtual machine are called "guests" (invited). Each one thinks he has a complete PC for you, while actually running within a "matrix", the virtual machine.

A virtualization system to divide a single server into several independent virtual servers, each one can run a different operating system. The virtual servers share the resources of the real server, within the limits of memory usage and disk space you set.

Besides allowing to reduce costs, use virtual machines also offers advantages in terms of administration. Because the files for each virtual machine are concentrated in a single folder, it is easy to make regular backups, not to mention the fact that virtual machines can be quickly transferred to a new server if necessary. With this, you have freedom to move a virtual server that was receiving a higher volume of requests to another machine with more resources, for example.

Of course, this work to simulate a complete PC and on top with a good performance is not simple, and therefore there is always some overhead. Moreover, with multiple virtual machines running simultaneously, the machine's resources end up being better used, since they end up using processing and other resources in rotation, according to the fluctuations in the workload of each one. A particular virtual server can receive many requests at lunchtime, while another is used predominantly in the late afternoon, for example.

Furthermore, the use of virtualization allows multiple servers cluster of low demand on a single machine, reducing costs. If you prefer to keep your DNS server or your email on a separate machine for safety, for example, may well use a virtual machine rather than use a second dedicated server. 
Another common use is in situations where you need a specific operating system, or a particular Linux distribution to run a certain software. Instead of migrating your primary server for the distribution in question, or install a second server just for her, you can use a virtual machine.

The market for virtualization solutions has grown significantly in recent years, which has led to various solutions, both open source and commercial. Four examples of software that stand out are VMware, Xen, Qemu and Virtuozzo, which work slightly differently, but with great differences practices.

VMware uses the classical concept of virtualization, trying wherever possible to convert the commands used by the system within the virtual machine into commands that the host system to understand and execute directly. This applies when it is necessary to transmit data over the network card, display messages on video or execute instructions from the processor, for example. It interprets and translates instructions to a minimum, which makes the system inside the virtual machine to run with a performance very similar to the actual performance of the machine. Although it is a business application, VMware has two free versions, VMware Player and VMware Server, the main theme of this chapter. Both are available on http://www.vmware.com.

Although relatively unknown to the users desktop, Xen is widely used on servers. It uses a different idea, paravirtualization, which is to transparently share the hardware resources, allowing the system to run guest with a reduction of performance very small (less than 5% in many cases). The biggest problem is that to run within Xen is necessary that the system is modified guest, you can not run any system directly, as in the case of VMware. This is not a major problem in the case of Linux distributions (where it is only necessary to use a specially compiled kernel), but makes use of Windows and other closed-source software within virtual machines.

Xen is more complicated to configure than VMware, which somewhat limits its audience, even when we talk about servers. Even so, many distributions have you been to include Xen in its package tree, as in the case of CentOS, greatly easing installation. The project page is http://www.xensource.com/.

Unlike VMware and Xen, Qemu is an emulator, which works similarly to the old console emulators, which we use to run games from SNES and Mega Drive on your PC. Instead of using a virtualization system, it tries to process all the instructions, which ends up taking longer and making the performance is lower. In general, VMware can make the system run guest about 70 to 90% of performance that would have if it were run directly, while Qemu get from 5 to 10%.

The Qemu has an additional module, kqemu, which causes it to pass to function more similar to VMware, virtualizing an overview of the processor, rather than emulate it. Kqemu greatly improves the performance of Qemu, but still leaves him well behind VMware in a matter of performance.

Initially, Qemu was just a smaller project, which could not compete with giants like VMware, but recently he started to gain more attention with the development of KVM, a virtualization system included directly in the kernel, available from version 2.6.20, which works in conjunction with it. Because it is open-source, the KVM is likely to evolve over the coming years to begin to compete with Xen and VMware.

We also have the Virtuozzo, a commercial system that has been widely used in hosting services for the creation of virtual private servers, or virtual machines offered as a cheaper option for those who want a dedicated server cheap. In many data centers, you can include an installation of Virtuozzo on your dedicated server by paying a premium for licensing.

Unlike VMware and Xen, which use virtualization in hardware, by simulating the entire system, including hardware, Virtuozzo uses a lighter virtualization, which operates the operating system level, creating containers with several instances of the same operating system, each with its own network configuration, user list, table files, archives and libraries.

Although each container is not a virtual machine "complete", as components of the core operating system are shared and access to hardware is limited, they do behave as separate systems, so that, for practical purposes, the limitations are often compensated the reduction in overhead.

Print   —   Rate it:  up  down  flag this hub

Comments

RSS for comments on this Hub

Consonus Tech profile image

Consonus Tech  says:
3 weeks ago

In the 21st century, we need an introduction to virtualization systems and virtual technology because they are foreign terms for many of us. However, virtualization is important (like you point out) for reducing costs, sharing resources, and backups. I appreciate your introduction to various types of software that address these issues. Your readers will appreciate how you define “host” and “guests” as well as “matrix” so they can better approach these systems.

Submit a Comment

Members and Guests

Sign in or sign up and post using a hubpages account.


optional


  • No HTML is allowed in comments, but URLs will be hyperlinked
  • Comments are not for promoting your hubs or other sites

working