At this moment, my server is a plain 64-bit amd, running windows 2003. I wanted to run another virtualized OS on top of it using virtualbox.
Then I saw that vmware ESXi is free! I always ignored that because I thought it would be extremely expensive.
So, now in my mind I have this vision of the "as-fast-as-native" virtualization
Since I have to migrate to new hardware next week, do you think that reinstalling Windows 2003 on ESXi server would be a good idea?
What is better?
- Windows 2003 => vmware server => my other guest OS
- ESXi server => windows 2003 + other guest OS
As long as your hardware is supported on ESXi, and isn't not missing any features you want, go for that. No only is it faster for the guests, but it's incredibly stable, whereas running vmware server can only be as stable as the Windows install it's on, which leads to either an unpatched, unmaintainted host, or frequent downtime as you reboot the host to patch it. Enabling SSH on your ESXi machine, and using some of the ghetto scripts can add back features you need.
Just another option to throw out there, MS put out a free Hyper-V download to compete with ESXi. It's similarly excluded from the V-Motion-type features, but gives your VMs a more direct line to the hardware (i.e. faster). Command-line only (various youtube videos like this long-winded thing), but a better comparison to ESXi than VS2005, I think.
For my $.02, I'd virtualize. Once you've got a virt platform, things start to occur to you that you just can't do with physical servers, and I think it's just a good place to take one's technical development, overall.
The answer is, of course, it depends.
If you have a fairly beefy server such that your Win2K3 Server will not be starved for resources, AND won't be running work loads that require lots of I/O, then running VMware Server on Win2K3 will probably be acceptable.
If you require more control over how the virtualization works (networking setups, cpu affinity and the like) AND have hardware that ESXi will deal with -- ESXi is probably the way to go.
Personally I've found the VMware Server configuration more flexible in terms of spinning up and moving VMs; however ESXi gives you a better chance of giving guaranteed levels of performance to your VMs. ie: if you are just playing around, VMware Server is the way to go. If you are going production, go ESXi.
Free ESXi may not be as fully-featured as you want. If you want, as you say, "to run another virtualized os on top of it", it is much easier to just slap VirtualBox on the existing OS and go from there. The speed is probably fine for most uses, and if you later don't care about running the second OS any more, just toss VirtualBox and the images.
Note that if you're doing serious work with lots of OSs, VMWare Workstation is about $200 and has some very nice coordination features that are not (yet) in VirtualBox. It's a good, supported IT tool.
First, VMware products are pretty good. Virtualbox is still somewhat unstable on a Windows host (but is fine on Linux from what I hear).
Other than mentioning that you have a 64 bit AMD CPU you tell us nothing about your hardware. You also haven't hinted at the reason for wanting another OS on the machine. Are you going to use it for "real" work or just want to have a bit of a play with another OS or two?
If you are going to use virtualisation you really need multiple CPUs. Multiple cores could be used but will still cause a bottleneck if you're going to do anything heavy. As a simply guide, you need the same amount of everything as if you were to run two independent physical machines PLUS the overhead your virtualisation software requires. Can your hardware cope?
Please check your hardware against the HCL list at VM-Help to make sure that your hardware will actually work with ESXi (it has a restricted set of drivers).
I would also say it depends. What do you want?
I would disagree that ESXi is lightweight. I would put the VM Server and other hosted OS in the lightweight category, ESXi as a medium weight, and ESX as heavyweight. But most of the heavyweight items in ESX require multiple servers to make use of (for example, migration requires two AMD servers plus shared storage [SAN or shared SCSI]). The ESXi solution gives you the advantage that you can recreate the Windows 2003 box to suite your tastes. On ESXi you can clone it, you can use non-persistent disks to test items that you can roll back. Issues with the Windows 2003 will have little impact on the other guest VM.
I'm not sure what you're asking.
ESXi is very nice, and VMs perform better running on ESXi than on VMware Server for Windows on like hardware. The guests won't run as fast as on the bare metal, but that's what happens when you add addt'l layers. You're giving up some performance for a lot of utility.
Why would you want to run a virtualized environment inside the Windows Server 2003 guest running on ESXi, though? That's the part I'm trying to get my mind wrapped around. You can spin up a large number of VMs on ESXi-- why not just run this other OS as another guest inside ESXi?
Now, before you plunk down any points at all on this answer, keep in mind that I do not use this software in a production environment, I'm only pointing out the built-in limitations of it. Instead of following up with a comment (which tends to get lost) I thought I would leave an answer.
Not that I have anything against ESXi, but it is a "lightweight" offering meant to be an enticement once you start to outgrow the box you're on, at which point some money to the fine folks at VMWare will propel you forward to bigger and better things...
If you plan on going the ESXi route, I would seriously look at how much hardware you can pack into the machine for the forseeable future, because that's going to be your limiting factor. If you know that you'll never run more than 2-5 server images, then you're probably going to be fine. But if you plan on hosting several simultaneous images (1 more than the number of cores available to you) or you have very fluid requirements (lots of images coming and going, or on-demand services), the missing ability to migrate images and perform other feats that are only found in its big brother (ESX) will become readily apparent.
I started out with a Dell PowerEdge 2950 running Server 2003 x64 and VMware Server 1.x - which worked ok for awhile. We ran an A.D. VM, an Exchange 2k3 VM, and a Linux VM, all while the base Windows install was still trying to do file server duties as well as serve up VM's.
Needless to say, that box suffered from horrible I/O. Once ESXi went free in v3.5, I converted us over to it. Since then I've upgraded the ram (from 8 to 32 gigabytes) and we run all kinds of stuff on that box (on top of our file server). No one has since complained about slow network access from the file server since the conversion.
Basically, if your hardware is supported by ESXi, I personally say GO FOR IT.
If you're only running the single box, don't worry about Virtual Center (though you can run vCenter in a VM for the trial period, and see how you like it - which is what we did, and we ended up buying a license for it, but we run 3 ESXi boxes here too).
When my banker (read: wife) gives me the money, I fully plan on running ESXi at home as well :)
I just am getting started with ESXi and I'm amazed I never knew about this sooner. It's very easy to get started with.
For any development, even if you don't need multiple machines running at the same time, it's the better way to go. You can snapshot your VMs so it's easy to try something out, then go back to an earlier one if you screwed something up.