KVM vs. LXC: Which Virtualisation Is Better for Your Business?
If you are considering which virtualisation server to choose but are not familiar with the differences between the technologies, this article might be of help. You will get to know which basic virtualisation types exist and what the difference between KVM and LXC virtualisation, which are generally used for VPS servers in MasterDC, is.
It is considerably hard to understand all parameters and technical details of VPS. Which is why we decided to explain how the virtualisation itself works, whilst focusing on KVM and LXC that are commonly used in Master DC for virtualisation servers with Linux OS. Before we start with the technologies concerned, first let’s discuss what virtualisation types actually exist and what their general dis/advantages are.
There exist several sorts of virtualisation that differ particularly in their extent and level on which the virtualisation is conducted, which has a fundamental impact on the VPS features such as scalability, and/or the OS compatibility. To serve the purpose of this article, it is sufficient to introduce the two basic types – full virtualisation and the virtualisation on the OS level. Obviously there exist many other partial virtualisations which virtualise only some of the hardware instances (memory, processor, network card), however these are not the subject of this article.
Full or in other words Native Virtualisation is a virtualisation in the true sense of the word. Its pivotal component is a hypervisor which monitors and controls the VS running straight on the hardware level. You might imagine it as a main arbiter who assigns performance and physical server memory to individual virtual servers, whilst, at the same time, separating the servers from each other.
OS is located in the level above the hypervisor which enables to launch various unmodified OSs on individual virtualisation machines, making it one of the main advantages of the full virtualisation. On the other, though, there are quite high overhead costs. To run the hypervisor itself might consume up to 20% of the physical server performance. A typical example of full virtualisation are VMware solutions.
The virtualisation on the OS level, which creates so-called containers, also makes it possible to run several separated virtual machines on one physical sever. The main difference is that these virtual machines run on one shared OS core, so that the OS of individual virtual machines (containers) must have the same core. The application for creating virtual machines is thus above the level with the OS.
Virtualisation on the OS level is advantageous since it uses performance and physical server capacity more efficiently in comparison with full virtualisation. The applications then, similarly as hypervisor, assign quotas on the disk, memory, and prioritises processing time. Another important advantage is an option to isolate the container and subsequently deploy it in different environments. This virtualisation type includes OpenVZ, Docker and LXC.
Leading Software Companies Are Behind the KVM Virtualisation
KVM hypervisor was originally developed by Israeli startup Qumranet. In Sep 2008 though, RedHat – the world number one in Linux solutions for commercial sphere – bought it for 107 million dollars. KVM abbreviation means Kernel-Based Virtual Machine, which might be loosely translated as ‘virtualisation on the core level’. The title thus refers to a virtualisation mechanism which KVM uses – a module, which makes the Linux core work as a hypervisor.
On the one hand it is necessary having had the OS installed, on the other hand this OS itself works as a hypervisor. Different sources thus do not always agree in what virtualisation type is going on. It is mostly claimed that KVM corresponds to full virtualisation since installed core of the original OS behaves like a hypervisor. It conforms to one of the key features of full virtualisation, for on the KVM it is possible to launch unmodified OSs.
KVM, as a free software, might be used on different Linux distributions, such as CentOS, Ubunt and Debian. If you want to virtualise physical server of Windows OS, it is necessary to choose a different hypervisor.
Configure Your VPS as Required
V Masteru víme, že na každém detailu záleží, a proto nabízíme možnost upravit si VPS přesně podle vašich potřeb. Chtěli byste větší RAM? Více CPU? Nebo vám vyhovuje jiný operační systém? V konfigurátoru si zvolíte vyhovující parametry na míru svému projektu.
Docker Support, Security and Other KVM Virtualisation Benefits
One of the main advantages of KVM virtualisation is the fact that you easily create containers for the project where necessary so that they are separated from each other. VPS with the Docker support is an ideal solution for developers since it facilitates high portability and easier scaling. More about the Docker you may learn in our article about how the containers work and why to want them.
Since KVM is a part of the Linux core, it can change the RAM for individual virtual machines very efficiently, without slowing the already running processes down. Another important feature is a possibility of dynamic migration. This means that individual virtual systems might be shifted without interrupting their activities.
Owing to Linux basics, KVM virtualisation offers a high level of security, which might be, using accessories, enhanced. Besides, SELinux offers encrypting and access control.
Last but not least it is necessary to mention a constant KVM hypervisor adjusting. While in its beginnings it was only compatible with a Linux x86 platform, there are tens of nowadays supported platforms. KVM hypervisor is also thought of as one of the most solid and reliable ones on the market. In this perspective, cooperation with RedHat with other research companies that are concerned with software development, such as IBM, Intel and NetApp, play a vitally important role.
LXC Virtualisation Has Low Overhead Costs
LXC technology virtualises servers on OS level, which why it is called ‘light-weight virtualisation’. Compared to full virtualisation, it saves processor memory and performance, since the whole virtualisation process costs have very low requirements. For this reason, it is possible to create new virtual machines (containers) more easily and faster compared to full virtualisation.
LXC technology, same as KVM, assigns to individual virtual machines system resources of the physical server that is being virtualised. For instance it defines what the operation memory, hard disk size and processor performance of an individual VPS will be. It also takes care of isolation of individual containers. Thus when one of the VPSs threatened or attacked, the other servers will not be influenced. Compared to KVM though, the extent of security is lower, which is given by the character of virtualisation itself. Full virtualisation isolates individual virtual machine in a more complex way than the virtualisation on the OS level.
Another significant disadvantage is that Docker cannot be launched on LXC virtualised servers as this functionality is not officially supported.
An open-source technology Proxmox, which offers intuitive web interface for administration of plentiful servers with LXC and KVM virtualisation, thus makes the administrators’ job easier.
Is it always better to choose the server with virtualisation?
Apparently it depends on the type of the project which the server is intended for. The major advantage of KVM virtualisation is that that individual VPS uses the core of its own Linux distribution and thus does not have to share the OS core of the host server.
Furthermore, if you need to divide VPSs into separated containers (perhaps using Docker), it is better to choose VPS with KVM virtualisation. This function is particularly suitable for app development and testing, and to launch several webs that should be placed in isolated environments.
VPS with LXC virtualisation costs less, but you must put up with the fact that its options are bound to the OS compatibility of the host server. Their use is therefore significantly limited and is more suitable for smaller projects such as web hosting, particularly if you intend to use CMS in order to insert the content (redaction Word Press, Joomla! Or Drupal type). Namely because CMS is compatible with virtualisation technology based on containers.
Choose from a Wide Scale of VPSs
Except for the KVM and LXC, Master also offers VPSs virtualised using Hyper-V technology which virtualises server on the OS level and thus is used exceptionally for Windows. Study a complete offer of our virtualised servers and choose an ideal solution for your project.