We have a spare Integrity blade (2x Tukwila quad-core + 16Gb RAM) laying around which I would like to use has a Virtual Host for a couple of Linux VMs. I am having some concerns finding the best solutions for our situation (if a solution is possible at all?). Here's what I'm dealing with:
- XEN looks well supported on Itanium, but I'm not sure if I would be able to run x86_64 guests on ia64+XEN.
- I guess KVM would be able to support emulation for x86_64 through qemu, but support for ia64 does not seem to be well supported.
- All guests are going to be RedHat 5.5 based and HAVE to be on x86_64 architecture.
- I don't care about the host's distribution (ideally CentOS or Debian), but I would prefer it not being Red Hat (since I don't want to deal with the trouble of registering only for 1 ia64 licence).
- Red Hat drops support for ia64 and Xen in version 6
- Debian seems well supported on ia64 but I can't seem to find kvm or xen packages for it
- Will CentOS also drop support for ia64 and Xen?
So, to sum up my question, how would you guys go about virtualising x86_64 guests on an Itanium server?
I don't think you would be happy with existing hypervisors. The way they work, guest code is mostly executed natively on the hardware platforms except for special cases where this would break integrity - where the calls are intercepted and rewritten. For x64 binaries to execute on an Itanium platform, you would need full binary translation (emulation), which is very expensive performance-wise and typically not implemented in the hypervisors.
While it is likely that there is some software doing the x64 emulation for Itanium platforms, it's probably not worth the trouble - the performance would be disapointing as was the case with the first Itanium generation IA-32 emulation layer.
you CAN emulate x64 on itanium thorough on the qemu-side of the kvm solution but it will be fairly slow (perhaps 10% of native since qemu is pretty well optimized)
You can't virtualise x64 (x86-64) guests on Itanium.
If you virtualise an Itanium server you get Itanium virtual machines. HP have a software called Integrity VM that allows you to virtualise on Itanium. Xen probably supports Itanium too. You can then run HP-UX, Linux and Windows Server in those virtual machines.
But for x64 emulation, you need emulation software. I don't know if such software is easily available. It does exist, IBM's QuickTransit supports x64 emulation on Itanium, but IBM don't sell it any more.
It's not very performant anyway. Emulation is really useful for compatibility if you have a need to use the other architecture. So if you have an application for architecture A and need to run applications for architecture B, emulating B on A or vice versa makes sense. But if you want support for architecture B, running an emulator on archicture A is just not a good idea.