2005-10-10 06:34 am (UTC)
2005-10-10 07:43 am (UTC)
I'm not claiming Linux is unique in doing virtualization. Virtualization has been going on since the 60's. There's nothing new here but refinement and things finally going mainstream.
We've had VMWare for the longest time, and qemu, recently User Mode Linux, and now Xen.
Microsoft? They bought a product (Virtual PC) and are trying to catch up now. Read this:http://www.theregister.co.uk/2004/09/16/microsoft_virtualserver_analysis/
Microsoft comes in lower on the totem pole. It acquired a product from Connectix, once meant to ship in 2002, and then spent 18 months retooling the code. The original Connectix code was based on the company's Virtual PC software for running multiple OSes on the same desktop, and one can only hope Microsoft moved well away from this low-end software with its server product. Sadly, this doesn't seem to be the case as Microsoft still requires a host operating system to run Virtual Server, while VMware's ESX server uses its own operating system - a feature which makes many of the more complex partitioning functions possible.
In addition, Microsoft only supports one extra OS per processor, while VMware can support up to eight partitions per processor. VMware has tools for clustering virtual machines, adjusting processing power for different software workloads and disaster recovery technology. Microsoft is still working to catch up in all these areas.
So yeah, great ... competition. But so far Xen is the only one I'm really impressed by.
2005-10-10 08:26 am (UTC)
Duuuuddee... I appreciate the debate and all, but, really, I just like to poke fun. I'm not pro-MS at all, but I like to masquerade as anti-Linux occasionally.
Zen cheats. It needs the client OS to be patched (and thus you need a source licence to have a windows client).
Then again, why would I care? Linux top to bottom for me (well, with the ocasional OSX and OpenBSD box), and with out that, virtualization is a nasty hack on x86 (AMD is supposed to be adding instructions to their x86-64 to make it easier).
2005-10-10 09:05 am (UTC)
"Cheating", sure, but like you said -- Linux from top to bottom, so who cares? It's totally worth the extra speed.
Both AMD/Intel are adding in virtualization instructions in upcoming chips, then you can run unported OSes on Xen (Windows, etc)
> Both AMD/Intel are adding in virtualization instructions in upcoming chips, then you can run unported OSes on Xen (Windows, etc)
The client-OS porting has of course always been the downside of Xen...
Well, the problem is there are parts of x86 instruction set that are just a bitch to virtualize, you just about have to patch the client OS for good performance. Xen patches the client, VMWare does some kind of magic, everyone else is pokey.
It doesn't have to be this way. PPC is easy, for example, SheepShaver let you run Mac OS as a client under Be, and there are others out there now, IBM mainframes are designed from the ground up for it, and with support in the x86-64 instruction set, the PC will finally catch up, and it will be easy for Xen to do it without patching or porting.
2005-10-10 04:53 pm (UTC)
Xen's fast as all hell, the management tools are a breeze/polished, can run 10s-100s of VMs on same box, and you can LIVE MIGRATE A MACHINE between hosts ... live! while it's running! 10-60 ms pause.
And it's Free. But it's also the best that I've seen. And with Xen 3.0 and new Vanderpool extensions, VMWare starts to seem like it was "good for its time".
When one OS crashes, does it take down the system?
2005-10-10 07:44 am (UTC)
Never. That's pretty much The definition of virtualization, that that is impossible.
1. How are you migrating the images between work and home? AFAIK Xen live migration only works with shared disks.
2. You using any special magic to deal with the network environment changing during a migration? (Or maybe you NAT the VMs behind Domain-0 and don't care about inbound connections, I dunno.)
2005-10-10 07:52 am (UTC)
1. Initially I was just going to rsync/xdiff/xdelta the root filesystems around and reboot them. But once I get fancier, I'll use DRBD
to create a virtual shared disk between the two sites.
2. mDNSResponder and *.local hostnames, using libnss-mdns for the clients. and/or rinetd (or similar) on the domain 0s, mapping in ports 22 and 80 and whatever else I need.
2005-10-10 10:30 pm (UTC)
'just fork off a new whole operating system whenever you want to run a potentially-dangerous experiment.'
how trivial is it to do this? Is there a copy-on-write filesystem? Playing with VMWare and uml has been pretty painful, in my experience, mainly in terms of dealing with filesystems. That's the main thing I'd fear with Xen (which I haven't tried yet).
Feel free to post as much as you like about this subject, this reader is decidedly curious as to how well it plays out ;)
(...PS: erik - nice Gloomy Bear user icon!)
If you can live migrate a machine to another host (see one of brad's comments above), you could migrate it to the same host, with a different name/id or whatever, and just not stop the original. More likely the migration is written based on fork. ;)
Also check out this xen intro at ibm
. The author sets up a "base" machine and a "test" machine. When he's ready to try the dangerous stuff, he shuts down the base machine, copies the disk image to the test machine, then starts it up. Its not live in that version, but still pretty cool.
Maybe to do it live, you could sync on the live machine, then copy the image file and start up a new machine from the copy.
If UPS ever gets here I'll give it a try.