This is a question that a lot of people who are to VPS might ask. The difference in virtualization types. Since I’m not an expert myself but more of a self-learned hobbyist when it came to server still, i think i might be able to explain in layman’s terms what are the differences between virtualization types, so I’m gonna try.
KVM, short for Kernel-Based Virtual Machine, is probably the most preferred type of virtualization available. The reason for this is because KVM allows for better isolation, since every virtualized user on the server is using their own kernel, and therefore it allows for full Virtualization. There’s a myth associated with KVM though, in that it cannot be oversold. This is no longer true. KVM still allows for over-provisioning, but the emphasis with KVM is that the amount of RAM and disk associated with your account is dedicated, so again, KVM allows for better assurance that you’re getting your money’s worth of hardware.
OpenVZ or Open Virtuozzo is a type of virtualization based on a container. What this means is basically you’re sharing not only resources but also kernel. You cannot customize your kernel in OpenVZ, and this in 2017 has become in our opinion quite a problem because many providers who offer OpenVZ still only support OpenVZ 6, with kernel based on RHEL 6, which is Linux 2.6.32. Seeing as how the latest LTS (Long Term Release) Linux Kernel is now already on version 4.9, well, it’s not ideal. Another thing with OpenVZ is that you’re sharing RAM and disk with all the users on the server. This is how you will see a lot of providers attaching huge disk size and RAM allocation to their OpenVZ package, in the hope that the majority of users won’t use their disk to the fullest. This, however, can also be a positive since the providers can sell a lot more VPS plans on a single server.
LXC, or simply Linux Containers, is actually pretty similar to OpenVZ in that it’s not kernel-based, but a container based virtualization. The good thing about LXC compared to OpenVZ is that it can run vanilla Linux kernel instead of a patched kernel provided by OpenVZ developers. This way, it receives faster security update. It’s also relatively still in very active development, at least compared to OpenVZ 6 that are being used on many VPS providers.