The Clouding platform uses the KVM hypervisor for all cloud servers.
Currently, KVM is considered the best hypervisor and is also one of the most used in public clouds, such as Clouding.
There are other virtualization systems (such as OpenVZ or Virtuozzo), but they do not perform authentic hardware virtualization, since they are more similar to containers - such as Docker.
Container systems like OpenVZ
There are different ways to virtualize operating systems on a server, such as containers.
Among the most common container systems are options such as: OpenVZ or Virtuozzo, Linux LXC containers, or more modern options such as Docker. In any case, most of these technologies use the same Linux kernel extensions.
Container systems do not really simulate hardware, but instead use a partitioning system that exists in the Linux kernel to separate an installation from one operating system to another.
All containers work on the same Kernel - that is why, for example, it is not possible to load kernel modules into just one container. This has some advantages but also few drawbacks.
The main advantage is density. By sharing all the same kernel containers, it is possible to use duplication techniques in the memory of the host computer. So, if, for example, two containers load the same library - let's imagine, an extension of Apache -, it's only loaded once in the physical memory of the host computer, accessing both containers.
But this main advantage is also its main disadvantage. By sharing all hypervisors in the same kernel, an attack on a container can be extended to the physical equipment (host) and all containers. Also, it's not possible to have different operating systems, since they all use the same kernel.
It's also very difficult to correctly separate the resources assigned to each server, since a container is not a single process on the physical computer (host), but all the processes that it executes.
However, in the vast majority of cases, 100% of the RAM allocated to each server is not made when working with containers. Being one of the inherent advantages of this technology, RAM sharing in some cases is abused to reduce costs and that affects the quality of service.
Therefore, we could define these virtualization systems (OpenVZ and the like), as a cheaper alternative to authentic cloud servers.
Hardware Virtualization (KVM, ESXi and Xen in HVM mode)
We also have systems of hypervisors that perform real hardware virtualization.
Currently, one of the most popular ones that has been established as a standard is KVM (Kernel Virtualization Module).
KVM uses kernel extensions in Linux, to perform a virtualization emulating real hardware, with performance virtually equal to that of the physical equipment (host).
When virtualizing hardware, KVM presents to the virtual server (guest) hardware like the one that would be found on a physical computer. In this way, any operating system can function normally on a virtual server based on KVM.
When performing a real hardware emulation, each virtualized server has its own hardware, BIOS and kernel. That way, memory space is not shared between serversand each gone has memory space completely isolated from the rest of virtualized servers on the same physical server.
In cloud environments, hardware virtualization is always used, unlike in low-cost VPS Servers, where OpenVZ or the like is still used due to its higher density, lower cost and greater capacity to sell resources.
KVM with VirtIO (Paravirtualized Drivers)
At Clouding we use KVM with VirtIO. VirtIO is a set of paravirtualized drivers, which offer greater performance, since they are drivers specially designed for virtualization environments.
For example, the network card of a virtual server:
In the case of using a normal virtualized hardware - without VirtIO - many tasks are duplicated, since the virtual server (guest) performs many unnecessary actions that the physical server (host) will then perform again.
But if we use VirtIO, the virtual network card hardly performs any actions, since it simply transmits the data to the physical network card of the host computer. This simplified transmission greatly increases performance, since instead of sending the data in a format suitable for transmission to a physical network, they are sent so that the physical equipment can receive them at high speed and transmit them to the physical network.
This type of drivers is used for network access and disk access, since this is where they offer the most performance.
Advantages of KVM in Clouding
At Clouding we are committed to performance and offering you the best cloud platform on the market. That's why we use KVM as a hypervisor for all the services we offer.
Using KVM we can offer you the best performance, maximum security and stability.