17 Replies

The software that is installed on the server hardware is the Xen Hypervisor (XenServer). This is the Linux OS you refer to. There is also a management software to be installed on a second server or desktop, XenCenter. It is installed onto a system running an operating system as it is an application.

ESXi is a bare metal hypervisor, like XenServer, but requires another piece of software to adequately manage it. With the free XenServer system, I believe you get both XenServer and XenCenter.

1. Xen is the virtualization layer. It deals with the complexities of providing a virtual x86 platforms for operating systems to run. In order for the Xen software to work it has to be able to access other resource such as storage, network adapter, etc and rather than reinventing the wheel, it uses an existing OS such as Linux to achieve this. The host operating system from which Xen runs has privilege access to the hardware and with all the guest VMs having unprivileged access. The host OS acts like a proxy for these Guest Machines.

This is known as paravirtualization. This method of virtualisation requires the assistance of special CPU technology called VT and AMD-V. Also, the operating systems that are going to run on Xen needs to be Virtualization aware.

In essence, VMWARE is no different to Xen. VMWARE also makes use of a Linux OS called RedHat and now Busybox for ESXi to boot the physical server. VMWARE use binary translation instead of paravirtualization.

2. I would recommend that you go for Citrix XenServer unless you are very experience Linux person. The Citrix Xenserver is a pre-package installable OS which you can easily install on any compatible hardware. It also comes with graphical management tools that you can use to configure your Xenserver.

If you do decide to go with the pure Xen then I recommend CentOS as the base operating system. Scott Alan Miller is the best person to speak to about this.

3. Xen will run on pretty much any hardware that Linux runs on but the processor needs to support VT or AMD-V. I don't believe on skimping on hardware when running production systems on virtual platforms. Get lots of RAM and storage!

I'm looking at possibly replacing our windows 2008 x64 server with VMware server with Xen. I have a few questions about Xen.

1. How is it that you "install" Xen on a linux OS if it is a hypervisor product?

VS

Vmware ESXi that comes as an installable OS.

2. what base OS do you use for Xen.

3. Is Xen very hardware sensitive, or will it basically run on anything that can run the base OS?

1: That is a misnomer, you actually install Xen UNDER the operating system and you switch out the kernel in use so that it runs on top of Xen. You don't install Xen on top of an OS.

1b: VMWare ESX has a different common installer method but is actually installing almost identically under the hood. The difference between ESX and Xen is that VMWare packages the whole thing as ESX and makes it look like ESX is installing but it installs Red Hat Linux on top of it. Installing Xen from Red Hat makes the whole thing look like RH Linux is installing but does the EXACT same process with different messages to the end user.

2. You can use any OS that can be paravirtualized on Xen. Linux is the most common since Red Hat and Novell provide a fully supported version of Xen. Ubuntu/Canonical should do this as well. Plus you can use other options like OpenSolaris.

3. Xen has the same hardware requirements as any hypervisor - it requires x64 hardware with hardware virtualization extensions to run fully virtualized guests. Unles other hypervisors, Xen will fall back to pure paravirtualization mode on "unsupported" hardware allowing you to virutaulize "Xen aware" guests on any hardware (x86/x64).

The software that is installed on the server hardware is the Xen Hypervisor (XenServer). This is the Linux OS you refer to. There is also a management software to be installed on a second server or desktop, XenCenter. It is installed onto a system running an operating system as it is an application.

ESXi is a bare metal hypervisor, like XenServer, but requires another piece of software to adequately manage it. With the free XenServer system, I believe you get both XenServer and XenCenter.

2. I would recommend that you go for Citrix XenServer unless you are very experience Linux person. The Citrix Xenserver is a pre-package installable OS which you can easily install on any compatible hardware. It also comes with graphical management tools that you can use to configure your Xenserver.

As much as I love Xen, I agree with Michael that unless you are a Linux/UNIX person, XenServer is going to be a far better bet for you for virtualizing just Windows. It isn't a performance or features question but simply one of the control environment. Xen expects you to manage it completely from a command line which is only available, at this time, on UNIX. So you will have a rather steep learning curve to get up and running on something rather simple.

This person is a verified professional.

This is a question about Xen, XenServer is based on Xen but IS NOT XEN. XenServer is a commercial product from Citrix and very different from Xen. XenCenter is only for XenServer, not Xen.

