Dear Lazyweb,
I wish to virtualize my computer life. However, I face an abundance of choices from which you will help me select the right one.
I have a Windows XP Pro machine on which I'd occasionally like to run a virtual Windows XP machine and maybe a lightweight Linux server (probably without a GUI). I currently run VMWare server on it and am pretty happy with that.
So is it worth playing with VirtualBox at all?
Secondly, I have a Linux box (Ubuntu) on which I'd like to regularly run a Windows XP virtual machine. I have experience with VMWare on Linux, but also know that Xen may be a good option. Or maybe VirtualBox. Not having it break every time I apt-get and install the latest kernel would certainly be a bonus.
What are the pros and cons here? And are there other solutions worthy of consideration?
Posted by jzawodn at April 16, 2008 03:43 PM
All things being equal and VMware Server being free, why go with the alternatives? VMware's been doing this for a decade and they do it really well. None of the other projects are at the point where they are truly equal to the features or maturity that VMware provides. I say this not as a VMware Server user but as a Workstation user at home and an ESX user at work. I've often wondered the same thing but have never seen a compelling reason to leave the comfort of the warm, blue, partially-concentric squares ...
That being said, why did the vmware-server modules that used to be in Ubuntu disappear?
Disclaimer: I haven't worked much with VMWare, so I can't vouch whether you will miss any of its features following my advice ;)
I personally have been using VirtualBox, and am very happy with it. Performance is great, and installation is a breeze. It's got all the features I need, as in: clipboard integration, mounting iso images, snapshots, and probably a whole load I don't need.
I think you'd have the added benefit that you could run the same VM on both your OSes, which also means you can copy the VDI images between your OSes if you want to clone one of your environments. I actually make copies of my VDI to have "backups of a known-good state" (such as a clean and fully patched Windows install).
Anyway... I'm sure VMware will have more features, but whatever they are, I've personally never needed them.
"I think you'd have the added benefit that you could run the same VM on both your OSes"
VMware Server runs on both Windows and Linux so you can run the same VM's on both your OSes.
After using the free version of VMware for quite a while, I gave Microsoft Virtual PC a go.
I was fed-up of the VMware bloat, it seems to add on far too many services which I just don't want or need. So if you're running Windows as the host server then I'd give it a go at least, it's a free download.
As for Linux being a host server, it all depends on what your distribution supports - or whichever is easiest to add to your distribution. Virtualbox seems to have an apt repository which sounds convenient.
The problem with xen is, you have to use the Xen kernels. You can't use the distro kernels.
I was using it on my workstation at TiVo, and performance was decent. I took my old RHEL4 desktop and turned it into a Xen Domain underneath Ubuntu. Worked reasonably well, but X was lacking on the host.
I've been pretty happy with VMWare Fusion on my MBP for all sorts of VMs, FBSD, RHEL, Ubuntu, WindowsXP...
Totally depends on what the use of the virtualization is. If you're creating a bunch of linux systems to separate out services (dhcp, mail, web, etc) then xen might be the way to go. Testing on the desktop between windows/linux/etc, vmware is probably the way to go. Doing big enterprise stuff with high availability, disaster recovery, etc, vmware server / esx / Vi3 would be my guess (note: no experience with virtualbox here).
Each has their place I think, with vmware at least with an advantage as you can basically throw any x86 OS at it and it'll most likely work "out of the box" as it were. Course, the free vmware server can be a bit heavy (again, note no experience with virtualbox).
Xen is not like the other things. Basically consider Xen to be a way to virtualize Linux servers on a Linux server; yes, there's more possibilities than that, but just think of it that way for now.
Xen squeezes more performance out of the virtualization layer by throwing away the idea that it has to appear to be a generic PC. Instead, it pretends to be a very specific kind of PC-ish hardware which the "guest" operating system has to be written to run on. That means that the "host" (the virtualization layer) can rely on the "guest" knowing certain things, and the "guest" can take advantage of things that are useful for virtualization but which don't appear in a regular standalone PC. The tradeoff is that you can't just run anything as a guest.
So Xen is not what you want, I think.
As for the rest, I've used VMware Workstation and Server for ages and I've always been happy with it, but I also tried VirtualBox recently and was very pleased especially given the price. I'd probably try VirtualBox first if I were you because it's very low-investment to try it out.
Well I've used VMware, Parallels and VirtualBox on my Ubuntu machine. The truth is, I didn't like any of them... then again my machine is not the most expensive system, it is a 3 year of 64-bit AMD (running as 32-bit) system with only 1GB of RAM. Anyways... I also found that at this time most of the apps that I wanted on windows are working with Wine, so I stopped running VMs altogether. This all said, I stuck with VirtualBox primarily since it is free and it worked.
My main issue with virtual machines is that anytime you are running a second machine you are splitting your resources between two systems. I personally prefer the remote desktop/display idea, but that is not always available. I know that newer systems are supposed to be designed to handle VMs, but I still wouldn't expect a perfect solution. Also I've heard that in some cases, apps don't run as fast in a VM then in a native system, I know on Macs you run into issues sometimes with graphical apps needing to run in OpenGL modes since proper graphic drivers aren't available (may no longer be the case any more, not sure). So check out your apps before choosing a VM. This all said, I'll probably go VMware next time I need one, basically for the same reason Brian stated, experience is worth much more.
As for VMWare not being in the Ubuntu repository anymore... Looks like Canonical is no longer maintains the 'commercial' repository for Gusty onward. UbuntuGeek has a good help page though:
http://www.ubuntugeek.com/how-to-install-vmware-server-in-ubuntu-710-gutsy-gibbon.html
Xen paravirtualize, though 3.0 with Intel VT or AMD Pacifica will support full virtulization. Hence, if you are using < 3.0, Xen may be faster but you needed modified kernels.
VMWare does full virtualisation and being x86, this means more overhead but they have done some cool tricks to push this down to the bare minimum. Good thing is, it runs the normal kernels. I personally prefer that.
Choices, choices :)
Ah that would be VMware not VMWare. Trust me I have the T-shirts :-) Currently running VMware Fusion on a MacBook Pro, I've brought my last PC ever.
Like others said if it ain't broke don't fix it. Of course if Microsoft buys Yahoo you'll be (trying to) run Hyper-V.
Darryl
I work for Microsoft, so I'm biased :-) Hyper-V is really cool. I run it on my x64 laptops and workstations, and it works well.
From an architecture perspective, Xen is the closest to the Hyper-V in architecture (heck, they even both implement the same CIMv2-based management APIs), so that would be my fallback.
Qemu is the solution for you! I used to use VirtualBox, which runs great and fast (with Visat as well). But Qemu is less of a hassle to install and update. Just install GIT and pull the source, compile and install the OS from the CD. See here also for the few commands:
http://zdavatz.wordpress.com/2008/02/15/qemu-rocks-my-balls-of-oh-my-god/
XPpro runs great on Qemu. Qemu is best integrated with the Kernel.
I never used XEN except on Amazon EC2 services. No idea about VMWare.
best
Zeno
VMware Server has nice remoting - you can connect to the VM guest console from any other machine. You also don't have to have the guest VM console displayed anywhere for the guest to run.
I found VirtualBox's networking to be a nightmare. In VMware you can just accept defaults at install time and then click a few buttons to set host only/bridged/nat. For VirtualBox doing bridged is many pages of conflicting instructions, wacky shell scipts etc. (I have most stuff setup for PXE booting)
VMware Server is a poor product. I am a veteran in virtualisation industry and have spent 20 years in it, so I know for sure that they are way way behind the reality. Workstation is best but its too expensive so that is not an option. ESX 3.5 and ESX 3i too is way way too expensive so that does not fit in this picture anymore either.
Xen is free and so is Virtual Box, which is going to be a strong product from Sun as it develops further. Hyper-V too is a free product, even in production environment you barely pay a sum of $28.
So I'd advice you to go with VirtualBox as it is the best option in your case.
"That being said, why did the vmware-server modules that used to be in Ubuntu disappear?"
In Ubuntu 7.10, the following method works fine:
- Open /etc/apt/sources.list in your favourite text editor
- Uncomment the two 'partner' sources and save out the file
- Run 'apt-get update'
- Run 'apt-get install vmware-server'
Once you've agreed to the license pop-up and entered your serial number, job done.
"VMware Server is a poor product. I am a veteran in virtualisation industry and have spent 20 years in it, so I know for sure that they are way way behind the reality."
Care to elaborate? I'm interested in hearing what you have to say on the subject because well, I don't believe you. :-)
Since virtualization in the x86 world hasn't been around for twenty years, your experience is likely mainframe related, no?
"Workstation is best but its too expensive so that is not an option."
I personally prefer Workstation to server, but I think server would fit most people's needs. I've used Workstation since v1.0 back in 99 and it's just what I'm used to.
As for cost, it depends on what you classify as "expensive". It costs as much as a cheap PC and its limitations are only really as much as your physical hardware.
"ESX 3.5 and ESX 3i too is way way too expensive so that does not fit in this picture anymore either."
ESX really isn't a fair product to compare to VirtualBox or even the other VMware products. ESX has so many features a home user would never use (VMotion, VirtualCenter integration, etc.) Not to mention the hardware you'd have to buy to get the most out of it would also be prohibitively expensive for a home user.
Great question... If I can be so bold as to suggest that you consider taking a different approach, one you can do with any of the products above. Take a third box, put it on the network, and install the virtualization product(s) of your choice, then use remote management to handle your VMs.
On Linux, kvm/qemu beats everything else performance wise, for me.
I prefer VirtualBox because is easier then Xen or VMware to use.
I use Vmware converter to convert previous virtual machine that I created with VMware (http://www.valent-blog.eu/2007/09/16/vmware-converter/ in my language).
The converted VMs will be used on VirtualBox.
Favourites:
1. virtualBox
2. vmware
3. qemu+kvm
last => Xen
:)
I have used VMware Workstation on Linux for years both at home and at work, mainly to write and test crossplatform apps and occasionally to run the one stupid app that doesn't have a counterpart on Linux (I am in process of writing one now thus eliminating one more issue).
VMware Workstation works fine for the most part but there is always "oh crap, I'll have to rebuild it after I update the kernel" or after I update to the next version of whatever Linux distribution I run. Always have to look for the "any-any" patch or go into the driver code and fix it myself, google for fixes. VMware isn't any speed daemon when it comes to keeping pace with major Linux distros. I guess their main crowd is Windows (and seems to show, see a note below).
I just spent couple of days evaluating VMware Workstation 6.03 on my Ubuntu 8.04 host. It turns out it doesn't deal well with my Dell Inspiron 1505 with Core2 Duo. 2 of my 3 Linux guests (all Ubuntu, 7.04, 7.10, 8.04) are useless, in 7.10 I have no mouse, no keyboard, in 8.04 a single keystroke produces multiple characters - tough to type a password.
XP guest seems to run somewhat OK. On my desktop host, XP feels about the same as Linux guest. On the dual core laptop XP runs noticeably faster than the one working Linux guest I managed to install- hmmm, I wonder why. VMware seems to have a problem utilizing the dual core processors very well (WS 5.5.6 falls asleep on the Core2 laptop, rendering any guest machine totally useless (3+ hours to install XP, 10 minutes to boot it)). Also, giving both cores to the guest OS will slow it down to a crawl. And yes, as usual, installing the VMware tools croaks in 8.04 guest and you have to screw around with it.
Late at night I got frustrated to the point of asking myself "Do I really want to spend money to upgrade from my current WS 5.5.6?, do I really want to deal with this over and over and over?" and started looking for alternatives. And I stumbled on VirtualBox and this blog among others.
So I tried VirtualBox on both the laptop and desktop
Laptop host: Dell Inspiron E1505 Core2 T7200 @ 2GHz, Ubuntu 8.04, 2 GB memory, SATA drive (this is the Dell built and sold Ubuntu Linux machine)
Desktop host: My build 2.8GHz (runs at 3.06) Intel no HT single CPU, Ubuntu 8.04, 1 GB memory, SATA drive
First VirtualBox impressions:
1) It runs out of the box, 2 weeks after 8.04 came out, VirtualBox installs and runs on it flawlessly, no patches, no Googling for "how do I get this work?". Impressive.
2) Installation - didn't have to read documentation, installs flawlessly
3) It's 1/5th of the VMware WS (~21MB vs ~110 MB)
4) Guest OSs installs - flawless (7.04, 7.10, 8.04, XP) and fast - first time I noticed the speed difference
5) All guest OSs are *noticeably* faster and snappier - when at full screen I tend to forget whether I am in the host or the guest OS. Interesting - while XP does run faster than in VMware, Linux guests speed increased significantly.
6) VirtualBox seems to utilize dual core much better - statement based on my scientific method of observation of the CPU load gadget
7) It is very polished, Sun production quality
8) The documentation is very good
9) The product anticipates me doing stupid things and warns you of doing so before it lets you shoot yourself in the foot. It doesn't get in your way. Very well done. Very user friendly.
10) Installation of "Guest Additions" (counterpart to "VMware Tools") is, well, one more time - flawless, no code fixing necessary (first time I cracked open the docs, BTW)
11) Shared directories from the host work like a charm, are intuitive. This was another bit of black magic in WMware WS once in a while.
12) Networking, sound, CDROM, floppy, USB - all work out of the box, both the laptop and the desktop.
Drawbacks:
1) Tried to install DRDOS with limited success, looks like a problem with VirtualBox display. I was able to install DRDOS on VMware without a problem. Well, OK, I can play my 7th Guest on Dosbox just fine.
2) VMware WS hase a very nice tree based snapshot capability, VirtualBox seems to take linear snapshots only, no tree. It seems that this can be accomplished by cloning and subsequent snapshots of the clone. One just needs to be a bit more organized. Have to experiment a bit more here.
3) So far I have not succeeded in converting my VMware .vmdk XP Pro image to VirtualBox .vdi. Well, I converted it, it doesn't work :( - I may just bite the bullet and do a clean install (and probably having to deal with MS again, crap)
Final impressions: VMware WS feels clumsy and slow now when I got a taste of VirtualBox. Oh yes, there is a (documented) API? Way cool.
Conclusion: I *used* to like VMware a lot, YMMV.
Sorry for the long post, I just can hardly contain my excitement.
Jiri
it depends on what you want to do. for your windows host, i'd say keep it as is. virtualbox, qemu+kqemu, and vmware player ( probably server too ) are, when benchmarked, the exact same. they all use the same method of virtualization ( dynamic translation ) and are all limited to the same peak performance.
virtualbox does have support for for VT-x and AMD-V but last i checked ( version 1.5.8? pre-sun's takeover ) they said that they rarely used it since in some instances it is slower to use it than to use dynamic translation.
for your linux box. use either kvm (assuming you have vt-x or amd-v support) or virtualbox. virtualbox is plagued with the remake of the kernel module each time you change kernels but you can do "seamless windows" which lets your xp vm's desktop "merge" with your host's desktop ( take merge liberally, but it is really cool ). kvm, however, is quick and relatively easy to use.
xen with windows in domU, i have heard, is no better than kvm running windows. also, unless you have vt-x or amd-v, it'll be a pain to make a guest ( may be impossible, but i don't know that for sure ).
as for vmware for both situations. the free solutions aren't that great. virtualbox gives you the same kind of interface that vmware workstation gives you, i think, and is free.
I personally prefer the speed of VirtualBox, but so far I have encountered many issues with USB and sound drivers.
BTW, to convert from vmdk to vdi use Gparted: http://gparted.sourceforge.net/
1-Get the iso image, and mount it in the VM or VB as a cdrom.
2-Create a new VDI disk and add as secondary in VMware
3-Boot VM from CDROM
4-Use Gparted to reduce the size of the partition in vmdk disk if necessary
5-Copy partition from vmdk disk to vdi disk
6-Shutdown VM and change vdi to primary disk
I use virtualBox right now on Ubuntu 8.04 64 bit server host with win XP on the VM. It runs great.
I like vmware server but had no shared folders with the host.
That was v 1.0 though and v2.0 is supposed to have shared folders included.It also uses a web based interface which some people like and others don't. I haven't checked to see if it finally got out of beta.
Had problems with both as far as sound and usb but that is more of a problem with linux host because it can be fixed by adding an entry for usb to fstab file. The fix is in documentation at vmware and virtualBox sites.
Xen sounds pretty complicated so of course, I'm gonna try it out. Guess I'm a glutton for punishment. I'll probably be found on some forum in the next few days looking for help to fix my royaly messed up system.
HI
I am trying to learn Sun Solaris 10 so on my machine vista home premium 32 bit, I installed Vmware and downloaded the solaris 10 x86 iso and saved on CD. The problem is on vmware solaris, when i powered on, it doesnt go nowhere even thought I pointed to iso image on the cd . So, I downloaded sun xVM VirtualBox for 32 bit windows and created the virtual solaris. I get the same boot problem
I get error: Could not read from the boot medium ! system halted.
Running VMware server on newer linux versions is no fun at all.
Dealing with this every time a new kernel is just awful:
"VMware Server is installed, but it has not been (correctly) configured
for the running kernel. To (re-)configure it, invoke the
following command: /usr/bin/vmware-config.pl."
Then pray the any-any update works...
VirtualBox is what I use, but it has one big nasty drawback (that you may/may not run into) - Unmoveable snapshot files.
"IF" you take a snapshot of your guest OS, and later discover that you are running out of hard-drive space on your host OS (and it's because your VB snapshot files are too big), you will think to yourself, "...I'll just move these snapshot files off to my external drive on my Host machine along with the corresponding .VDI file." Nope! Can't do it! The .VDI file you can move, but the snapshot files are stuck where they are! At that point, you'll be in trouble.
What I have learned is that there's no way to move your snapshot files off of the host OS to some other location. So, watch out!
Still, that being said, I like VB more than the other offerings out there because VB is so easy to use.
I like the ease of use with VirtualBox. However, the documentation isn't as good as Jiri would make it. Currently, I have Ubuntu Hardy Server and because I am not using X, I have to use VBoxHeadless to manage these systems. Trying to get the virtual machines (JeOS 8.04) network interfaces working has been nightmarish. I want to simply configure these VMs to be on the same net as the host, but getting the bridging to work is less that intuitive.
Am I missing something? VMWare works out of the box, but I agree it is too heavy.
In any case, I like the rest of VB. If you don't need your VMs to be servers, it works flawlessly.
I used VMware for several years. In the days before virtualization extensions in CPUs it was extremely fast. It's still feature rich, but I was always so annoyed by the kernel module recompiling dance one must do whenever your kernel changes or is updated. It's a problem because you often need to track down the latest "any-any" 3rd party patch to fix VMware's modules.
And sometimes it's a small issue like VMware's init/config script not working... good luck fixing the problem yourself, or even finding the problem. The script is a gigantic mass of mush and settings are stored in an equally dense text/db thing. Basically, if VMware or the init/config scripts decide they don't like you or your system, just wait for the next version because you won't be getting past that point on your own.
Now I'm using VirtualBox. The 2.x releases are extremely slick and so far they've been working like a charm. It's a little unintuitive that to suspend your VM you must close/quit the VM window as only then are you given the option to save state. With the CPU extensions, VirtualBox is plenty fast, too, though I wish a single VM could take advantage of more than one core. VMware Workstation has some addition features, but never anything I've missed since using VirtualBox.
Lastly, qemu+kvm is useful for some low level stuff on occasion. It also has the advantages of being very small and not needing any kernel hackery to be useful. Its ability to use raw HD images was very useful while I was trying to make a useful OS image for my OLPC to use from an SD card.
Hi Guys,
this seems like a very ordered and objective discussion.
I have started to use VirtualBox on a quad core AMD machine, but when I monitor my CPUs (through ubuntu 9) I see a big imbalance in utilisation. CP4 seems to at 100% when I run windows and the others are at 20%. Does anybody know about CPU utilisation between the three products (virtualbox, vmware server and vmware workstation).
Many thanks.
I also have been using VMware on a Windows Host for many years and started getting frustrated that VMware Workstation isn't adding support for more than 2 virtual CPUs (vcpu). I have a few number crunching applications that will run faster SMP and I started looking for options to better support my Quad-core processor host.
VirtualBox seems to support only vcpu at this time.
I considered trying Hyper-V, but it didn't seem to have support for all the .vmx options that I'm used to having in VMware.
I'm going to install CentOS and try Xen, but really wish that VMware would add support for more vcpus on VM Workstation.
I use VirtualBox on an Ubuntu (Jaunty) host. I have working VM's for Xp, Vista, Solaris, Fedora, Suse and Mandriva with absolutely no problems at all. The installation of VB is ridiculously easy, the kernel module re-compiles someone mentioned are automatic. Previous versions had issues with bridged-networking on linux hosts but this again is now flawless. The interface is a breeze to use and I swear that my xp guest machine seems to run faster as a VM in VB than it did as a native operating system.
I haven't tried Vmware for probably a year now, but when I did it seemed unfriendly and very bloated. Virtual PC lasted about 15 minutes last time I tried to use it. I haven't bothered trying Xen, qemu or any others because VirtualBox just seems to work perfectly. VirtualBox can also now use Vmware virtual disks.
So my advice is if you want something that just does the job, does it well and doesn't require your involvement to do it, get VirtualBox.
BTW The seamless mode is brilliant, Xp apps appearing as native linux apps.
Totally agree on the linux-VMware kernel incompatibility issues, any-any patching, etc. Headache. Really blows.
Tried VirtualBox. Totally agree, install and kernel compatibility a breeze.
Working with Xen now.
I am an Oracle DBA. I use VM for prototyping client systems prior to deployment, and sometimes for actual deployment. I build RAC, ebusiness 11i, 12 on VM etc. typically. For this reason, here are some feature comparisons that I didn't see in this thread so far:
VMware has a great feature which allows 2 VM's to share the same datafiles - which is required for doing "Oracle Real Application Clusters on VM". VirtualBox cannot do this so far as I know. Unknown for Xen yet still looking into. Check out http://www.oracle-base.com/articles/10g/OracleDB10gR2RACInstallationOnCentos4UsingVMware.php for more information on how to set up shared storage. Also, related to this, you can add datafiles easily to a VMware VM while VB seems to limit you to the "master" file-drive and the "slave" file-drive. I don't think Xen allows adding "files" either.
Xen (if install guest on an LVM instead of file-based) allows very easy resizing of the VM so that you can expand this "disk" on which the VM is running using the LVM - basically you have use of an LVM to manage your VM's PV's, LV, and VG's. Neither VB nor VMware Server/Workstation can do this (so far as I know - please correct me if I'm wrong about that). Once you set the "max size" of the datafile(s) supporting the VM, they cannot be extended beyond this max size. Of course you can set a "huge" max size for a VMware datafile(s) and check "don't allocate space now" and let it grow but nevertheless, I don't think VMware or VirtualBox support building VM on LVM's.
Xen so far as I know does not allow you to install your guest by mounting a "virtual" or "real" DVD/CD as VB and VMware do, and as mentioned above, you apparently cannot typically run unmodified linux kernels on Xen. This seems a very big drawback of Xen to me.
Another issue with Xen (so far as I have found anyway) is that installing a yum-based distro guest ontop of an apt-based xen host or vice versa presents some additional difficult challenges for quick project work.
My guess and feeling is that Xen will provide the most powerful virtualization environment in terms of flexibility and features but the price you pay is a much longer learning curve and probably also quick project work deployments are not going to happen.
But the problems with vmware vmmon module not making and other kernel incompatibilities of vmware server with linux have really turned me off of vmware server and vmware products in general. I'm a confirmed linux convert and run linux on all my laptops, desktops and servers, and the headaches with installing vmware after kernel upgrades have really interfered with the acceptance and usage of the vmware.
so my vote would be VirtualBox for quick fast deployments where you need a vm for some purpose up and running FAST.
Then gradually become a Xen guru and really explore the capabilities of the product fully and use Xen for projects that require more flexibility to do things with the VM at the linux command line. Remember the real power of a Xen VM it seems to me is that you have the full linux command line at your disposal and all the other good things like LVM support.
HTH
If you use VB and opensolaris as a host. You can use a iscsi target on host for shared storage to install RAC.
I've used VMWare workstation for years with success. The latest version 6.5 automatically recompiles itself after a kernel upgrade. I've gone through three kernels in the past 6 months and it's never failed me once.
I read a lot about KVM/QEMU and just spent the past week evaluating. The bottom line is it is very fast for cpu, memory, and disk I/O and painfully slow for graphics. It also has only a command line interface, though it is not complicated to master. I've tried using the libvirt utilities (such as virt-manager) but they are so new and so flaky I gave up.
So for me it's going to be virtualbox or vmware.
Tries VMWare Player and Virtual Box and found VM perform much better on CPU without VTX/AMD-V support. Found Virtualbox frequently hits 100% CPU while VMWare happy stays at 20% or less.
On my the other AMD-V enable machine, both seemed to perform equally well.
Also, VM Server is over 200mb and VirtualBox is only 68mb and frequently updated. I go for virtualbox.
My vote goes to VirtualBox,It's pretty much easy to install and manage. (No need to google or fix libraries issues)
Help options comes with the VirtualBox is more than Enough.
Only drwaback,few features are not support in open source version :(
A month ago I installed ubuntu on my machine (got tired of windows vista).
Just got my feet wet in linux I decided to install Virtual Box because of all the "VM" articles i've been reading and hearing about... I thought Virtual Machines were difficult to set up, so i only wanted to explore the user interface and documentation before TRYING to run a VM.
about an hour after the installation of VB i had an older Windows XP proffesional perfectly running!
The VB version I used was (is) free (don't know if there are paid versions) and it performs REALY good (fast and stable). But what really got my attention is the ease of use. Everything almost speaks for itself (I even didn't need the documentation to get it running!!!)
Performance wise... it's even faster than al localally installed windows XP pro.... go figure...
(note: my machine is an 8GB RAM, quad core)
I read the documentation because I wanted to know how to backup my .vdi and it seemed to me the documentation isn't really user friendly (in my opinion).
I eventually found the command: clone hd , the option to backup an properly working .vdi seems very important. So why isn't there an option to do it right from the UI?
Tip: to expand your .vdi in hd space:
- create a new (empty) virtual machine with the space you need.
- set the NEW empty machine as PRIMARY IDE
- in the settings add the virtual machine you wish to have bigger hd space as an SECONDARY IDE
- boot the NEW virtual machine with an ACRONIS (disk director) CD.
- when the CD is booted in the NEW virtual machine, you'll see 2 drives copy the SECONDAIRY IDE drive to the primary.
- expand the size of the PRIMARY drive so it takes up the full space.
- flag the PRIMARY als bootable.
- close your VM and go to settings in VB and remove the secondary HD and voila ... you'll end up with an expanded .vdi !!!!
anyway...sorry for my ramblings.... Virtual Box is really easy and fast, don't know how it compares to the others (which also sound very good!)
VB has some downsides:
- no "easy" documentation
- can not expand .vdi drive space once image is made
(you'll have to use work arounds like I described)
- can not clone / backup .vdi from the user interface
No real show stoppers here, but you should know about it.
I have tried Xen, VirtualBox, VMware workstation (30day test version), VMware server (free).
Let’s start with the bad experiences, the VMware server uses your web browser and half the windows where not working of just showed the two arrow hour glass thingy, so this wasn’t usable. It was on a Vista box.
VMware workstation worked alright, except for the sound which you have to mute because even simple sounds like clicks and things get caught in some kind of loop and it just drives you crazy. I don’t want to pay for this thing. This was with an install of Fedora on Vista. The VMware converter could not convert a Xen, Scientific Linux (AKA Red Hat 5) I asked be started at a cluster at my work.
I have access to a Xen cluster at my work through a specialized front end run by experts But trying it on my own RedHat (Scientific Linux) desktop I could not even install Fedora, it keeps having python script errors and referring you to the line of the error. The fact Xen can’t mount ISO images only network file system shares in the mode it’s chosen to run in is also a real bummer.
I tried VirtualBox on my Ubuntu system at home. This worked out of the box running windows XP. I can’t get the shared file system running. I think out of all of the VM’s I have tried VirtualBox is the best. I realize this is not a apples to apples test. So I can’t even comment on thing like CPU performance and such.
I've been involved in virtualization for several years, and have a few comments on all of the options suggested here (with the exception of Xen. I've used Xen in a training environment, but not in personal, production, or lab use).
First, VMware. VMware Server 1.x (the free product) seems to be the most stable and easy to use for my purposes, and performance is decent for a para-virtualization solution. We have issues with running Apache Tomcat in our lab environment (security issues), so Server 2.0 was not an option. Like one of the other posters mentioned, we have had issues with many of the windows failing to actually load anything. We generally used VMware Server on our analyst workstations for individual VM creation and hosting, and liked the option to access the VMs from across the LAN. When we acquired licenses for VMware Workstation, we stopped using Server.
VMware Workstation: This is a fairly stable para-virtualization option. We are currently using v6.5 on some of our analyst workstations. The one advantage I've noticed to Workstation is the "easy install" feature. (Note: we are running Workstation on Windows XP boxes, so i don't know if this is available on Workstation running on Linux). For some of our analysts that aren't regular VM users, the easy install allows them to rapidly provision and build some VMs. However, it seems that Workstation takes more host overhead processing/RAM than VirtualBox.
VMware ESX/ESXi: As others have noted, it's not very fair to equate ESX Server/Virtual Infrastructure to the other options (VMware Server/Workstation/VirtualBox). ESX is an enterprise virtualization solution (just like Sun Virtual desktop Infrastructure). We are using ESX 3.0.2, 3.5, and vSphere 4. ESX is an incredibly powerful tool, particularly if you use VirtualCenter management features. However, the price of ESX makes it impratical for the home user. That being said, ESXi is a free software package, and relatively stable. I'm not a fan of not having the Management Console for troubleshooting, but for a free product, you get most of the features of ESX/VI3. I'm still adjusting to ESX/vSphere 4, so I can't comment much on this one.
Virtual Desktop Infrastructure: Like ESX Server, Sun's VDI software is more of an enterprise-level virtualization package, and I believe it's targeted towards the remote/virtual desktop community rather than the virtual server environment. VDI3 and Sun Ray is an interesting software package, but again, not practical for the home user.
Hyper-V: Hyper-V is a pretty solid bare-metal hypervisor, particularly from Microsoft (I hate to say that the folks in Redmond are a little behind the game in the virtualization market, but that perception is based primarily on their lack of support for other operating systems in their end-user products, namely, VirtualPC). Prior to purchasing licenses for ESX Server, we were using Hyper-V and Virtual Server (an incredibly unfriendly application, IMHO). I don't have too many pros or cons for Hyper-V. It works. Usually.
VirtualBox: This is by far my favorite home-use (and production/test use) virtualization product. For one, you can't beat the price. Free. Free, free, free. No registration for a serial, just Sun account registration. Sun also releases VirtualBox updates regularly. Another plus, VirtualBox supports pretty much every OS out there. It works on Unix, Linux, Solaris, and even SPARC. VMs require much less host memory than Workstation requires, and the current version includes native support for Windows 7. There are several other unique (or at least I believe they're unique) capabilities that VirtualBox provides (although the documentation takes some getting used to/deciphering). One, is multiple display capability. That is, multiple virtual displays for the same VM. This is useful for developing or testing applications designed for multiple displays. Sharing host hardware (CD, USB, etc) with the guest VMs is much easier than on Workstation, and VB seems to recognize more of the USB devices (and they are easier to identify) than Workstation. For example, USB web cameras built in my laptop are recognized and identified as "USB Web Camera", but not so in Workstation. Remote Desktop Connections to VMs is easily enabled from the menu bar. Another interesting feature (takes some getting used to) is "Seamless Display" mode. This allows you to present windows from within the VM to your host desktop. So, an application running in a VM can be used from the host desktop without having to open the VM. Pretty cool stuff. Benchmark testing of VMs running on my personal laptop with minimal memory settings have them running only slightly slower than basic VMs running on one of my lab ESX servers. The current versions of VirtualBox can also open VMware VDK files without conversion. Another pro is the easy export of VMs as appliances for use in other products that support the Open Virtualization Format. Dynamic virtual disk sizing is nice for storage-constrained systems. Sharing the PAE-NX and AMD-X/Intel-V virtualization feature is simple. We've tested VB on Windows XP/2003/Vista/7, Unix, HP-UX, Linux, and Solaris boxes and had no issues using Virtual Disks from different OS running VB. Cons of VirtualBox: documentation is not very user-friendly, use of NAT networking is difficult to configure (especially for port-forwarding), command-line configuration of many advanced functions.
In the end, it comes down to what you're looking for and what you're willing to pay. Workstation is a nice product, and shows the experience that VMware has in virtualization (one of my coworkers has been working with the company since they had less than 5 employees, and the product evolution is apparent). However, Workstation is expensive for casual VM users, and tuned more towards application developers that want to capture accurate snapshots that are easily managed while testing different versions of software concurrently. Bloat and overhead are downsides. For para-virtualization on a small scale, VirtualBox is by far the best bang for the buck. If you're comfortable scripting from the command line, configuring advanced options like multiple virtual displays and NAT is not a downside. GUI management of Virtual Disks and ISO image files is convenient. Hyper-V is a decent product for a free para-virtualization package, but if you're looking for something to use at home, it might be a little more than you need.
Anyway, that's my long 2 cents on your options. Either way you go, you're bound to be impressed with the capabilities you get out of virtualization.
Have you tought about switching to Mac OSX ? I tried it and I don't feel I need to run a Windows nor a Linux machine.
Well, I am sticking with Xen.
We have a server with 8 virtual machines and all have an uptime of around 40days (We installed it 50 days ago, but rebooted it a few times due to misconfiguration on network card.)
All the machines run CentOS, and setting up a host is as easy as sticking the CentOS disk in, choosing to install virtualization, then clicking install. So it runs great for server applications. As far as home user, I am thinking about it my self because you can do PCI passthorugh to the virtual computers. That means Windows XP will regester my video card and run it at full speed WHILE I have my linux backbone running along with a few other virtual machines.
I think that in your case Virtualbox is for you. I am a little bias because it's all I ever use, but running Backtrack 4, Windows XP, Windows Vista, and Windows 7 all at the same time with minimal slow down is down right impressive. (Running Ubuntu 9.10 as the Host on a e8400 3.0 dual core with 4 GB of ram) Another deal breaker could be Virtualbox' 3D video support and USB device support. I was able to have two windows XP machines running, one with it's own Keyboard and Mouse and play Descent Rebirth (Open GL Game) with a friend with NO lag.
If your up for a challenge, I say Xen, If you want it to work, Virtualbox (It's free, whats to lose?)
Tom,
Thanks very much for that great review - not too long at all!
I've used VMware Workstation for years (since version 5; running 6.5 now, just bought version 7). I'm interested in VirtualBox though - even though I just shelled out my $99 to upgrade.
Did you install them simultaneously on the same machine? Even better, did you *run* them at the same time? If you did, could you elaborate on how they worked? I use my notebook with Workstation daily; I'm hesitant to experiment too much... (even paranoid to upgrade to Workstation 7 - full backups in both file backups and disk images... belt and suspenders... :)
If anyone else has recent experience installing/running both VMware Workstation (6.5 or 7 - i.e., recent versions) and VirtualBox (same thing; 3.x) I'd be very interested in hearing about it.
Thanks!
- Al Weiner -
I've been using VirtualBox 3.1.2 for quite a while now - I switched over from VMWare Server 2.x quite a while back. I found VirtualBox to be great in terms of speed and reliability (though I've only tried non-GUI Ubuntu-jeos linux builds on it, nothing graphical or whizz-bang), but what took me away from VMWare was (1) the lack of bloat and (2) no need to disable driver signing (I was using Windows Vista, now using Windows 7) and (3) the speed at which I could get up and running.
The only two issues I've had with it are (both networking related):
(1) I often leave guest machines running when I put the machine to sleep... but when I wake my machine up again, everything I had connected to the guest machines (PuTTY sessions, PG Admin connections) gets disconnected and I have to reconnect everything from scratch. I believe this is due to VMWare's superior handling of the networking side of things. I cannot remember having this issue on VMWare.
(2) VirtualBox cannot change network settings in real-time like VMWare, if I wake my machine up in a different network environment which will, for instance, no longer support a 'bridged' connection, there's not much I can do aside from rebooting the VM. There are ways around this using multiple network interfaces, but the networking just feels a lot slicker in VMWare Server.
The above two reasons were the reasons to why I was THINKING of giving VMware another try on Windows 7, hence my googling and coming across this post. But that said, if I didn't need to do anything fancy with networking, and I wasn't lugging my laptop around between networks, I'd have never been prompted to even try to look for anything other than VMware.
Correction on my above post - "... even try to look for anything other than VirtualBox ;)"
ANOTHER correction - I've no need to switch over to VMware. I found the reason for my connectivity issues were to do with the way my network adapter on the individual guest machine was set up, not the functionality of VirtualBox as was suggested.
Additionally, you *can* switch network settings in real time with the newer version of VirtualBox. What I was saying in my first comment was to do with an older version.
VirtualBox it is for me, and I can throw away this 500mb VMWare Server 2.x download :)
Been playing around with Virtualbox (the sun version) for quite some time now.
Works fast and easy, but the greatest problem is the implementation of usb support. It's a real pain if you want to sync your smartphone or Blackberry to a Windows guest, for the Blackberry, it just will not work.
So if you want to play around and use just the basic features of the guest os, Virtualbox is the way to go (with the lack of native usb support).
Do you want more control, i'd use VMware.
The biggest problem with VirtualBox would actually be quite trivial to fix if somebody decided to:
VirtualBox stores its files in typical Windows application style - scattered all over your hard-drive. EVEN if you try to neatly organize it somewhere else, it still insists on placing new virtual disks on the 'HardDisks' folder, which is separate from the 'Machines' folder.
That makes it very difficult to manage multiple VMs - as in, making backups, restoring, copying, forking, and generally moving them around.
With VMware you specify a folder, and all files related to that VM are self-contained in that one folder.
I've used all of the above in production environments and "the answer" really depends on what your needs are, what your environment is, and how you intend to maintain your vm's once built.
For a "home" user -- even an advanced home user -- I think either the free VMware Server 3 or Sun's VirtualBox would be fine. They're plenty fast enough, aren't too cumbersome to setup/use, and are just as stable as physical boxes. Avoid the various "player" utils out there, though. I've never liked VMware's Player as it is too limited and tends to be fussy about networking. Also, I don't like having to be on the local box to use the vm -- or having to leave the local session running to RDP/VNC into the vm.
In my current network server environment I prefer Xen for performance and stability. I have several Xen servers running DomU combinations of Windows Server 2003, Ubuntu/Debian Linux, and CentOS. Paravirtualization in Xen is obviously faster and easier then hardware virtualization, but both are stable and relatively easy. I've used VMware Server and ESX and find them to be much more flexible than Xen for running BIG virtual server farms -- especially if migrate and/or clustering is desired -- but it's way more than a small department would want or need, let alone the home user.
They all have advantages but for the original poster, I'd suggest the free versions of VMware Server. It's just too easy not to give it a serious look.
Guys as per usual, it depends on what you need. My own experience is as follows:
Windows OS is too flaky and difficult to restore and generally I want a reliable 64 bit OS running on my hardware (we all have 64 bit hardware now, right?). Also, memory is cheap and CPUs are powerful so it's a great time to start virtualising.
Linux is a great bare metal layer for the hardware (and is actually the underlying framework for many of the hypervisor products such as ESXi in any case).
The big question is whether your hardware is primarily for server or workstation usage. Server usage definitely points you towards VMware - more reliable and scalable. In that case, install ESXi as the bare metal hypervisor (it's FREE!), and manage ESXi from whatever machine is going to be your workstation. Only thing I don't like about the latest ESXi is that the VSphere console management tool doesn't run directly on LINUX (anymore).
However, if the machine is going to be your workstation, then pick any LINUX distro as the host OS - I like Ubuntu because of the effort that has been put into the GUI. Be sure and separate home and root partitions. That way you can restore your machine from a live CD in minutes without having to restore your personal stuff from backups. (we all have backups, right? hehehe)
However, there's always something that you end up needing Windows for - less so now that Open office, Blender, Gimp and all those other great free tools are available - in my case I only need Windows to do host-based printing to my ancient laser printer.
The only products that I have found really easy to install and use in a Linux host (64bit) + windows guest (32bit) scenario are VMware and VirtualBox. Actually it's VMware player and VirtualBox to be precise since VMware Workstation costs money.
I've performed many "smackdown" competitions between the two of them and surprisingly.....
VirtualBox runs substantially faster than the almighty longstanding VMware software! Why is this so? It appears that the work VirtualBox does in recoding the 32 bit binary on the fly actually has the 32 bit OS running as a pseudo 64 bit machine, significantly outperforming the VMware untouched binaries (For example I get around 20% speed increase on initial boot of Windows XP).
Note that if you want to run both server based and workstation based installations, or if you have really super-duper hardware, then you might still want to use VMware on the workstation since it is more scalable, and the images are easily moved between server and workstation.
Also, one of the absolute BEST things about VMware is the free standalone converter tool, which is absolutely great at doing physical to virtual conversions. If you don't want to rebuild your virtual machines from install media, then you might also consider VMware for this reason.
A final note: I used to be an extremely keen RTS gamer, and always had to have a dual boot Windows configuration hanging around purely for gaming. However, I now notice that 2nd hand console games are cheaper in the stores than the equivalent 2nd hand PC games. I'll be buying a PS or XBox for future gaming. ;D
Virtualbox runs in every major OS. Its free, open source. Has losts of advanced features. It's easy to use and it is low on machine resource usage. What else do you want? When you talk about a virtualization solution to run on your desktop there's no better option.
As a tech neophyte, I recently built my first computer after the hard drive in my Mac imploded. It was a great learning experience, as I was walking a fine line between a need for data security (RAID 1 HD configuration), processing power (Virtualization-ready multi-core processor), power-savings (low-wattage, integrated graphics HTPC), and budgetary constraints. Because of my bad past experiences with Windows security, I decided to virtualize all recreational internet access using the new LTS version of Ubuntu. It took me an initial month of banging my head against the wall, but I absolutely love the new VirtualBox! Things are more or less working as I want them to, and I'm learning more about VM management every day. If one is simply willing to refer to the included users' manual when undertaking new tasks, one can generally "bumble through" any issues. Any way I look at it, I couldn't possibly have a better starting package, and for free! Kudos to the people at Oracle. I hope they keep offering a free-for-personal-use solution like VirtualBox in the future.
Hi everyone, very interesting post, I am runing windows Xp Pro on a laptop (sony vaio intel dual core 1,8ghz and 4gb of ram). I have been using VMware server 2.0 for a few years now to run a Debian guest (I give 1,5gb of ram to the guest).
Its been performing quite well, though VMware server 2.0 seems to consume quite a lot of resources. Can anybody confirm me if the latest Virtual box (3.2.x by now) will use NOTABLY less resources than Vmware??
I know performance wise both of them are excelent (for my needs anyway), but if Virtualbox uses notably less system resources then Id definitely migrate to it.
Thanks in advance
Nico
If you Understand spanish this is my opinion.
http://www.hodracirk.com/2010/07/recomendando-oracle-virtualbox.html
I've used Vmware for a long time but since a month I use (and i'm happy with) Virtualbox.
Best regards,
Thanks for the link Ricardo, Spanish is my primary language ;) Im from argentina
I will give Virtualbox a try
Thanks!
Just my 5(euro)cents:
VirtualBox is the only product that allowed me to install SCO OpenServer 5.0.6 and have networking and all of that without much trouble.
Best regards,
Sinisa