Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I would like to play around with Xen with the intention of eventually running a bunch of different services on separate virtual machines (partly just because I can), and have the possibility of trying things like clusters and such. I've decided to use Xen over KVM (simply because KVM doesn't seem as feature-complete just yet, I think I'll try it sometime next year) and over VMWare Server ESXi (primarily because Xen looks more interesting, and also has more features).

Now, looking at the distros that can be used as a dom0, I've narrowed it down to 2 choices: CentOS 5 and OpenSolaris.

CentOS has an advantage in the setup seems like it would be much simpler (and looks better documented), and I have experience with Fedora, which should (hopefully) transition over.

On the other hand, OpenSolaris has ZFS and Project Crossbow, both of which are appealing to me. (ZFS for the advantages over ext(3|4), Project Crossbow for the interesting virtual network features, which may be something useful with all the VMs.) However, I have no experience whatsoever with OpenSolaris, so there would be a steeper learning curve, but I'm willing to learn.

At this point, I'm leaning towards running CentOS as the dom0, with OpenSolaris as one of the domUs. (I can always re-build the system with OpenSolaris as the dom0 anyway, I guess.)

Have I overlooked any gotchas, or is my reasoning sound?

Clarification: Specifically, what I'm looking for are any particular (dis)advantages of using one OS for the dom0 over the other.

For example, restating the above, CentOS has the advantages of: + being related to a system I know (Fedora vs Solaris) + Good documentation with regards to installing Xen

While OpenSolaris has: + ZFS, which seems to be an excellent improvement over what ext3 or ext4 offer (I'm not going to use btrfs yet.) + Project Crossbow, which may or may not be useful when it comes to setting up the network interfaces that each VM will use.

(Thanks to TrueDuality for adding the 'dom0' tag. Apparently as a new user, I can't create new tags.)

share|improve this question
    
I would love to help you, I do have a fair amount of experience with Xen on CentOS and it is quite easy to setup (yum install xen kernel-xen and reboot). However I have no experience with OpenSolaris. My personal recommendation would be to learn Xen on a familiar platform and then try out OpenSolaris if you feel you can get more out of it. Also what features do you feel are missing from KVM? At this point I feel that Xen is more 'feature-incomplete' despite it being older. It is also not part of the mainline kernel because the code isn't friendly towards some of the other subsystems. –  TrueDuality Dec 3 '09 at 16:57
    
Also I added the tag for you :) –  TrueDuality Dec 3 '09 at 16:57
    
Thanks for adding the tag. :) Thinking about it, using the term 'feature-incomplete' is wrong. KVM just doesn't seem as mature, if that makes any sense. I was reading about how updating to a new version of the qcow2 image format boosts performance by a significant margin. It's definitely good to get a performance boost, but to have it now likely means there's room for a lot more. And significant changes usually come with associated changes in architecture, or BIG changes. And I'd like to avoid major changes at once, which is partly why I've decided CentOS looks good. –  kyl191 Dec 3 '09 at 17:15
    
Also, before someone picks on the qcow2 example, yes, I know, using files for storing disk images is slow on Xen too. (I'm planning on using LVM to manage disk allocation for the individual VMs anyway.) It was just the first example I could think about off the top of my head. Like I said, if I was doing this next year, KVM would probably be my choice, since Redhat among others has thrown their weight behind it, which would likely mean significant improvements are going to happen. –  kyl191 Dec 3 '09 at 17:18
    
OpenSolaris has improved considerably, but is still not as "polished" as Centos. –  Joe Internet Dec 3 '09 at 19:46

4 Answers 4

up vote 1 down vote accepted

You may also want to consider Citrix (XenSource) XenServer. It provides a self-contained dom0 similar to ESXi, and with an easier interface than Xen on CentOS.

Particularly if you're just starting to venture into Virtualization, XenServer can be a great choice. Particularly if you intend to run Windows on any of the guests, XenServer has been a smoother experience for me (compared to Xen in CentOS/RHEL 5 and to KVM on Ubuntu and CentoOS).

XenServer is also free, which makes it an excellent choice to use for Proof of Concepts (or even production, paid support is available if needed, too).

Advantages over the other two options:

  • Self Contained, low administration overhead
  • Small learning curve compared to manual virtualization setup
  • Commercial support available if needed
  • Better support for Windows guest VMs
  • Good Documentation
  • VM Management Console for managing VMs (XenCenter)
  • Faster Development cycle (Much/most of the Xen development will be rolled out in new XenServer releases before they make it into a CentOS or OpenSolaris release)

Disadvantages:

  • More of a black-box solution (less ability to customize/change dom0, although it is a Linux kernel and does allow console/ssh access, so you can make changes if you want)
  • No ZFS support
  • VM Management Console (XenCenter) is a Windows Application
share|improve this answer
    
XenServer looks interesting. I originally bypassed it because I saw most people using CentOS or OpenSolaris. I'll look into this - only concern is hardware support - CentOS has drivers for everything, and OpenSolaris is just missing video drivers. Thanks! –  kyl191 Dec 4 '09 at 4:12

I haven't experienced recently with Xen, however I believe ZFS alone should be sufficient to select OpenSolaris over CentOS as dom0. Having ZFS volumes as root disks for your domUs will allow you to have "for almost free" many snapshots of your environments, revert back when something goes wrong, clone previous versions should you need to compare them or want to duplicate a machine. Deduplication that was just integrated in the last OpenSolaris dev build should also improve this point.

share|improve this answer
    
Hmm. I know I can do snapshots with LVM, and for duplicating a machine I'd want to use xm-copy rather than running off a snapshot. But the deduplication is interesting, particularly where I'd likely be running the same OS in most of the VMs. I think at this point I should really try OpenSolaris. Thanks! =) –  kyl191 Dec 5 '09 at 1:59

The answer is quite simple: If you need the features OpenSolaris offers you, then start learning OpenSolaris and use XEN on it. If you don't, stick with CentOS 5.

In defense of ESXi, it is actually pretty solid, but it can only be used in development environments if memory serves me right, while XEN can be used anywhere, so be sure to check licenses of your hypervisor system of choice.

share|improve this answer
    
Yes, that's what I was planning. I was more wondering if there were any particular advantages of choosing CentOS over OpenSolaris or vice versa. I think I'll clarify the question to make this more explicit. Nevertheless, thanks for the support. =) –  kyl191 Dec 3 '09 at 17:31

Both are great choices but if you want ZFS or if you want to virtualize OpenSolaris as a guest then there are advantages in using Solaris as the host. Solaris has altered the virt tools so that Solaris is supported by them rather than having to do all of the configuration by hand like you will with using Linux as the base. Either will work though.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.