Okay, so I've been playing with virtualization over the last few weeks (VMware, Virtual PC, and XEN), and I'm kind of not seeing the point.
Okay, loading up Virtual PC on my machine at home, and installing Win98 so I can play old games is nifty and all (and hey, my motherboard even has hardware support for VMs, which Vitual PC can and does take advantage of...), but the whole server virtualization thing eludes me.
I mean, how is running a bunch of VMs is any less resource intensive than running a bunch of jailed processes (or, chrooted if you're still living in the dark ages :P)? In fact, as far as I can tell, it's MORE resource intensive, since I have to dedicate hard amounts of memory to each VM, where jails just use memory as needed out of the system total. I'm going to be running the same services either way, I don't see less processor cycles used, it's more, actually since that VM's local OS has its own overhead it has to take care of.
Am I missing something here? This looks like a solution looking for a problem. I can see where it could be useful in the same way building a bootable CD/DVD to run an OS off of is useful, except less secure since the VMs disk image can be fucked with, unlike immutable optical media.
EDIT:
So, after chatting with some friends, it seems VMs make things like patching and DR easier, which I can see, and it abstracts HA out to an easier to manage level, which is nice. Still, not going to save the planet moving everything to VMs, and some things still belong on dedicated hardware (which, may mean a single host/guest arrangement if you're hardcore on doing VM everywhere, no matter what).
Okay, loading up Virtual PC on my machine at home, and installing Win98 so I can play old games is nifty and all (and hey, my motherboard even has hardware support for VMs, which Vitual PC can and does take advantage of...), but the whole server virtualization thing eludes me.
I mean, how is running a bunch of VMs is any less resource intensive than running a bunch of jailed processes (or, chrooted if you're still living in the dark ages :P)? In fact, as far as I can tell, it's MORE resource intensive, since I have to dedicate hard amounts of memory to each VM, where jails just use memory as needed out of the system total. I'm going to be running the same services either way, I don't see less processor cycles used, it's more, actually since that VM's local OS has its own overhead it has to take care of.
Am I missing something here? This looks like a solution looking for a problem. I can see where it could be useful in the same way building a bootable CD/DVD to run an OS off of is useful, except less secure since the VMs disk image can be fucked with, unlike immutable optical media.
EDIT:
So, after chatting with some friends, it seems VMs make things like patching and DR easier, which I can see, and it abstracts HA out to an easier to manage level, which is nice. Still, not going to save the planet moving everything to VMs, and some things still belong on dedicated hardware (which, may mean a single host/guest arrangement if you're hardcore on doing VM everywhere, no matter what).
Tags:
From:
VMotion
From:
no subject
Then there's some of our production systems, which experience peak usage at different times of the day. They share physical machines but are distinctly separate server builds with their own runtime installs and configurations (and I think they even have different OSes). Very convenient, and cost effective!
Now, how many times have you downloaded some nifty-seeming gizmo and installed it, only to have it hose your system and refuse to uninstall? Next time, just fire up a VM image, download the gizmo from there and if it hoses anything, just delete that VM image.
Or, how many times have you had difficulty installing something? I attended a training class last year, and as course materials we were all given VM images which contained the software already pre-installed and configured, all of the source code for the labs and examples, as well as the lecture notes. In order to get started on the first day of training, all we had to do was bot up the VM image and we were all set.
From:
no subject
If my services have different peak times, that makes them perfect for sharing space on the same server, each with it's own chroot/jail containing what it needs, and only what it needs, to run and run well.
This is, apparently, not something easily done, if it can be done, in Windows land (for me, our Windows servers exist to serve Windows AD and associated bits to Windows clients, not be internet facing providers of critical services).
I'm well aware of using VMs for developement and test environments, I'm just not seeing the use for production servers, but mostly that's me living in a mindset where I can isolate processes individually without needing to throw a whole (virtual) machine, and the associated resources required, at them to do so.
From:
Re: VMotion
From:
no subject
The other big win is for hosted setups. Team A needs to run shit on your hardware but they want to manage the OS. Well, now they can and they won't have as big an impact on anything or anyone else on the system.
I also have this same thought pattern about blade servers. Everyone things they'll save the world and the tech economy but they're really only great for a few applications.
From:
Re: VMotion
From:
Re: VMotion
From:
Re: VMotion
And at some point, it fails to scale. Virtualisation gets to be really useful not at the "one dual/quad cpu intel box" level but at the Really Fuckoff Big High-Availability Machine level with lots of submachines.
The overhead from running an extra OS is surprisingly low, and it lets you run the exact OS and patchlevel that your particular app requires even if there're twenty different environments needed.
Also, it's more secure. Chroot/jail is not exactly perfect.
From:
no subject
And if a particular service used to be 10-12 usage and is now 10-16 usage and conflicting with another service, why, then you move the virtual disk image file to a different set of hardware and boot it up again. That flexibility is something that no chroot jail will ever have.
From:
no subject
Unless you have very specific needs and your power supply and AC are designed for them, blade servers save a little space and very little power, which means that you'll have to keep empty spaces open to compensate. Might as well just rack regular machines, just like google does.