Actually...

The Xen project was founded by XenSource (I had originally looked into virtualization when XenSource ran the project). The original “Commercial” products being named XenExpress, XenServer and XenEnterprise. XenSource was then acquired by Citrix who rebranded them and eventually eliminated the bottom two “rungs” altogether changing the top level product to XenServer and giving it away just like ESXi.

XenServer is Citrix’s implementation of Xen. Xen is to XenServer what Fedora is to Red Hat. XenServer is implemented just like any other Xen implementation using a customized Linux OS on top of their customized Xen kernel.

To continue the OSS side of things the project then moved from xensource.org to xen.org. The Xen.org project is managed by the Xen Advisory Board (XenAB) and headed up by Citrix. Even the xen.org website references Citrix copyright and is hosted by Citrix.

Yes, XenServer uses Xen under the hood, but it is modified and isn't Xen. Xen is a proper name refering to the Xen implementation of itself. XenServer, as well as MANY other commercial virtualization offerings including ones from Sun, Oracle, VI and others, is based upon Xen but modified and includes proprietary changes that don't exist in Xen and lack some of the flexibility and options that exist in Xen (obvious, modifying the code being one.)

It is rather like how MS SQL Server is based on Sybase. Yes, SQL Server used to be Sybase under the hood but they are different products and you can't refer to SQL Server as Sybase even though there is some shared code and many similarities.

The Fedora / Red Hat reference is not exactly accurate. Fedora and Red Hat are both open source, for one thing. Fedora is not a production ready server, it is a demo of new technologies designed to provide a research platform for Red Hat. Xen itself is a production ready hypervisor. Fedora has no commercial support (at least not from a vendor that supplies the code). Xen has several commercial vendor support options including Red Hat, Novell and Canonical. Xen is available from several vendors in its original form (RH, Novell, Canonical. etc.) Fedora only comes from Red Hat. The Fedora/RH relationship is not one of open source vs. commercial release, it is test platform vs. produciton. Xen vs. XenServer is one of open source vs. commercial implementation. So the differences are pretty significant.

It is absolutely true that Xen and XenServer (and xVM and others) are nearly identical but there are differences and referring to them all as the Xen family or Xen derived products is a good option. But calling them Xen is not an option as Xen is a very specific implementation of the code.

This person is a verified professional.

Considering the Xen project is ran by Citrix realistically they are the ones running the core. They are, after all, the head of the Xen AB which makes all other implementations custom. Other vendors and *nix distros add it to their product, but they, themselves, are not the product managers of it. They contribute to Citrix’s (formerly XenSource’s) project.

The Fed/Red Hat analogy does actually apply because just as the Fedora Project itself doesn’t provide support, neither does the Xen project. You have to seek support through your Commercial distro provider (Red Hat/Citrix) or other 3rd party. Red Hat is the commercial side of the house from Fedora/CentOS just as Citrix is the commerical side of the Xen project (again they run it). To use the “Free” version of RH you have to go with CentOS. If you want dyed in the wool “Official Red Hat” with support, see their pricing or a reseller. Citrix simply provides their “free” distro straight out of the parent company and you pay extra for the additional features.

Citrix (being the holder of the code) also disagrees with the stance that they aren’t using the same core as the project. From their (Citrix’s) FAQ:

Is the Xen version used in your commercial products the same as the open source version of Xen?

Yes, our commercial products use the same Xen core from the open source project. The commercial products expose the stable subset of features found in the Xen open source project in an easy to install and use offering. We also include a large number of value-added components not found in open source Xen. Examples are the GUI based management tools, the easy installer system, and the high speed Windows drivers.

That being said, every distro is going to tweak the underlying code to work better with their feature sub-set. That’s the nature of OSS. Citrix provides additional management features and support (through their “Essentials” products) outside of the core just as any other vendor does, but they’re still running the core. So I still have to disagree with that position because all other vendors branch off of what is explicitly Citrix’s project. It may be semantics but that doesn’t change the origin.

Are you sure that Red Hat, Novell and Canonical are modifying Xen in some way? My understanding is that they are not modifying it whatsoever except to potentially provide some back-ported bug fixes when necessarily if the original project does not support it. I am pretty confident that they are not modifying it like Citrix is before making XenServer.

