I think I've made the decision that at some point in the next few months the xen-hosting.org setup I maintain will be going away, and will be replaced with kvm-hosting(.org).
The only issue I need to ponder is handling the migration with the minimum downtime.
The plan would probably involve upgrading the host machine to Lenny, then installing KVM and fiddling with filesystems until the guests boot. I suspect it wouldn't be a huge job, but there are a few issues that will need to be planned.
Most notably I expect that most of the current guests don't have grub installed, etc, so we'd be in the position to use an external kernel + initrd. That's not an insurmountable problem, but I know that externally supplied kernels have caused me problem in the past with KVM.
Perhaps the actual plan would be to wait until September at which point I could order a new machine and cancel the current one. That would mean another increase in spec and the migration process would be a lot simpler - instead of everybody being offline for a few hours I could migrate guests individually from the old host to the new.
Anyway decisions decisions ..
ObFilm: Buffy - But we'll pretend the TV series counts as a film, kthxbye?
Xen is slowly getting integrated these days, but until it does fully then its a real challenge to get it up and running on "current" hardware.
The lack of hardware support is at least half of the motivation for seeking alternatives at the moment amongst people I've spoken to.
As for KVM stability, well so far I've not had any issues. I'm running it quite happily at home & work.
Its pretty simple to get up and running, and having the console running inside tscreen makes control easy - in a very similar fashion to xen-shell.
(I do have a modified version of xen-shell which works for KVM, but it is slightly less featureful. It basically has "start", "stop", "console", and "reboot". I'll need to fix that up as part of the migration too.)
Xen is here, and it works well enough.
The reason that a lot of people are abandonining it is because of the relative complexity and the fact that its integration into the Linux kernel has been glacial (at best).
When you're buying new hardware for use as virtualization hosts you do not want to be forced to run old kernels.
As for KVM, much like lguest, it just works. There are no funky python layers, you're just dealing with a single process and a relatively simple kernel module.
KVM does support live migration these days - over an SSH pipe at least. (I'm pretty sure the migration options of KVM exceed those of Xen, but I admit I've only toyed with migrations, and mostly do them off-line for my own sanity.)
Other advanced features? You'd have to be more specific, me? I just care that I can get a guest up and running with a fake-disk, and some fake-nics. More than that I don't much care. The wikipedia comparison page probably covers most of the highlights.
Please, let us know how well this project goes by blogging about it, just like you've done already :-)
I'am also interested in using KVM in production, but couldn't find too much info on people doing that already.
I've a couple of servers running Xen and even if it's running quite well, I don't feel it's the right answer in the long term judging byt what I'm seeing currently.
Knowing success stories is half the way for me to get the confidence that I need to go ahead with my migration plans :-)
Regards,
I didn't consider openvz at all - The limitation of everybody sharing a single kernel, and the resource-limitation ideas just don't map well for my personal use.
Thanks for the tip Bill.
The failure to exit with external kernel was exactly the problem I saw - even when fiddling with the code and adding the "-no-reboot" flags.
That problem went away when I :
I suspect the latter was the solution rather than the former, but I've not retested it recently.
Bill
What's the performance like with NPT and IOMMU (is this even out yet)?
The Xen approach is limited, but performance is pretty good. I'm wondering whether 2nd gen hardware virtualisation closes the gap.
--
Charles Darke
http://digitalconsumption.com
I've been considering this myself, I've been a fairly long user of Xen (since 2.0) - but the progress towards getting it in the mainline kernel is just too slow. The main reason I've stuck with Xen so far is due to the lack of VT/SVM support from the cheap servers I've rented, making paravirtualisation the only option. However now I can get servers with SVM support, KVM looks like an appealing option.
I'm not quite satisfied at the maturity of KVM just yet though. I'll probably reconsider my position once RHEL/CentOS 6.0 is released, as that's my preferred distribution for running host servers - even though I tend to run Debian inside most of the virtual machines!
If decent paravirtual support was included about a year ago along with good distribution support for installing virtual machines then it would've been far more successful, but sadly everything Xen related still feels like a hack for different distributions.
Enzo - I suggest you learn more about Xen.