Ask Slashdot: Which Virtual Machine Software For a Beginner?
An anonymous reader writes "I am getting ready to start learning the use of virtual machines. What VM software would you recommend? This is for personal use. It would be good to run both Windows VMs and Linux VMs. Early use would be maintaining multiple Windows installs using only one desktop computer with plenty of cores and memory. I would be starting with a Windows host, but probably later switching to a Linux host after I learn more about it. Free is good, but reliability and ease of use are better. What is your preferred choice for a VM beginner? VMware? Xen? VirtualBox? Something else?"
It may also be helpful if you can recommend particular VM software for particular uses, or provide some insight on different hosting options.
It's software. Look at the menu options and read the manual if you need a reference.
Can you not think?
I honestly just used VMware for the first time today but it was very easy to use and booted up in seconds. You can add virtual drives with a click and if you are anywhere familiar with the operating system you are attempting to emulate, I'd say it's a safe bet. Maybe the community can offer a few free options for you to try out as well.
Try them all. Dedicate a day or so to each one with the goal of having a fully working linux vm and a fully working windows vm at the end of the day. Then you'll be able to write a slashvertisement about what you've learned and we'll all be better off. Take lots of pictures.
Virtualbox.
Any of these work well for home uses. Unless you plan on having high availability and seemless server migration or something, you cannot go wrong with any of these options.
I prefer VirtualBox myself, but also use VMware at work. I also recommend that you try them all. It's not a question of what is best for us, but rather what is best for you.
VirtualBox is the best for a beginner. User-friendly GUI, sane defaults, it Just Works.
Easy to set up (I walked my brother through it over the phone) easy to use (ditto) and fairly full featured.
Virtualbox is pretty reliable and includes acceleration on 64 bit systems along with an extremely simple to use GUI and easy to install guest additions that allow your display to easily scale. It's the one thing from Oracle that I actually use and recommend to others. For your requirements, it's licensed under the GPL v2 and works on Windows, Linux, and Mac.
VMWare is probably the best beginner VM package due to its documentation, support, and polish. But as others have said, they are all pretty good.
I'd recommend virtualbox. It's very easy as are all of the others and free of course.
Since you may be going cross platform at the host, either VMware or VirtualBox are good options. I've personally been using VirtualBox for a while and find it quite easy to use and being free is a nice perk too. Though I understand VMware Player(the free version of VMware) has grown in a a decent general purpose VM solution for simple desktop virtualization like it sounds like you'll be doing.
I use OpenVZ because it can do containers as well as KVM. It keeps you from having to have different hypervisors for each. It also is fairly easy to setup and has a nice web interface for managing your virtual machines.
"My immediate reaction is "WTF? What kind of moron doesn't make things 64-bit safe to begin with?" Linus
My first experience was setting up a BackTrack5 machine in VirtualBox. Extremely easy, and lots of information online if you have a question.
DOSbox...it plays my old games....OK, maybe you mean a more modern VM....geesh, I wish you had said that! LOL!
To start, virtualbox.
Its free, supports linux and windows and freebsd. (And Solaris!! Oh boy!!!) It's also easy to use and works well. For desktop use I'd choose it over whatever desktop product vmware is selling, even if I got it for free.
Microsoft has a free desktop visualization product too but it's documentation is sparse, and it has wierd limitations. It also pretty much only runs windows.
Vmware ESX is a damn nice piece of software, but it required dedicated hardware (hypervisor only! Local console is config and diagnostics only. Can't see your VM's on the local monitor) They have a free version and I use it for everything from my router software to windows instances to a minecraft server.. All on one phisical machine.
There's a free version of hyper-v (The microsoft coutnerpart to esx) but it's setup is downright difficult if you're not in a domain environment.
Virtualbox is what you want as a begginer or desktop for fooling around.
If you want to host a large infrastructure you would go VMware and for VPS hosting you would go XEN.
If you are into embedded systems, exotic architectures, reverse engineering and such you would rather use Qemu/KVM under linux.
They all have fundamentally the same features, you can still run any linux flavour and hook up a debugger on serial port or whatever funny thing you like to do witch each of them.
Virtualbox works out of the box and is the most convenient for running multiple windows/linux/*nix on your usual operating system though.
VMware is easy to use, widely documented and will run almost anything out in the market place. The system you install it becomes a VMware server and you can only install guest. If you want to run a base os like windows or linux, Mac then VirtualBox is good and free.
VMWare and VirtualBox are indeed very easy to use. I haven't used Virtualbox for a while, but I used to have some issues running Linux on it. If you are looking to learn Virtualization in a professional sense, I would look into learning somethign useful like vSphere though.
Hands down.
Get wrokstation for Linux, or Fusion.
Even better yet, use ESXi, and use workstation to toss your machines around.
Always thick provision though.
Virtual Box is _OK_, but the guest add-ons suck.
Xen is a mess when compared to VMware.
Xen is not elegant, it is annoying.
Unless you get Citrix Xen or a fork of Xen that is improved. But that means money.
I personally use VMware workstation on Linux, Fusion on OSX and ESXi for production.
VirtualBox is the easiest free option to get started.
It can run inside a host OS, so you don't need a bare metal install, and don't need a web interface to use it.
It has easy to install and operate clients in Windows and Linux (can't speak for Mac).
It can build VM's easily. (VMWare free options cannot create VM's)
If you are willing to spend a little money, the VMWare Workstation is more powerful and offers similar features to those above, but better resource management in general.
VirtualBox hands down.
I've been working with VMware since ESX 3.5. It's still my virtualization platform of choice, but on my desktop, I now run Hyper-v. It's included as a role in Windows 8, and is painless to install and configure.
"To learn the use of virtual machines?"
This doesn't really mean anything. What's your real goal?
If you want to be able to run multiple OS combinations in order to learn more about OS configurations, that's a goal.
If you want to learn how to program with management tools like Chef, that's a goal.
If you want to abstract some service (to make it independent from the hardware), that's a goal.
Virtualization provides two things:
1 - Isolation from the physical hardware.
2 - Management of the system independent from the hardware (i.e. you can move a VM from one physical host to another, you can copy/clone a VM, etc.)
What is it you're trying to do? It makes a difference in what recommendations make sense!
VirtualBox is free-ish, which is attractive if you want to play on your desktop, i.e. to just have multiple OS for you to "play" with.
VMWare ESXi is free-ish, but takes over the computer it's running on. Really great launchpad if you want to learn about management (it's the exact same as the full fledged vSphere, separated only by a license key), but really annoying if you want to use the computer to do something else (other than virtualization)
Xen is a great free alternative to ESX, but not quite as polished (IMO)
If you're on a Mac and just want to do some desktop stuff, then both parallels and vmware fusion work well (and on Windows or Linux, VMWare Workstation works well)
I'm sure there are other options as well, but it's hard to recommend one without understanding what you're actually trying to _do_......
VMware and VirtualBox are really the two most common and will be the most usable for beginners and the most likely to be used in a workplace environment. If this is for personal use only though, and you don't need the skills to later translate directly into a work environment then Xen or QEMU are really better options depending on the goal of the project. Arguably, neither is as simple to get into as VMware or VirtualBox but both offer more versatility, and QEMU in particular provides a more "under the hood" experience as well a suite of tools for translating virtual machines/disks from one format to another. None of which really matters though if all you want to do is get a "push here dummy" virtual machine up and running. In which case I'd go with VirtualBox, but if you want to learn (and at times pull out your hair) I'd opt for QEMU.
I really wish /. editors would stop pushing questions that don't provide the kind of details one needs to provide an informed answer, rather than the sort of popularity contest questions we keep seeing.
VirtualBox gives you the best cross-platform experience: No matter what your host platform is, the UI will be (close to) the same. This might matter, if you want your host to be Windows (at work), Linux (at home) or Mac (Notebook) and carry your VMs around e.g. on an eSATA or USB3 drive.
ANy of them you fucking idiot.
Just explained to my wife you don't ask questions like that on slashdot.
How dare someone ask a software preference question on /. Doesn't he know this is a politics/religion website?
I too recommend VirtualBox. I use it on my desktop Win 7 machine as well as my four year old notebook running Linux Mint. The fact that it's more-or-less free, and essentially identical on both platforms is a definite advantage. Thus far I've used it to play with various LInux distributions and FreeDOS/MS-DOS. I've even been messing with Windows 98 SE and OS/2 Warp lately, although they required a bit of head scratching to get running.
Virtualbox has crappy 3d support and the virtualized usb works.... sometimes... mostly...
That said, the python/c++ api they made for it is insanely complete (even if it lacks good documentation). I can control the most minute aspect of a running VM.
It is also (mostly) open source...
If you don't care about this, install the oses you care about in vmware and vbox and see which runs better. Nothing beats first hand experience.
VMWare is simple and easy for beginners and there is a lot of third part support for things like VM backups that are also free.
https://my.vmware.com/web/vmware/evalcenter?p=free-esxi5&lp=default
I use VMWare at home on a HP DC7700 business desktop that I picked up that my work was giving away and I have it in our lab at work running on those same type of desktops. I have 6GB ram in them. My home ESXi has 3 network cards. I run my IPCOP router on one card, my "blue" network on another, and my "green" on the third. One cheap desktop running ESXi replaced my white box IPCOP router and allows me to run 4 additional general purpose virtual machines as well. I currently have Ubuntu, 2 Windows 7 machines, and 2 XP machines on it now but not all run at the same time. The internal SATA disk in it is kindof slow but I mount another VMFS via NFS from a second Linux machine. None of that is required though.
If ESX comes with support for all of your hardware, setting it up is literally, sticking in the CD, booting it, configuring a console IP and network settings and the password. Unplg the monitor and KB and you are done. The rest it through the client which you can download directly from the ESX server web interface. If you have hardware that is not built into the kernel, you may be able to find the drivers or you are out of luck.
I've been using ESX in very large production environments for over 7 years so my idea of easy to setup and use may be a little biased because I am used to it.
I also maintain HyperV clusters, it works but no where near the ease of setup.
Definitely VirtualBox. You can literially download an operating system's ISO,fire up VirtualBox, hit "Next" a couple of times and you're done. You don't have to know jack about virtual machines to use it and the menus are very user friendly. It's not something I'd use for serious work, but for learning the ropes it can't be beat.
I've got so much bare metal laying around, these days I've been installing onto a box and accessing it remotely - native performance is much nicer.
This negative comment was necessary to counterbalance the huge number of positive comments that are recommending VirtualBox. It's a yin-yang thing.
Better known as 318230.
its similar to the great answer of JFGI when given an answer maybe this person needs to do some ground work in VMs just so that he can ask questions in an intelligent manner before dropping money on %stuff%.
a challenge for the Slashmind
where can i find a Blender material set for download that includes Silk, Satin and Velvet?? (bonus points if you know where the blendermats collection can be downloaded NOT FROM ESNIPS.COM)
please note only actual live download links will work
Any person using FTFY or editing my postings agrees to a US$50.00 charge
Ive used most of the mentioned VM solutions - VirtualBox and VMWare are just install-and-go. VBox seems the best for hassle-free try-it - especially if layered on a supported platform (VMs on Linux are at the mercy of the kernel changing on every release).
I would echo the sentiment that try one -- any one; learn it foibles or limitations (you may be hard pressed to find them), and if unhappy, try another.
I recently tried to get virtualbox to run inside Xen. It wont. But Xen inside VirtualBox - was impressed it worked enough to debug a problem at the kernel level, and I use VMWare for some things (keep running out of disk with so many vms).
The only one I havent tried is OpenVZ - may have to try that one day
That was awesome
If you have a spare machine that you can use uiu really can't beat ESXi. It is fast easy and no knowledge is required on most machines. It has great support for most hardware.
I would street clear of desktop virtualization, unless you have a heafty desktop. You will get so much better performance out of something that is bare metal and you can try all of them to see what is best for you.
The systems that I hear most in the enterprise are VMware, Hyper V, KVMand VirtulBox.
I wouldn't go down an unknown or non enterprise path if I were you so your knowledge from this is transferrable to your paycheck and your results are easily reproduced.
For beginners, hands down, VBox.
What VM solutions would I be best served by if I wanted a virtual windows 7 machine to game on? I was recommended Xen initially. Is it possible to achieve nearly the same performance as a standalone system if I purchase the right hardware?
Do you want to remain ignorant than pick one that has few options and is dummied down for a beginner. Or you could pick what businesses use and want to see on a resume. I use Virtualbox and VMware at home as I have different needs that each provide. But VMware is my choice as it is faster and offers more options.
Look around the internet and see if you can find some free virtual machines somewhere that you can download. Vmware used to offer some, I expect the still do. Go with whatever software the VM is made for. Just to get your feet wet, to get you an idea of whats going on. You can branch out from there. There are lots of virtualization suites. Once you are comfortable playing with those, try building one yourself. It's not difficult, but having an example to refer might be helpful. It's not that hard, but good luck anyway.
Virtualbox was my first hands-on experience with virtual machines. Easy to use and free. VMWare Workstation is really nice but pricey for home use. VMWare Player has worked in spots where Virtualbox has not. It was just one issue but it cost me a lot of wasted time. Once you are comfortable with products like virtualbox or VMware workstation/player the next step would be something like Xen or ESX.
Its free
Honestly, I really really don't see why people make VMs out to be the big deal that they are.
VMware gives you all the tools for Vsphere/ESXi to use a GUI with it, sure they have their own commands, but seriously they have dumbed everything down so much that is pretty painless to manage pretty much anything from a Windows, Mac, or Linux desktop.
Just finished my CCNA and didn't see what the big deal was about the cert to be honest. Realistically you can look everything up online. They even recommend in the books that you subnet using websites that do all of the work for you.
fear the rea4er else to be an
Virtual machines are just a "computer within a computer", there's nothing about virtual machines per se that you won't really know from using modern computers. You will need to know specifics on software packages and tools for those packages, but those are very specific to the brand of virtualizing that you're doing.
Learning "virtual machines" is kind of meaningless in and of itself, and unless you have a pressing need to become an expert in a specific package, don't tie yourself to anything specific. If you're just trying to run linux and windows (or something similar) just do it; or if you're planning on an OS zoo, do that.
As far as desktop software goes, virtualbox is decent for free; but I've found it to be unstable if it's pushed too hard. Vmware workstation is much more stable, but a pain to pony up the cost.
Look, this gets complicated and there's professionals that do this...it's good for you to learn. And I'm going to get downmodded, but I'm an AC so I don't give a damn.
You're asking about virtualization, you know what it is. So you're either competent, or you're some MCSE that needs to be babysat to learn how to wipe his own ass without taking the network down.
That stated
* If you can't figure out virtualbox, you're an idiot.
* If you can't figure out vmware player, you're probably an idiot -- but maybe you thought it would let you set up machines instead of just run them.
* If you can't figure out vmware workstation, you're an idiot
* If you can't figure out vsphere or ESXI, you don't know how to use google. Start with vmware player or workstation and try again later.
* If you can't figure out Xen, you haven't tried to read the damned instructions or checked Google for ten minutes.
Finally, I suspect -- but have not verified that if you can't figure out HyperV, you probably also have something wrong with you.
Now, if you're trying to do something beyond just run them and do the basics, your questions might get interesting. Setting up hot failover, shared storage, snapshot management... these would be good questions. You've just asked the damned equivalent of how to install an operating system or start word and betrayed that you haven't even tried it, or aren't competent enough to try it.
It's literally a 10 minute task from install to running a new VM to do all of these in the basic non hardware hypervisor platforms.
Figure it the fuck out and come back with real questions.
... self-explanatory really. Just try 'em out. I'd recommend VMWare for Windows clients because the integration feels a bit more polished, but you can't really go wrong with either one.
I don't consider myself a beginner but I thought VMware dominated this industry. It's all I ever use.
Then decide.
---- Booth was a patriot ----
I use both VirtualBox and VMware Workstation. I prefer the VMware, but VirtualBox is free...I like free...so, for personal use, of those 2 options, I would use VurtualBox.
A very cool thing about Virtual Box is that you can download several images pre-installed with free OS's. Sometimes the guest additions are already even installed for you. Its a great way to see why this "FreeBSD" is all about, or try out some more exotic OS's, like, ReactOS. Just download the file and point a new virtual machine to it. Get the images here.
I recommend using kvm on a 32-bit host & then swearing for hours at the machine because it doesn't work & finally banging your head on the keyboard until it's so full of blood that it don't work neither...
... if the option is even halfway decent. In this case, start with Virtual Box. It runs, and runs inside, all major platforms. If you have a Linux ISO or Windows CD you can go from zero to a working VM in about 30 minutes. There's nearly no learning curve to get your first VM up and running, and IF it doesn't fit your needs, you can start looking to see if it has options that you aren't aware of, followed by looking at alternatives.
That said, VirtualBox has fit my needs (mainly testing) just fine for years. VM software is like word processors: they're all pretty comparable and 90% of people's needs can be met by any one of them.
Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
For Windows hosts, Get Win8 Pro Upgrade for $40 and Hyper-V is available at no extra charge. Just enable and reboot. I installed Debian Wheezy on it two days ago. Runs great. With CentOS (or RedHat or Windows or SUSE) guests, you get the Windows Integration Services guest tools, and with a little work, you can use them on Debian and (I hear) Ubuntu. Rumor has it that Microsoft is going to add Debian "officially" at some future date, but I'm skeptical about that one.
If the OP knew a lot about circulation, he could look at different hypervisors and interfaces and make an informed choice. Since he's not real familiar with topic, he would only be judging which has the best sales pitch. He's trying to decide which one to learn on. Since he doesn't understand rhe field well enough to make informed judgement, asking those who DO is smart. It's a very good question. I bet you're the arrogant fool exec who chose IIS as the proxy server based on "feature lists" rather than asking the geeks who actually know about such things.
VMWare Workstation is better than full blown Hyper V even IMO:
Better inter-connectivity with your desktop (IE. copy and paste works 100%).
Better video performance.
Better usability (it isn't the same key combination for ctrl alt del as will lock the host unlike Hyper V if you're RDPd).
Better network configuration BY FAR (Last time I checked you can configure 10 virtual networks, each with DHCP if required and as either NAT, Direct to your external network or Private).
But then VMWare Workstation costs about $200. If money is your main factor then buy Windows 8 with that $200 instead and have inbuilt Hyper V that will do basically what you want and have Windows 8 to learn as well (But you can always learn Windows 8 virtualized with the 180 day trial). Hyper V is a good product for it's price (free basically) and does do something things better (ie Console Connection, Memory Management etc).
If money isn't your main factor and you can afford $200 then I highly recommend buying VMWare Workstation - For what you want to do (visualize on your own desktop) it is the best product available by far.
I've used and continue to use all of them. HyperV loves to lock up (the entire hypervisor) for no reason, VirtualBox is good but doesn't have the hardware support you're likely to want, and Xen is... ugh.. no. Just no.
If you have a spare machine laying around, try the free bare metal VMWare hypervisor, ESXi. I've used it in high-exposure, publicly accessible corporate environments, and currently use it both at home and on a dedicated machine I rent from limestonenetworks.com. At work, our entire infrastructure is virtualized with a licensed (i.e., paid for) three machine ESX cluster.
If you don't have a spare machine, my advice isn't likely to be popular, but it's the best solution when it comes to compatability, support, and performance: Install windows and buy a copy of VMWare Workstation for it. Workstation has a lot of great management features that the free ESX does not have as well.
Plenty of other options will "work", but none will work as well as VMWare, period.
Which Virtual Machine Software For a Beginner?
No.
I've been using VMWare Fusion on OS X for a few years to run WinXP & 7 as well as Ubuntu. It's gotten steadily better and faster over time, and I have no issues. I've also tried VirtualBox, used it on both OS X and Ubuntu hosts, and while it's good it's not as polished as Fusion. I've never used Parallels, but recent reviews tend to give it a slight advantage over Fusion.
I'd suggest that you try the demos for Fusion and Parallels, see if either is worth the cost or if the free alternative works well enough for your needs.
Ignorance and prejudice and fear
Walk hand in hand
BTW, which is one better, GNOME or KDE? My friend said it's whichever one I preferred, but I think he only said that because he doesn't really know, LoL. I mean, one of them has to be better, right?
I mean, really, what is this? Since Dice Holdings took over, does ./ now have to run weekly charity posts or something to improve its image and "accessibility"?
News for nerds, stuff that matters, and the velveteen touch of kindly old sysadmins. Watch as their eyes twinkle with delight at being able to help you solve why Outlook won't let you download that CuteKitties.VBS attachment some nice stranger sent you!
For software test scenarios, I find VMware Workstation has just about everything you'd ever want. Its snapshotting feature is especially impressive, if you're diligent about it. Example: You install Windows, clean from the disc, that's a snapshot. Then you run Windows Update a zillion times to get everything up to date, that's a snapshot. Then say it asks you if you want to upgrade from Internet Explorer 7 to Internet Explorer 8. You do; that's a snapshot. Now you can flip back and forth between the two states of the VM; now you have IE7, now you have IE8. Now let's say you want to install something else in addition to the base Windows install. You can install it on both snapshots -- once on the IE7 state, and once on the IE8 state. Now the two VM states have diverged, and VMware forks them for you. You can then keep going, making new snapshots along each fork. And so on ... and you can actually navigate around your little branching tree of snapshots with a GUI, resetting the machine to the state you want, whenever you want. It's very useful. That said, it looks like the current list price is $250, so that might be out of range for someone who just wants it "for personal use."
Breakfast served all day!
VMware tends to be fussy about the hardware. I had a non-descript Athlon dual core that ran VMware just fine but lacked horsepower and wa maxed out on RAM at 4GB. I decided to buy a 6 core Athlon, new motherboard and 16 GB of RAM. VMware installed just fine but the clock drifted all over the place (several seconds per minute). Finally gave up on VMware and went Xen. Xen worked just fine but lacked all of the nice management tools and virtual networking stuff that VMware had. SIGH.
Also, it will only install if you have a supported network card in your target box. Check the hardware requirements.
If you want to try VMware, there is a free version: http://www.vmware.com/products/vsphere-hypervisor/overview.html
Oh yeah, one other downside of VMware is the management console only runs on Windoze (at least when I was using it about a year or so ago). You will still need a separate, standalone Windows box
Cheers,
Dave
They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.
Ben
Now it isn't.
All of the above work well and stuff like virtualbox is a free download away.
In some cases I've migrated live systems to virtual with nothing more than clonezilla and virtualbox on what must have been close to the default settings.
stay away - this is an overzealous project, attempting to lasso in too many continuous moving parts. The ambition is great, but in today's market, I don't give a shit about learning some BS abstraction API layer. When the underlying vendor changes his/her design adds features etc, I don't want to wait for the feature, I want it now.
Open standards are great, but seriously things have gotten to the point of ridiculousness with everyone and their momma trying to enforce their own form of open. I will hands down choose Amazon over Crapspace any day
If you want to do virtualization of servers (most likely headless), then KVM is going to work great. The VMs on these machines you'll likely work with remotely. There are desktop clients for KVM or Xen, such as virt-manager or gnome-boxes, but I find video drivers, particularly in Windows are slow and lack OpenGL or DirectX support. virt-manager is nice for managing a cluster of KVM or Xen machines. You can use one instance of virt-manager to connect to any number of hosts and manage them or view their consoles.
I have a local server for the house that runs KVM virtual machines. I've got several Linux vms for trying out things, and I have a Windows XP instance that I access using rdesktop over the network. I also have two xen-based virtual machines hosted by Linode in data centers.
Gnome Boxes is an attempt to make creating local KVM virtual machines as easy as VirtualBox or VMWare, if you do want to us KVM for desktop virtualization.
For local desktop virtualization, VirtualBox or VMware are still your main options (Parallels being a non-free option). You'll probably want to just start there. Desktop virtualization can do things like integrate a windows desktop in a VM with your linux desktop so you can go between windows and linux windows (never as slick as you think it's going to be, but it works).
http://lmgtfy.com/?q=best+vm+software i hope it does not break the interwebs by finding this /. story
My favorite is VirtualBox, especially for a beginner. Runs pretty quick overall, has decent options, and seems to support a lot of hardware with a fair amount of configuration options available, but not required. Another great feature is that it runs on Windows and Linux hosts with the same UI, so you won't have to make any transitions there. I've also seen a web UI if you need to run it in a headless environment. I haven't tried it yet, but you can check out at http://code.google.com/p/phpvirtualbox/ There's also some headless and cli features available, so you can script more things that way as well. We currently use a dedicated host machine with 4-6 VMs running at any time without any issues so far.
Vmware ESXi is free and it is very easy and extremely reliable.
But it is a bare metal hypervisor, so it doesnt need Windows or Linux installed first.
Best option in my opinion.
Jim
Virtualization is pretty easy in practice. Understanding the theory behind virtualization is what tends to separate the men from the boys. Management of larger virtualization infrastructures, storage, etc... Also tend to be pain points.
I've personally worked with KVM, Xen, and various VMWare products. My usually recommendation is to start with the free version of ESXi available for download from VMWare's website. Although ESXi alone lacks a few core features (you need Vsphere for live migrations, right-click cloning, DRS and a bunch of other things) it does introduce a lot of the core concepts in ways that are fairly easy to wrap your head around.
Understanding how to do the following things are a good start:
- Use over-commitment to make better use of available resources.
- Set reservations, resource pools, and shares to keep critical systems humming along when someone in the engineering department decides to write a fork bomb on a dev machine.
- Live re-size disks.
- Manage virtual switches & virtual networking.
- Optimize virtual guests to run under a hypervisor
- Learn about ballooning, swapping, page sharing, etc.
- Learn how to monitor VMs, and debug disk/network/cpu/memory issues using command-line utilities, such as esxtop.
In general, ESXi is a great way to setup a virtual lab. I usually create a pair of virtual switches; one attached to my ethernet interface, one strictly external, and I route between them using a dual homed firewall distro, such as ZeroShell. This is a great environment for playing with DHCP, and other stuff that could break your home network.
For what it's worth, being a good Virtualization admin usually also means being a good storage admin. If you can get your hands on the netapp simulator, it's absolutely worth playing with.
Finally, knowing how to mess with ESXi does not make you a good Virtualization Admin. Read some books. Mastering Vsphere 5 by Scott Lowe is a good start. It covers everything you need to know about VMWare, and hits on storage and networking as well.
Finally, while ESXi is a great tool for corporate use and to learn virtualization theory, I strongly recommend gaining some experience with KVM. If you know what you're doing, KVM is much more powerful than the stand alone ESXi product. It's great for small businesses, or business that are banking on open source infrastructure, since it isn't artifically neutered the way standalone ESXi is, and doesn't have major licensing costs (unless you insist on RedHat Enterprise Virtualization.) If you need something with enterprise management capabilities and don't mind deploying bleeding edge code, the upstream project for RHEV is available on Fedora. Checkout the oVirt project - they are doing some very cool stuff.
VMWare Player and VirtualBox are probably equally good for what you want.
The only real advantage of one over the other that I've found is that the free VMWare Player seems to pause traffic on the network connection every IIRC 2 minutes for about 5s. Not a huge problem but was something I noticed when trying to stress test some code. BTW, I was running Linux Mint as the client and Windows 7 as the host if that might have been the reason. When I tried on VirtualBox everything just worked without any trouble.
Why do people here use VM's? Just for work? Just to test things?
Can I update your quote to someone that is less of a crazy sociopath?
"Reality is that which, when you stop believing in it, doesn't go away." - Philip K. Dick
Ayn Rand is the person you quote when you only want other people who are off their meds to listen to you.
vSphere/ESXi is not the type of hypervisor he is seeking. It takes complete control over the hardware and it is picky on hardware, for an example it will not work with Realtek network cards. There is a HCL that you can refer to to get best results. I have built a whitebox ESXi hypervisor by replacing the network card on a desktop machine, and using a standard sata controller.
For what he's looking for, vmware-server or vmware-workstation is recommended as both run on top of an existing OS. I remember vmware-server being free, I'm not sure about vmware-workstation.
VCenter has an almost complete web interface that comes with version 5.x paid-for versions...
It's also installed on the VCenter VM Appliance.
"We know what happens to people who stay in the middle of the road. They get run over." - Aneurin Bevan
OP will put it right next to "The Cloud" and "Web 2.0".
Learn how to use your physical machine first.
VirtualBox for newbies and VMWare for advanced users. If you're really into virtualization after using it for a while you should look into Proxmox VE--it's incredible.
It will not work with SOME Realtek cards out of the box but there are many other cheap cards that it does work with like this one, I know because I have it.
http://www.newegg.com/Product/Product.aspx?Item=N82E16833156139
In my experience, vmware trumps vbox in twos critical areas: backups and portability. you can take the directory with your vms and literally drop them into into another os with very little if any changes (the only changes may be to sound card name and shared folders paths).
You cant do that with vbox. If you change os, or try try to move vms without special and often long running and obscure seeming preparations and your vbox wont run ever again and often even if you succeed youll loose all the snapshots and still ahve to edit the vm before it's can be used.
To me that ease of backup and portability is well worth the price of vmware if you can afford it. otherwise vbox is great but be prepared for an unreasonable amount of pain when you want to switch from windows to linux (and/or back), move the vms to another system / os and more pain on restoration then is reasonable.
see:
how it's really done in my experience : http://linuxfordummies.org/how-to-backup-and-move-virtualbox-machines/
How we all wish it would work but never seems to work for me: https://www.ehow.com/how_8110816_copy-move-virtualbox-machines.html
Google for wildly varying stories of vbox backup/restore pain.
I have both VMware Workstation and Parallels, and they both work pretty well. I think VMware edges out Parallels, but if you get a deal on Parallels I wouldn't overlook it. They both run under Linux, Windows, or Mac OS X, and aren't *too* expensive.
I would suggest the free Hyper-V Server from Microsoft. If you really enjoy beating your head against the wall.
it's free, has excellent features and will familiarize you with using VMs.
They're using their grammar skills there.
http://en.wikipedia.org/wiki/Z-machine
http://en.wikipedia.org/wiki/SWEET16
OH, you didn't mean THOSE kinds of virtual machines..
Got a small system here that I use for learning.. I started out with VMware workstation 8 and 9. I've since tried Xen and VirtualBox. VirtualBox works great with CENTOS as the host OS. Very stable.
1) I run linux but occasionally need windows-based software for desktop sharing or some corporate-level thing so I have a Win7 install in VMware for that
2) For emulating our product (which runs either 2.6.27 or 2.6.34 kernels) on my laptop (which runs 2.6.35 currently) I just fire up a KVM-based virtual machine.
3) I run Fedora but I'm looking at a media player where the build environment assumes Ubuntu...so just fire up Ubuntu in a VM.
Player is free, and works on windows/linux.
Yeah. But you have to pay for it. If the OP just wants to experiment with different environments, I'd suggest he go with what he can try for free. VMware ESXi is free as in beer but at least the means no out of pocket for just trying it. I used an old Dell PIII (1.6GHz) running Windows XP Home to run the management console. About the worst thing about ths arrangement was that I only had network access to the Dell box so I was running VNC on it to provide a remote desktop (1 level of indirection) and then ran the various VMs (2nd level of indirection). Let's just say that the cursor didn't keep up with the mouse; not even close.
Cheers,
Dave
They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.
Ben
From SmartOS's wiki
"SmartOS is a hypervisor lean enough to run entirely in memory, powerful enough to run as much as you want to throw at it. Provisioning is blindingly fast, thanks to zones and ZFS file system creation."
More at http://wiki.smartos.org/
I kind of missed that since the OP mentioned Xen (which takes over the host). You're probably right that he didn't know enough about various virtual environments to ask the right question.
I used VMware workstation for a while about 10 years ago (long story). It was definitely accecptable (even back then). Not sure what VMware has to offer in the way of free trials for workstation other than their pre-canned VM images. That's the only gotcha with that route.
Cheers,
Dave
They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.
Ben
Virtual Box is a great way to start. Load it up and it just runs. I use it often at my home to bring up whatever might be needed.
KVM though, is a great way to learn the finer details of running Virtual Machines. Start by using the command line and them move to something like virt-manager. Heck, run virt-manager on a virtual machine in the box you build.
VMware is a good product but not as good as KVM (imho). VMware has all sorts of wonderful tools that when you get the hang of using, makes things very easy but it has a tendancy to be difficult to work with if the hardware is not just perfect (recently had a box that swapped ip addresses between two nic cards - no easy cure). The documentation can be a bit difficult also.
I run KVM in a production environment have never had a hiccup.
The D3D support in Virtualbox asplode every time I use it. It usually works in vmware.
Given a total lack of criteria, I will assume that they may want windows support, and so I'll suggest vmware every time.
If you only want to run Linux, virtualbox is probably fine.
If you choose vmware player, you should also install qemu so you can get access to its virtual disk management command. vmware player is missing such a tool (it is present in server) and qemu's is superior in any case.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
Try that one- because you should train the weakest like the strongest. Jump head first into this amazing free hypervisor that is akin to an empty swimming pool. Test out your skills with powershell and re-reading MSDN until your eyes bleed. I got it setup for my former boss who went on to destroy no less than three VMs in succession in less than 30 minutes. But on the really real best VM software for beginners is parallels on the best computer for beginners the Mac. My question is why would a beginner truly need a VM when the mouse itself is such a chore to operate? Two sets of cursors may blow apart the beginner mind so be forewarned.
VMWare workstation. that's the one I learned on about 12 years ago. The interface is much nicer than virtualbox. downside is it isn't free
ESX/ESXi are very picky. If I were going to run that, I'd build a machine and hand-picking all devices from the hardware list, even the NICs, and disabling the ones on the MB.
However, VMWare Workstation is not very persnickety. It doesn't require SLAT, and it works on a wide range of machines. Plus, you can move machines to and from your vSphere cluster.
On a Mac, I highly recommend VMWare Fusion. The price is a lot less than VMWare Workstation, and it does come into handy.
If you're planning on using Windows or Linux for your base platform, then VMWare Player will suit you nicely - it allows you to create and run VMs just fine.
VirtualBox allows those platforms, plus quite a few more, including my favorite, Solaris x86/x64. Beats using Linux for a desktop for my needs, ymmv.
There are quite a few others of course, there's one based on the OpenSolaris fork IllumOS called SmartOS being developed by Joyent, who works with Nexenta giving back kernel/driver/software updates as developed, making both sides better for everyone. Gives things like ZFS, Dtrace and the Solaris Kernel with KVM and Containers - a very smart and easy to use platform, much like VMWare ESXi, except even more capable.
Don't settle on just one, give several a whirl, see what you like and dislike about each, one will surely be to your liking, and do what you want it to do.
Hardware compatibility issues are a major bitch. If you're a noob working with 2nd-hand hardware, you're even more likely to run into problems. I was all fired up this summer to turn my old Dell XPS 720 into a VMWare host and I ran into all kinds of problems with RAID setup due to lack of support. Sure, there *might* be a fix, but scouring forums and manuals when all you want to do is set up a web server is a major deterrent. I ended up not getting any of my summer projects done because of all the hurdles.
Now, if you've got a supported box, VMWare is great and I definitely recommend the infrastructure client.
I swear to God...I swear to God! That is NOT how you treat your human!
If your hardware is on the supported hardware compatibility list [ www.vmware.com/go/hcl ] I think it is a good choice for a couple reasons: it is "enterprise" level software, so you get a working knowledge of what you might see at a job, the overhead is significantly less than running guest OS's in Windows (ESX runs on a thin version of Linux), and finally, you don't have to worry about any of the administration tasks of the host OS. The only downside is that you can't run the management software on the same hardware - gotta have two computers (ESX - the server and a Windows host to be the workstation).
I have an older Intel Q6600 Quad core with 8gb ram and a 500gb data drive (all "junk") running Two Win 7 desktops, 3 ipcop instances, and 4 Ubuntu server instances. Pretty decent for something that took less than half a day to get running.
For ease of use and the ability to actually read and understand the underlying source code, qemu is hard to beat, as most of Fabrice Bellard's projects are.
I used to like VMWare, but then they binned the console and forced that gaudy and cumbersome web UI upon everyone. v1.x is still good, but it requires some security adjustments for Vista or newer. It's also a pain to install on Linux.
On that basis, I'd recommend VirtualBox. It's open source, painless to install anywhere (often available in Linux package repositories) and just as good as VMWare, if not better in some ways. It also includes a slick "seamless" mode that integrates the guest OS windows into the host desktop (a la Parallels).
I've been using VMware at work for quickie testing. Seems to work well for this and the licensed copy allows snapshots which are very nice. I understand from developers doing work for us that they run into issues with VMware workstation when they script things to happen with the VMs. VMware player works okay for home use as Workstation is a bit pricey.
Virtual box, for me at home and some at work, works great! I don't know anyone exercising the API so I can't comment on that but for home use this rocks and is free!
Above that comes ESX which is also free with advanced functions disabled. This isn't something you run on a desktop but I've recently set it up to consolidate multiple other servers and this works terrific for a 24x7 system doing many mundane things like storage. This gives you experience with VT-d and all sorts of other goodies like figuring out how to do graceful shutdowns from a UPS signal etc. Fun stuff for sure and a good system to "graduate" to in my experience.
Not played with Xen, sorry....
Build it, Drive it, Improve it! Hybridz.org
I recommend Xen, because it's a bare metal hypervisor and it starts with an X (how cool is that?).
Those are two answers.
They are the most native to each major OS available. Apple doesn't really play in that space, but there are versions of VMware for MacOS X, Parallels (more or less for gaming on Mac OS X) and I think Darwin could support QEMU to some extent. Vbox runs on anything I believe.. unless OSX just went through a Service Pack update (Apple calls them releases) in which case the vm platforms will be along in a fortnight.
But you should be thinking more independent than that and focusing on [a] Backups [b] antivirus/malware [c] Patch management.
A virtual machine is just another form of physical machine, with the added disadvantage that you must also manage a hypervisor (which also needs the three things above).
The really nice thing about VM is that it frees you from hardware dependence when [a] recovering [b] testing backups [c] performing an emergency restoration of service. Most restores rely on the ability of the hypervisor to "mount" the storage container and extract instance in time files and data from a volume that went south and was not consistent, VHD, IMG, VMDK, TIB, ISO are examples. Testing a backup ranges from booting a virtual machine from the backups themselves with deferred writes to separate write update files blended with read-only backup volumes to fully making applications available to test the data. Performing an emergency recovery is when you can't afford a long outage and must be backup in some sembalance of go forward service at a reduced capacity.. with the ability to failback from P2V to V2P from your backing stores.
Today I can only think of 4 or 5 virtual platform and backup strategies that offer all of the above.. and the plain "vm" platforms like VMware, Vbox, Hyper-V and KVM (or Xen) don't represent the whole picture.. they are are naked as a bootloader on a PXE server.. their is not real met on the bones.. no complete thought that brings a project full circle.
Newer vm technologies roughly branch from jvm, davlik, or ios type "mini-vm" cores and blur the line between vm and virtualizing a library into a threads machine. It's funny how we';; work really hard to avoid learning how something works.. but making the programming that much harder.. just to claim its easy avoiding the heavy weight of a full virtual machine.. and then what do we do? we run the whole multithreaded javascript virtual machine, in a virtual machine on a virtual machine application development platform, inside of an operating system virtual machine on a virtualizating hypervisor on a virtual core, hyper threaded, multi-core CPU. Running Vanderpool or Pacifica.. oh the irony.. lol
Of course Windows has VHD virtual volumes now and Linux has LVM, if you prethink this out you could "kind of" derrive your own "VSS" like Virtual Machine Snapshot backup system at the block level.. but doing it yourself these days.. isn't cool.. the brain capital doesn't out weight the deterministic factor in Project Management. Certainty and reproducibility trumps development time even by SysAdmins.
Or run a Windows VM and VNC to it to run Vsphere....
Would be nice to know if the OP wants a desktop or server sized solution to play with. If just desktop there's plenty of options....
Build it, Drive it, Improve it! Hybridz.org
They have VMplayer and now it allows you to create new VMs not just use appliances without jumping through hoops. It works well but no snapshots I don't think, you can obviously copy a VM manually. Workstation is good though if working with ESX as I swear you need an array of tools to get stuff to convert on it. Yeah I know about the standalone converter...
Build it, Drive it, Improve it! Hybridz.org
;>p
Some people learn just by reading. Others learn even better and get deeper comprehension by learning about the derivation or how the system was developed. This is where history of science becomes useful. This is where people who want to build up their own box with Linux frm Scratch learn a hell of a lot more about what the intricate bits of the gnu and linux world are and how and where they interact and where the little config+rc files all can go.
You can learn linux distro sysadmin by reading a book or by running your own system and adminning it yourself: create new users, learn about restrictions, set up sshh, put in restrictions or quotas on disk usage, learn to put partitions different places to see what's disastrous and what isn't.
Sounds like the same with virtual machines: you can read all about it, or since there are so many opportunities to run some free/opensource versions (instances?) of virtual machines, why not actually build one, install an operating system from scratch, and see what the whistles and bells are in it?
Different people learn different ways. No-one learns to ride a bike by reading about it. No-one learns to swim just by reading about it. Some activities are easier learned by doing.
Its not THAT picky if you do research. I've got a dirt cheap 1150? Board with an i7 on it that worked great including VT-d except I chose a 2600k back before folks realized it has VT-d disabled - grr! Oh, onboard NIC worked fine. Model number not handy but if anyone cares I can find it.
I have a Tyan Xeon board too. 3 NICS with one being iPMI/iKVM. Not super cheap but maxxed out what ESXi can run. Single socket 32gig ECC. This is what I graduated to :-)
Build it, Drive it, Improve it! Hybridz.org
Virtual box is nice and easy and a great emulator for beginners. VMware player (free) does a MUCH better job with 3D video, but is a little harder to use. Also, my video rating with VB running Win 7 w/Ubuntu host is 2.3 w/VMware it is 5.5, A very significant difference. One thing I have noticed though is VMware uses more memory in host (Ubuntu) than VB.
If you could reason with religious people, there would be no religious people
VMWare Workstation 9 also has a web interface, though I havent had a chance to really mess with it. Its also substantially less expensive :)
Recommendation to OP: If you decide to pony up for VMWare workstation, you may be able to get an academic discount if you are in school. They make it pretty painless to order online.
These days I am using Vmware workstation (my company had a license) before that i use VB mostly. However for server side i will recommend KVM (Kernel Base Virtual Machine). In my previous jobs I used User Mode Linux and then Xen and ended with KVM, see you upgrade with the way Linux progress :)
http://askaralikhan.blogspot.com/
I recommend punch in the face.
As if we need more VMWare jockeys who use VMs as a way of running Linux on Windows, and "maintaining" it as if it's a Windows VM.
Contrary to the popular belief, there indeed is no God.
"VMware installed just fine but the clock drifted all over the place (several seconds per minute). "
Was it the clock of the host or the clock on your VMs that drifted ?
I've got a similar problem on my Linux VM's and fixed it by setting a minimum cpu freq. to 50
There are a few docs in the VMware knowledge base about clock drift on AMD CPUs. 90% of the issues are solved by turning off "Quiet'n'Cool" or any other power saving feature in the BIOS that alters the clock speed. The same advice goes for Intel chips with SpeedStep. The clock fluctuation really screw with the VM's VCPU emulation. I turned it off and my drift dropped to a minute or so a week which is easily fixable with a NTP service on Linux.
Private use for beginner:
VirtualBox - simple and juz works - only remember about host and guest extensions
Company use where you have ample funds for support:
VMware
Company use on a shoestring:
KVM
Which VMware? They have 6 VM programs!
Everyone saying to use "vmware" appears to be clueless. VMware makes 6+ virtual machine programs.
* Workstation
* fusion
* Player
* Server
* ESX
* ESXi
When you say "vmware", you are not being clear.
Desktop virtualization is very different from server virtualization. There are very different requirements. If you are starting out, then you probably want desktop virtualization. Nothing beats Workstation. Nothing, but it has a price. OTOH, it works and has some awesome features that none of the other option provide.
If you want free and "good enough", then VirtualBox or Player are probably the best options for desktop virtualization. None of these are suitable for server virtualization. I've used ESX, ESXi, Xen, KVM, LXC, UML, and even tried to use virtualbox for server virtualization - these days I'm migrating all the VMs to KVM. KVM has fantastic backing that will be hard for the other guys to beat AND it is free. I've never had a KVM VM crash - NEVER. Xen VMs are pretty stable, but after kernel updates I've had VMs refuse to boot. ESX and ESXi is commercial and VMware has been screwing their customers with license cost changes. They've gotten greedy. Last June, we shutdown our last ESX and ESXi VM hosts. We never intend to turn those on again. NEVER.
I run Windows 8 and I've tried both the built in support for VMs by running an XP virtual machine, and Virtualbox. I prefer the latter, I use it now to run Linux Mint, and also successfully tested Haiku alpha 3.
"..One hosts to look them up, one DNS to find them, and in the darkness BIND them."
Hyper-V on Windows 8.
Seriously, AFAICT, there are many FOSS VM solutions out there by now. And from what I've heard, none of them are extremely difficult to set up or run. They just follow different obvious or more hidden concepts and strategies, and thus may be suited better for certain setups. But as I say, a good FOSS project will have a good website, either by dedicated people who respect their webdesigners (allways a good sign of a professional non-elitist crew) or build by a dedicated company that puts money into the project.
Enter FOSS VM into Google, broadly scan the websites and take the one that 'looks' best and take it from there. If you run into requirements or usage scenarios that don't fit the one you then know you want to cover, switch.
Good luck.
We suffer more in our imagination than in reality. - Seneca
From Citrix's Xenserver... or be prepared that someday, after some updates, your hardware could get out of their HCL...
The first update of xenserver 5.6 left me with a cluster freezing with no apparent reason... reverting to the unupdated 5.6 let me survive... But with PV you must keep the DOM0 updated...
Switched to Vmware, almost happy since then...
If you have time, have a look at some open source solutions... When evaluating other solutions, I found Proxmox (based on KVM and OpenVZ) promising, though not yet ready for my needs...
http://pve.proxmox.com
I've used many. I started with MS Virtual Server 2005 because it could create shared storage, which I needed to experiment with MS Clustering. Our corp IT infrastructure is VMware ESX/vSphere/vCloud, and now I use VMware Desktop for my local stuff. But on my office machine money isn't a concern, I have the "Ultimate" MSDN license.
At home, where money does matter, I use VirtualBox. I find it very easy to use, great UI, and has all of the features one needs. It has a virtual network - but I haven't used it yet. I use virtual networking in VMware to simulate different LAN configs, mostly to play around...I'm a software Dev...not IT.
My recommendation... Start with VirtualBox and learn the concepts. It is easy to setup, has all of the features you probably need, and has reasonable documentation. It also seems to be compatible with both the outside equipment/OS, and hosts everything inside that I've ever tried (including Win8). I think you'll spend less time farting around with silly stuff and be able to have success quickly.
Then if you want to try a bare metal config, I suggest looking at VMware ESX...it is free for a single machine, and its the real deal. It is well documented, both by VMware and the fanboy clubs ;-). It is complex, so there is a lot of doc to read and get started. And as others have pointed out, it has hardware requirements.
You can be reading up while enjoying VirtualBox.
Also, I suggest learning about iSCSI. There may be times that you need shared storage. I keep a vm running Windows 2008 as my storage machine. It is simple. Remember, I'm just experimenting with different things, so quick and easy is what I'm looking for. In real life we have a NetApp.
Have fun.
First of all, if you want a simple solution that just works for very simple virtualization, vmware player works fine (free for personal use, not good for professional use)
Next step is virtualbox, lacks a bit of polish but has many really nice features (Open Source Software).
Next step is WMware Workstation, has most of the advantages of virtualbox (and some other nice ones), still very much a desktop application, costs some money, probably about the same as office (can't remember).
Next step is ESXi, that is, a good, reliable hypervisor, this is ACTUAL virtualization, however, this is for headless operations only (so this requies a dedicated machine).
Next step would be Microsoft Hyper-V, basically, you get a host windows OS which can host other machines and, even if it crashes, the guest OSes are still there, it works decently but is expensive.
vSphere, this is basically the same as ESXi but with more functionality, especially good cluster functions.
Xen and KVM are awesome as well, but something tells me you are not the "Learn it the hard way" type, so I don't recommend them.
Hypervisors are really just specialized and optimized proprietary Linux kernel distros. They are as bare metal as running a VM/KVM on GNU/Linux, but without all the GNU tools, and with special tools for the VMs.
VMWare Player is great and runs on both hosts you mentioned. VMs created with it can be used on all VMware products if you decide to get more sophisticated later. It also lets you migrate to VMWare Fusion on a MAC if that becomes your host of choice.
There are so many different linuxes & so many different windows. Which one should I try go get working at the end of each day?
I don't have a camera at present. I am planning to buy one - there are lots in the market. Which one should I buy?
I usually use VirtualBox, but experimented with KVM on my Linux box and KVM seemed easy enough. The difference between beginner and pro is creating and cloning images - you can do that in VB, but the other stuff like KVM, VMWare, etc is designed for pros who are doing creating+cloning from the command line with scripts. Casual users won't get that far - they just want to boot the latest Windows in a virtual machine for testing.
There are 2 primary reasons to be thinking about virtualization: 1. To experiment with multiple OS, or use multiple OS and not need multiple desktops. 2. To learn about virtualization as it applies to systems management/administration.
If you are looking for tools to save you from building multiple desktops, start with VirtualBox. It's free and decent. VMWare workstation is still the industry standard, they've been doing this since 1999.
If you are looking for tools to learn about how modern server environments are operated, then go get VMWare ESXi, install BSD and play with jails, or whatever strikes your fancy. For SMB's, it's about VMWare ESXi and MS HyperV(for the poor). The hard thing about learning about virtualization is that without virtualized storage(iscsi/fc SAN) you are only getting part of the picture. If vmotion had to copy all of a system's data every time you needed to do maintenance on a server, it wouldn't be so impressive. So build out a freenas server with a few hundred gigs of drive space and iscsi configured, and then pick a hypervisor to play with!
I've used a fair smattering of virtual hosts and hypervisors both at work and personally. So here's what I think of them all (the free ones, anyway);
VMware: Probably one of the easiest to get set up and master. Dead simple point-and-click interface. Learning this is good if you want a career in virtualization because it is the yardstick by which all others are judged. There are a lot of features though that are disabled in the free version that are used in corporate environments... but you'll have the basics down.
Hyper-V: Also very simple to use and manage... but unlike VMware means you can run it as a side-piece on your existing Windows box rather than having a dedicated piece of hardware just for virtualization. Already built into most modern Windows variants, and used somewhat regularly in corporate environments. Again, paid adds features and support.
Citrix XenServer: Takes the basics of the open source Xen and adds a pretty damned nice GUI. Paid version adds support, but most of the major features are available and functional in the freebie. Trial versions of everything are available. Memory management out of the box is a bit of a pain (no overcommitment by default) but easy enough to modify. Use in corporate environments tends to follow people who have significant Citrix/XenDesktop infrastructure.
Xen (Open Source): By far the best to learn EVERYTHING about how virtualization actually works, but probably the worst for actually getting running VM's. There are GUI tools to simplify it, but since Xen is currently moving to a new toolset that is incompatible with most GUI interfaces, and the GUIs tend to be a smidge buggy on occasion it's usually easier just to learn the command line. Of course, then there are config files, XML files, bridged network interfaces. If you want to learn about the internals this is the way to go... but if you're only going to dedicate a day to trying each one then you might want to skip it... this one will take a couple of days at least even with the several well-written HOWTO's. Having said that, once everything is working it's really nice and you can turn around and say that you know how virtualization works, instead of just saying you know how a single product works!
VirtualBox: Like VMware is good for the beginner to learn the basics because it does have a nice GUI that guides you through everything. Update notifications are a constant irritant though; it seems that every week they're releasing an update for this bug or another... I turn that off and upgrade when I feel like it! However, use in corporate environments is almost non-existent. Good support for most OS's, and decent support for 3D graphics and the like but still pretty kludgy. I use it on my Mac for running my BootCamp partition while under OSX... mostly so I can access stuff on that installation and run updates and the like without having to reboot OSX.
I broke out the two main versions of Xen because they are significantly different. They are similar at the core (based on the same code) but Citrix has it own front-end tools that are incompatible with the tools you'll use under open source. However, the commands are the same and so learning open source Xen will have some bearing on using Citrix Xen.
Of course, there are plenty of other hypervisors out there. My personal recommendation if you just want to play would probably be Hyper-V or VirtualBox. VirtualBox has the advantage of being cross-platform; I don't know if you run Linux or Windows (or OSX) at home, and obviously Hyper-V is Windows only. If you really want to learn virtualization and how it works, then open source Xen is the way to go... I run it on my Ubuntu 12.04LTS box and love it... but it's not for the faint of heart! Setting up the networking alone can be "fun" and you should definitely familiarize yourself intimately with how to undo what you have done so you don't break anything! VMware like I said is used extensively in corporate environments... so if you want to pursue it as a career I'd recommend dedicating a box to an ESXi server and just play with it. It's free and easy... but really doesn't teach much in my opinion.
For a beginner I would say Virtual Box. It is open sourced - GPL version 2 compliant licensing. The hypervisor is software based - so runs as an app on your existing machine; this also means you have the flexibility of turning it off - and regaining full resources for your host operating system if/when you need it (e.g. if you play high performance video games or other processing/ram intensive activities).
It allows you to manage most of the functionality of a normal virtual environment including virtual network connections, allocation of resources to VMs and so on. It supports a large number of guest OSs to varying degrees of fidelity.
Finally - I found it to be easy to install and use compared to other virtual environments.
After you've played with Virtual Box for some time and want to do something more serious on the server side - I would advise using AMD processor based systems with lots of RAM and harddrive space [or network attached storage], and upgrading to bare metal hypervisors such as KVM or VMWare.
both need lots of ram and fast cpu on host. I use vmware and with 8g on host I can give 4g to windows 7. it works ok but I think16g on host would be better. also you'll want a 3ghz cpu or faster and ideally dual core or more cores. the more power the better. lastly ssd makes io faster on host as well as client.
Welp, time to move to Xfce, oh wait, already done
People once told me 68K ram was all we needed,
It might help us if you told us what your host OS is, you paki bastard.
If you want to work with Virtual Machines on one loaded up desktop computer, Hyper-V on Windows 8 is a excellent solution. Be sure to get 2 NICs and follow best practices about only binding one to a virtual switch. On my desktop box I am able to run 4-5 VMs and still play Skyrim effectively. I've run Xen on the same box, and Hyper-V under server 2008r2. The Windows 8 implementation of Hyper-V is reliable and easy to use and leaves you a high performance desktop as an added bonus.
Oracle's Virtualbox is the only VM that directly supports Mac hosts, if that's a factor. It's also free and very stable. Sun did a great job on it and so far Oracle's not screwed that up.
Organization? You must be joking..
I'd definitely stick to VirtualBox or VMware if you're going to be running your VM's on a Windows PC. If you're looking to try the complete VM experience for a work environment then try in the 'bare metal' category. We use Citrix XenServer which is pretty nice and has a free license that can be perpetually renewed. Only downside (if you consider this a downside) is that you can't over commit the server resources without purchasing some spendy upgrades. For something like that (ie you wanna resell server space through VM's) you'd want a Xen or KVM setup and run something like SolusVM to administer your host machine. At home on my Windows PC I stick with VirtualBox. It doesn't have a lot of advanced features, but it can install from ISO images and runs rather well for standard operating systems like Windows and Linux. I had a harder time getting some of the pre-made VHD's to boot properly with it. So if you stick with like a debian network install cd you'd be good. /ramble
Is there any easy way to have a bunch of virtual machines sharing disks? Anywhere I'm using VMware, I typically have a bunch of guests that all want to run a relatively current Linux, and I'd really prefer to have them all running off the same set of packages, so I can do my updates once instead of downloading the same fixes N times and using N times the storage. I realize it's possible to use NFS or Samba with one guest acting as a file server for the others, but it seems really inelegant.
The environments I've used have been VMware Player and ESXi, but I'd be interested in knowing if KVM and Xen have good support for that also.
Clock drift is not a problem per se, it's a property of virtualizing hardware. You are lying about the time that's passing by simulating cycles given that most timekeeping techniques assume a fixed CPU or interrupt frequency. Virtualization simply invalidates this assumption.
However, I think it's a a poor basis for comparing virtualization products.
KVM can do timer interrupt injection/replay to try to synchronize the host and guest's perception of time, but it is like tracking a moving target that wobbles based on competing loads. Most virtualization products that try to eliminated clock drift simply do it with a built-in/short-circuited timeserver (VirtualBox, VMWare, ... via their "additions"), however you can do this yourself trivially. If you reach a point where your synchronizations can't keep the clock accurate enough for your particular application (ex, Kerberso, Active Directory, whatever) then you have a load issue and need to invest in better hardware. Virtualization alone can't solve those kinds of problems.
I don't personally prefer VMWare, but if you were otherwise happy you could have installed an NTP server on the host and a client in the guest and gone home early.
Just to get the info out there, because I see so many erroneous postings here concerning it ... there's a bare-metal Type 1 hypervisor version of Hyper-V, Hyper-V Server 2012, that is free, no charge. For the OP, a type 1 hypervisor is one that you install on the machine as the "base" OS ... then you run VMs for Linux, Windows, etc. within that hypervisor. That's opposed to Type 2 hypervisors, that run as a software package with in full OS that you have installed - like running VirtualBox inside Windows or Linux.
... I have to caveat it by pointing out that, like you might expect with Microsoft, it's basically a gateway drug to their other products, in that to administer it effectively and use it in most real-world use cases, you need to have e.g. Windows Server 2012 installed somewhere, etc.
So now, having said that there is a free type 1 version of Hyper-V
"Ahh! I see you're in that indeterminate Schrodinger state where - oh, uh
I could never get any of the free versions of VMWare to work properly with my dual-homed test machine (I have eth0 connected to the Internet and eth1 connected to my lab). I wanted to run security testing VMs,like BackTrack against my lab network. VirtualBox had no problem assigning either of the network adapters. I use it almost exclusively now.
There are a few docs in the VMware knowledge base about clock drift on AMD CPUs. 90% of the issues are solved by turning off "Quiet'n'Cool" or any other power saving feature in the BIOS that alters the clock speed. The same advice goes for Intel chips with SpeedStep. The clock fluctuation really screw with the VM's VCPU emulation. I turned it off and my drift dropped to a minute or so a week which is easily fixable with a NTP service on Linux.
Thank you. That info will be very usefull.
Or run a Windows VM and VNC to it to run Vsphere....
Would be nice to know if the OP wants a desktop or server sized solution to play with. If just desktop there's plenty of options....
Thank you.
Desktop only.
I kind of missed that since the OP mentioned Xen (which takes over the host). You're probably right that he didn't know enough about various virtual environments to ask the right question.
I used VMware workstation for a while about 10 years ago (long story). It was definitely accecptable (even back then). Not sure what VMware has to offer in the way of free trials for workstation other than their pre-canned VM images. That's the only gotcha with that route.
Cheers,
Dave
Yes, exactly, thank you.
I am in the information collecting stage now.
Virtual Box worked well for me. In fact it's probably the VM ware for dummies. I didn't know anything about VM ware when I installed it. Just followed the instruction by locating the CD drive or ISO file of the installer and that was all after following a few more easy instructions.
It depends on what you want to do with it. VMware has the advantage of working well, being easy to learn, and arguably being the industry standard for virtualization software. KVM is more popular if you are on the *nix side of things, and I believe has the added advantage of being free, but if you look at software vendors providing virtual appliances, 95% of what they will give you is a VMware image, so to me that tells me VMware is the way to go.