But I cannot agree with any analogy of Fedora/Red Hat. They are simply not different versions of the same product. Fedora is not simply "modified" to make Red Hat. They are different, but related, products. Xen and XenServer are much more closely related.

Citrix' explanation of their use of Xen under the hood, but modified, is exactly what I mean by the "Xen family" - almost exactly as Red Hat, Novell, and others use Linux under the hood and are the "Linux family" of operating systems. The difference is that there is no reference implementation of Linux called Linux which is widely used. There are only the distros. But Xen is its own product and then there are commercial implementations that are modified and made available. But Xen can be installed in supported and unsupported, completely OSS versions as well without using the commercial version.

It is critical that the community maintain the language used to discuss these products or confusion ensues. There is no advantage to calling XenServer Xen except to undermine the Xen project itself and the Xen implementations that are available that are true Xen as made available by that project. This is, of course, Citrix' goal to remain true to the OSS community but allow others to simply wipe out knowledge of its existance by using the name of the OSS project in additional to the commercial name making the OSS project effectively invisible. Look arouind the SW community and since there is such a large number of people using Xen to mean XenServer they instantly assume that anyone running Xen itself is running XenServer which is simply not true.

Also, if you call XenServer Xen why would you also not call xVM or other Xen-based products Xen that use the underlying code in exactly the same manner? It is critical for any discussion of Xen that we use the terms accurately or we are using confusion to undermine the Xen marketplace.

:( I wish that it had some name that couldn't overlap with anything else... but in a way it does. Xen only refers that one thing. If we call it Xen Classic then everyone will either just keep using Xen to refer to anything or Xen Classic to refer to XenServer.

No good answer. Citrix using XenApp, XenDesktop, XenServer as their names is causing a level of confusing as to all of their products that is really problematic.

This person is a verified professional.

:( I wish that it had some name that couldn't overlap with anything else... but in a way it does. Xen only refers that one thing. If we call it Xen Classic then everyone will either just keep using Xen to refer to anything or Xen Classic to refer to XenServer.

No good answer. Citrix using XenApp, XenDesktop, XenServer as their names is causing a level of confusing as to all of their products that is really problematic.

I totally agree. As businesses embrace OSS we’ll see these lines blur even further.

It's always a tough distinction anytime there are overlapping projects like this. This one is pretty extreme in the use of the names which is likely caused by the overall lack of familiarity with the OSS project and the high popularity of the commercial project in SMB circles.

Since SMBs often think that everyone talking about Xen is talking about XenServer they then think that Amazon, Rackspace, et al. are running the Citrix commercial project instead of the OSS project that they might not even realize exists until they have so integrated the term into their daily lives that they don't have anyway to separate them anymore.

We have the same problem with cloud computing. Almost all people use the term to mean something that overlaps with SaaS and leave no word to talk about actual cloud computing which is a unique thing with no term for it except for cloud computing.

had to read all the posts 3 times just to come to the realization that I soon as I figure out how the namings systems work, its likely to have changed again.

Michael5985, thanks for the link on the different types of Virtualisation. learned a lot from it, but I assume since its produced by VMware, it would be biased towards their solutions

Ok based on the advice, I'm downloading Citrix Xenserver using its prepackaged ISO and the Linux Guest support ISO. My Linux Skills are ok for the basics, but if you ask me to"Grep | thingy -something --makesnosenseinhelpfile" then you'll see me running.

The initial implimentation will be to replace the software on our existing Vmware server box (glorified Desktop hardware, Quad Core with 8GB RAM). We are serving about 20 people with various small applcations. We have a seperate sever working as a file and mail server that is not virtualized. We like Virtualizing as much as we can due to the following benefits:

This person is a verified professional.

Ferdie, I really don't think XenServer is a solution you put in place to resolve performance issues. Remember, virtualization is taking advantage of the fact that most servers are highly over powered for what they're doing. So why not use those extra CPU cycles to run another Windows instance?

XenServer does support NIC bonding so if you bond 2 or 3 NIC's together you MIGHT be able to improve overall throughput, but I'm pretty skeptical of what kind of real world results you would see.

Disk subsystem would have to be considered somewhat slower, so you would have to look at some of the more advanced disk strategies XenServer offers (I'm pretty new to the product so can't help there). Try Googling for a XenServer and SQL database best practices document, there might be something out there that can head you in the right direction.