What is the better virtualization approach?
I'm looking to build a virtualization server to run multiple clients on. The idea is that I want to put several XP, Vista, Win2K, Linux, OS-X, and Solaris-x86 clients out for the testers to use (in non-automated testing) but I don't want to spend the money on all that hardware. I also don't want each tester to have a machine powerful enough to run the Virtual Machines independently. I'm planning on purchasing one machine for them to share.
Clarification added August 30, 2008:
There are some requests to know more, so here goes;
The current plan is to purchase a dual-quad core machine with 32Gb RAM and 1Tb of disk.
We're planning on running 2-4 virtual systems at a crack, mixing the OSs, but on average we'd have 1 Vista, 1 WinXP, 1 Linux and 1 Solaris client OS running at a time. OS-X is an ideal for us, but since everyone here has a Mac of one flavor or another, not having Mac OS-X won't kill us.
Thanks thus far for all the great answers, you are all being very helpful.
Good Answers (4)
Mariano I.
Open Source, Cloud Computing and Desktop Virtualization nerd
Best Answers in: Enterprise Software (1), Computers and Software (1)
I understand that you need to run desktop virtualization. If that is the case, I suggest you to evaluate VDI (Virtual Desktop Infrastructure) solutions.
The best ones are VMware VDI and Citrix XenDesktop. Both are solutions that enables you to create an environment where potentially the desktop OS, applications and data are centralized and every user can access his 'desktop environment' from everywhere with every device type.
Both solutions have a free version that is for those who want to start evaluating (VMware ESXi and XenDesktop Express), but if you'll need to run a production environment, then it will be better to choose the higher versions with more functionalities. Take care to the hardware requirements, especially if you want to try Xen based solutions, because you'll need to make sure you'll use Virtualization enabled CPUs (Intel-VT or AMD-V) otherwise you will not be able to run Windows based operating systems.
The differences between ESX and XenDesktop are not short to describe... It's not one or the other but it depends on the detailed needs that you have. The solutions provide the possibilities to stream applications with different protocols (RDP & ICA) and methodologies. Citrix offers the XenApp solution as well that provide faster and better streaming capabilities, up to the Operating System streaming functionallity that would allow you to use a considerably low amount of disk space.
Anyway, network performance will need to be verified since everything will go through it.
Richard,
If you are looking for large enterprise level deployments, then I suggest VMware products. However I should inform you that VMware uses a very thin layer of Linux kernel (limited hardware support). So you are restricted to choose only certified hardware from some of the leading OEMs only. If you choose to go for non-certified hardware then you are left to fate. VMware will not support non-certified hardware. However I am a fan of VMware for their products and innovative features. Like I said before, if you are looking for real production and enterprise level deployment then look for VMware. But if not....
Try XenSource. It supports most of the hardware (my experience) even if it is not part of their HCL.
Finally on hardware front go for AMD Opteron quad-core based platforms. It has some of the best features for virtualization environment. Rapid Virtualization Indexing feature helps you by increasing Virtual Machine switiching timings.
Martin J.
Freelance Linux build and release specialist , Devops advocate, Tech Shaman, Infrastructure as Code Hacker and Judoka.
Best Answers in: Computers and Software (3), Enterprise Software (2), Planning (1), Career Management (1), Biotech (1), Information Storage (1), Software Development (1)
Hi Richard,
I'd initially say go for VMware ESXi , it's now free and it'll possibly lead you into other useful technologies that can help your testers be more efficient such as VMware Lab Manager (Automated Virtual Server template deployment specially designed for testing and verification environments) with a lower ramp up time.
It is also bare metal so it doesn't have the overhead of a OS based virtualisation solution e.g. Virtual Server, VMware Server or Xen.
Multi-OS support is also pretty good covering Windows, Linux, Solaris (intel) and MacOSX (though this isn't officially supported so I would not use it for UAT purposes)
Hope this helps.
Links:
VMware VDI is one of the stable solution for Desktop Virtualization. However, it does not support non-MS Window Operating systems. At this point it has VDI agents for MS Windows OS only.
Looking at your hardware (presuming that hardware is supported by VMware's HCL), you should be able to run 15-20 VM's at a given point of time, which is meant for testing.
Here is short analysis of your hardware:
Dual-Quadcore= 8 cores (2X4)
Generally, you can imagine, 1 VM::1 Core. However, usually, at a given point of time, CPU utilization is less than 50%. Hence, you can go and create VMs double the size of number of cpu cores. Since the scenario here represents "testing", I would suggest to keep 1 Core:: 1VM to allow a fair testing for your product.
Above analysis holds good when you are using VMware's ESXi or ESX servers which are well optimized to utilize your CPU and Memory.
I would also suggest VMware's Lab Manager product that would probably ease out your test lab management.
More Answers (19)
VMWare has just released a free product called ESXi server, which is a more basic version of ESX. It is free, the kernel OS is Linux and you can setup multiple virtual PCs and servers on it.
Links:
To add to this - check out VMwares VDI offering as well.
Phillip P.
Senior Consultant at ESRI Australia, Passionate Technologist & Cloud Computing fanatic
Hi Richard,
I would suggest using either Microsoft Virtual Server (for Windows 2003 Server) or Hyper-V (for Windows 2008 Server). Both are free.
If you have the Enterprise edition of Windows (for the host), this will give you 4 guest Microsoft operating system licences of any flavour for free (means you don’t have to go out and buy the licences for each virtual server). If you have the Standard edition of Windows, then you only get one guest licence.
There is a very good FAQ page for Virtual Server 2005 here:
http://www.microsoft.com/windowsserversystem/virtualserver/evaluation/virtualizationfaq.mspx
And Hyper-V here:
http://www.microsoft.com/virtualization/resources.mspx
One thing you must remember and something that is often overlooked when searching for a virtualisation platform – If you use VMWare, you will need to purchase additional Microsoft operating licences for your guest operating systems – This is why I would recommend the Microsoft solution.
You can fine tune the percentage of CPU and memory each virtual server is able to get, and if you use Hyper-V the virtual servers can utilise multi-processor machines.
Both the Microsoft solutions are able to run Linux and Solaris. I don't believe OS-X is supported though.
Hope that helps – If you need more information, drop me a line through LinkedIn.
Regards,
Phil P
I have had good luck with both VMWare and Sun's VirtualBox.
Sun's product is opensource and free..
Go to http://www.sun.com/software/products/virtualbox/specs.jsp to see if you like it. I have included some other links for you..
Links:
- http://www.sun.com/software/products/virtualbox/specs.jsp
- http://www.virtualbox.org/
- http://register.vmware.com/content/download.html
Clarification added August 31, 2008:
I suggested these options because you weren't specific about the primary OS. These allow flexibility. Xen is built into many flavors of Linux. The issue there is using Qemu or KVM. They are still limited to what you can load up.
VMWare and VirtualBox allow easy addition of extra hardware and ram etc.
Always consider the post install maintenance and support issues no matter what you choose.
I also recommend VirtualBox, as I have used it in the past with great success. However, the Linux Systems Administrator where I work has built an entire virtual server infrastructure around Xen, which has proven to be extremely rock solid. Both of these are excellent virtualization solutions. (^_^)
Links:
for a free open source vm i suggest virtualbox and xen. but for a more commercial option i suggest VMware. there is a free version of ESX. nice feature of virtualbox is the seamless mode. this allows windows on thevguest os to sit on top of the host desktop. ex. guest os: windows, host: linux. the windows for IE on windows is open and i can see my linux workspace at the same time.
You have multiple options. One of the first questions that needs to be addressed is what OS are you most familiar with?
If your a windows guy you'll get along with HYPER-V just fine. But HYPER-V does not use memory resources as effectively as ESXi.
If your big on linux VMware is the way to go. There is a reason that they are the market leader, :).
If you don't need any more than 2GB of RAM my personal experience is Virtual Box is not robust enough. I am not 100% sure but I don't think that any of these options fully support OS-X.
Please feel free to contact me if you require any assistance with Hyper-V or ESX as I am highly competent with both.
Thanks.
I guess you are going to purchase a machine that has a lot of CPUs, a lot of memory, and a lot of disk space - Right? Virtualization software - like VMware, Xen, Parallels, VirtualBox, etc - are very good at what they do but remember, you have physical limitations on the hardware in which to run your virtualized environment on.
So in answer to your question, it depends. Please tell us what your hardware configuration is and exactly the maximum number of virtualized environments (and what they are - Linux, Solaris-x86, etc.).
Thank you....
Please look no more. Go with VMware who is the
leader of the pack. It'sbeen around for a long time, and
it is using efficient memory.
I have tried Virtual PC, Sun's VirtualBox, and also looked into
Hyper-V. They are inferior products compared with VMware.
VMware are several years ahead of these new players. So, don't tried the inferior products, and go with the best for now.
Evans T.
Information Technology Professional
Best Answers in: Computers and Software (1), Information Storage (1)
I agree that it depends on what OS you're currently most familiar with. If you're using Windows, and have Windows Server 2008 license, you should try Hyper-V before anything else.
If you're using Linux, the Xen engine is my personal favourite because of the stability, feature, and (was, before ESXi) a cheaper alternative to VMware.
However, VMware is the market leader and their technology is proven. So you can't go wrong with a free ESXi installation. Many success stories here.
4 virtual system with Vista and XP is not a relatively heavy configuration. So I don't think you'll encounter any performance issues with that machine. I have experienced 32 virtual machine on a blade server more less with that hardware configuration. Just make sure you're using SAS or FC HDD with RAID 1/5/6. Avoid using SATA drive as it is less reliable in a disk intensive environment.
I would go with ESXi to start with as it is free and even comes loaded as a boot load option on their partners hardware.
Also I have not worked with Hyper-V, but from what I have been reading it does not support Solaris or any other *nix version besides Novell SUSE ( http://www.microsoft.com/windowsserver2008/en/us/hyperv-supported-guest-os.aspx ). VMware on the other hand does support Solaris 9 and 10 and many different *nix distros ( http://www.vmware.com/pdf/GuestOS_guide.pdf ).
Hyper-V also only supports 4-vCPU for Win2008 guests, up to 2-vCPU for Win2003 guests and only 1-vCPU for Win2000 / Linux (Novell SUSE) ( http://support.microsoft.com/kb/954958/en-us )
HTH...
VMware ESXi is the way to go. It is a free and it has a small footprint. With that powerful of a system you can run quite a few vm's on that. Good luck with your project.
Hi Richard,
You are clearly looking at Desktop virtualization, but here many people are confused and suggested Server Virtualization options. You should for Virtual Box or Vmware's workstation product. I would personally suggest you go with virtual box because i have heard some of my friends successfully running many virtual desktops using Virtual Box.
Cheers, Krishna
People have suggested various virtualisation products. Including Microsoft.
Fist of all you need to ask yourself this question:
Is your dedicated machine going to run a server of its own and then on top of that additional virtual machines? Or is this hardware intended to run ONLY virtual machines?
If you only plan to run virtual machines on it, I suggest you go with a product that sits on hardware per-se. I'm not a VMWare evangelist, but I suggest you use VMWare ESXi. It's free sou you can evaluate it with confidence. If you'll like it and you'll need additional functionality (more options) they you'll probably upgrade to Virtual Infrastructure VMWare ESX.
I wouldn't suggest using Microsoft's Hyper-V, because it's doesn't support all possible operating systems. It's not mature yet. You'll also have problems connecting devices like USB devices which is not supported or at least not supported as much as it is with VMWare products. Hyper-V is Microsoft's try to enter the market of professional server consolidation products. It may be ok if you run Server 2008 with other server 2008 virtuals. Some of them probably server core installations. That would make sense.
If you plan to run some operating system (server namely) on your bare hardware machine then you can also use any of the free products on the market to run virtual machines on top of it. Either MS or other products. But beware again. Hardware support in free products is scarce.
Links:
Richard, to maximise the use of a dual-quad core machine with 32Gb RAM and 1Tb of disk, you'd be better of with Vmware's ESXi. Apart from being free, you'll also get some decent support from forums, blogs etc. (Unless you have a paid version of Vmware's ESXi-support is limited)
On the contrary, Xensource Express Edition and a few other hypervisors that run on bare metal are also avilable for free, but just how many have used and suggested, or support/forum support/bloggers are avilable for starters etc.
A few have suggested Virtual Box, MS Virtual PC/Server, MS Server 2008 Hyper visors, again these run on an OS, not bare metal. These will consure your hardware resources.
You need the best bang out of the hardware you are investing in, VMware ESXi is perfect for you.
A few have expressed to support you in case on VMware ESXi, consider me in the group.
Vitor D.
ruthless mercenary with a weird sense of humor, master of all things wrong, who plots evil plans
- Well, Amazon AWS is running on Xen, so they can't be wrong, can they ? ...
- VMware is quite nice, and now with ESXi free it can be a valid option, but you don't have any free monitoring solutions for that.
- VirtualBox is just for individual use, can't be used as large deployment solution
We have our servers on AWS and managed to get some kind of similar infrastructure on staging environment, but it's not the same as AWS is - as they're doing a great job there with Xen. My main problem with Xen is the lack of great documentation and tools - that work.
Clarification added August 31, 2008:
Btw, don't buy that much of disk space for the server, of course you need memory (lots) and CPU, but put all space in NAS or SAN. It can be better for those virtual machines and their backup.
VMWare ESX is a great product and I believe you can download it for free now. Another option worth considering is Suse Linux Enterprise Server with support for Xen built-in. Suse offers great support for that platform as well.
Links:
- http://vmware.com/solutions/vla/
- http://vmware.com/appliances/
- http://www.novell.com/products/server/virtualization.html
Donald W. also suggests this expert on this topic:
First a fair warning, I AM a VMware evangelist.
You will not find guest OS support for OS X on any current virtualization platform. It can be done but I'm not sure it can be done with any acceptable performance.
With the mix of operating systems, primarily Solaris, VMware is going to be your best bet. Solaris 10, x86 obviously, is supported in both 32 and 64 bit platforms. The tools for VMware administration are far superior to those I've seen for Xen and Microsoft's Virtual Server. ESXi is a solid product, I have it deployed in my development environment. You should take a look at the HCL before purchasing your hardware or your experience might not be so pleasant!
Links:
Richard-
If you are looking for a VDI that works specifically with VM's on your servers then look no further; Pano Logic is a "zero" client (solid state) device that runs at 5 watts and is growing quickly due to it's size (3"X3"X1.5"), Linux Broker piece, WWAN capabilities, and much more.
Take a look before spending on your traditional thin clients that all do the same thing and still have moving parts to break and manage.