Kvm

KVM Review
Possibility of using KVM Virtualization in Hosting


As seen in
Logosasseeninsmall ab3c74d8852a39fa9ed0fb2833dd7db9c0f026cd637b6c09026ced45c4aaf8bd

Virtualization has made a lot of progress during the last decade, primarily due to the development of myriad open source virtual machine hypervisors. This progress has almost diminished the barriers between operating systems. There are mainly two types of virtualizations; Software Virtualiztion and Hardware Virtualization. Up until recently, the focus always has been on software­emulated virtualization.


KVM

KVM is short for Kernel­based Virtual Machine and makes use of hardware virtualization, i.e., you need a CPU that supports hardware virtualization, e.g. Intel VT or AMD­V. Connsidering the time line of virtualization techniques, KVM is a relative newcomer. Several incumbent open source methods exist today, such as Xen, Bochs, UML, Linux VServer, and coLinux, but KVM is receiving a surprising amount of exposure now. KVM is a unique hypervisor. It consists of a loadable kernel module that provides the core virtualization infrastructure and a processor specific module. Using KVM virtualization, one can run multiple virtual machines running unmodified Linux or Windows images. Each virtual machine has private virtualized hardware: a network card, disk, graphics adapter, etc. The kernel component of KVM is included in mainline Linux. KVM is a relatively new and simple, yet powerful, virtualization engine, which has found its way into the Linux kernel, giving the Linux kernel native virtualization capabilities. Because KVM uses hardware­based virtualization, it does not require modified guest operating systems, and thus, it can support any platform from within Linux, given that it is deployed on a supported processor.


Advantages of KVM Virtualization


• High Security
• performance and scalability
• Adequate for most cloud deployments
• Simple type­2 hypervisor
• Easy to setup
• Open source software
• Run multiple virtual machines running unmodified Linux or Windows images.
• Each virtual machine will have private virtualized hardware: a network card, disk, graphics adapter, etc
• More flexible compared to other virtualiztion technologies.
• KVM is the best Linux kernel­integrated hypervisor technology.


A typical KVM installation consists of the following components:


• A device driver for managing the virtualization hardware; this driver exposes its capabilities via a character device /dev/kvm.
• A user­space component for emulating PC hardware; currently, this is handled in the user space and is a lightly modified QEMU process.
• The I/O model is directly derived from QEMU's, with support for copy­on­write disk images and other QEMU features.


How to check System Compatibility ?

First, you need a processor that supports virtualization. For a more detailed list, you can refer xensource wiki. You can tell whether your system supports virtualization by looking at /proc/cpuinfo. This file specifies whether the vmx (Intel) or svm (AMD) extensions are supported. A wide variety of guest operating systems work with KVM hypervisor, including many flavours of Linux, BSD, Solaris, and Windows Operating Systems. A modified version of Qemu can use KVM to run Mac OS X.


KVM vs Existing Hypervisors :

In many ways, VMware is a ground­breaking technology. VMware manages to fully virtualize the notoriously complex x86 architecture using software techniques only, and to achieve very good performance and stability. As a result, VMware is a very large and complex piece of software. KVM, on the other hand, relies on the new hardware virtualization technologies that have appeared recently. As such, it is very small (about 10,000 lines) and relatively simple. Another big difference is that VMware is proprietary, while KVM is open source. KVM will, in the long run, greatly benefit from taking advantage of advancements in the kernel, without developers having to re­invent them, as is the case with Xen.

Xen is a fairly large project, providing both paravirtualization and full virtualization. It is designed as a standalone kernel, which only requires Linux to perform I/O. This makes it rather large, as it has its own scheduler, memory manager, timer handling and machine initialization.

KVM, in contrast, uses the standard Linux scheduler, memory management and other services. This allows the KVM developers to concentrate on virtualization, building on the core kernel instead of replacing it.

QEMU is a user­space emulator. It is a fairly amazing project, emulating a variety of guest processors on several host processors, with fairly decent performance. However, the user­space architecture does not allow it to approach native speeds without a kernel accelerator. KVM recognizes the utility of QEMU by using it for I/O hardware emulation.


KVM vs Existing Hypervisors :

KVM

KVM

KVM


Limitations of KVM virtualiation:


• Currently, KVM supports only Intel and AMD virtualization, whereas Xen supports IBM
• PowerPC and Itanium as well. SMP support for hosts is lacking in the current release.
• Performance tuning.


However, KVM already is further ahead than other hypervisor solutions in some areas and surely will catch up in other areas in the future. KVM is the best technology going forward for open source virtualization.

With the introduction of KVM into the Linux kernel, future Linux distributions will have built­in support for virtualization, giving them an edge over other operating systems. There will be no need for any dual­boot installation in the future, because all the applications you require could be run directly from the Linux desktop. KVM is just one more of the many existing open­source hypervisors, reaffirming that open source has been instrumental to the progress of virtualization technology.

The above is a very rough outline of KVM Virtualization, and if you have any questions, we would be happy to talk to you! :)

Disclosure: I am a real user, and this review is based on my own experience and opinions.


3 Comments

Picture 356 1369034428
tina5gigaReal UserTOP 10LEADERBOARD

What could businesses ever do without open source programs? This is one of the many free programs that let businesses and individuals appreciate the role of open source programs. Free does not necessarily mean ineffective. Very clear and detailed review here on KVM. Excellent!

Like(1)04 August 13
Picture 884 1351769180
kapilmalik1983Real UserTOP REVIEWER

Loved this post!! however, I would like to understand can we prefer KVM over ESXi? What features does it have over VMWare virtualization?

Like(0)11 August 13
Anonymous avatar x30 9b84f7cf7b8e252123185ab3ccf62e1988e25e7cfbb00e1ffd48a52a5c4bc479

The CLI on ESXi only can be executed from a windows PC (if you use the free ESXi). The other option is very, very expensive compared with KVM. This is a major reason why I prefer KVM over VMWare. The support of scripting in ESXi free is very limited, in the other hand, KVM works in a normal linux distribution, so, you have all the power of scripting to do what ever you like.

Like(0)13 October 14
Why do you like it?