Why I (Usually) Choose OpenVZ
Posted 24 Nov 2012, 11:28 am in Misc
KVM, Xen, OpenVZ - there's often considerable debate about which virtualization technology is best when looking to purchase a VPS. I'm often asked "Should I get Xen, OpenVZ, or KVM?" There's usually no clear-cut winner, and indeed, depending on what you need a VPS for, any one of the options could be right for you. For me, it usually comes down to balancing price, performance, stability and flexibility.
OpenVZ is, hands down, the cheapest option. With many hosts offering 128MB of guaranteed RAM and plenty of disk space and bandwidth for just $15 per year (or even less!), OpenVZ is an attractive option. It has handled everything I throw at it, from heavy MySQL database usage (albeit on a 512 MB VPS) to a simple web server serving static files to an instance of irssi running in a screen session. It even handles running Google Chrome and Flash Player inside of a VNC session for creating screenshots from on online game without breaking a sweat.
OpenVZ is perfect for most workloads, but if you need to run Windows or BSD, then OpenVZ is definitely not for you - KVM or Xen HVM is going to suit your needs much better, but you're going to be paying a bit of a premium for it. And if you need to run some kind of Java application such as Minecraft or MongoDB, OpenVZ is likely not your best option unless you purchase a VPS with at least 1GB of RAM, running on the 2.6.32 kernel - Xen or KVM is probably a better fit for you.
Some say that OpenVZ isn't stable because of overselling or for any number of other reasons. I say that's a bunch of hogwash. It's simply a matter of finding a capable VPS provider, and there are plenty of them out there. In the coming weeks, I'll be reviewing several VPS hosts and putting together my list of go-to hosts when I need a VPS.
So, should you get a Xen, OpenVZ or KVM VPS? It simply boils down to what you need. If you need Windows, BSD, or anything involving Java, KVM is your best bet. But if you just need a simple Linux VPS to run a web server or database, or just about anything else, OpenVZ will easily get the job done.
concerto49 said: 28 Nov 2012, 10:40 pm · Permalink · Quote
Would be good to add Xen PV in the discussion!
Nick said: 29 Nov 2012, 9:22 am · Permalink · Quote
I left Xen PV out of the discussion because I don't have enough experience with it, really. Xen also seems to be declining in popularity. Once I deal with Xen more than I have, I'll make sure to post an update though.
KuJoe said: 1 Dec 2012, 11:51 pm · Permalink · Quote
Additionally, Xen and KVM are the best choices if you need to have control over your kernel. OpenVZ's shared kernel leaves you at the mercy of your provider but for the vast majority of users, this is not an issue since the most common kernel modules for iptables are enabled by default or can easily be enabled upon request.
Ema said: 17 Dec 2012, 5:19 am · Permalink · Quote
Mark said: 22 Dec 2012, 1:08 am · Permalink · Quote
But it is like driving a manual transmission where hypervisors are better for fat & lazy people who automatics. The main gotchas are:
1) Distros that use upstart SUCK. I used to be an Ubuntu server fanatic but since 10.04 it is useless. It is doubly bad on OpenVZ because upstart is a giant house of cards, and the lack of /dev/console brings the whole mountain of shite crashing down.
2) Memory issues -- poorly designed applications that don't give you control of how they use memory are a big problem. I finally have figured out how to beat Java into submission, but mongodb is still crap.
3) It is inexcusable that OpenVZ still can't use NFS mounted containers.
WeallNulp said: 1 May 2013, 5:27 pm · Permalink · Quote