I know that running ESX in a virtual machine is not new… that kind of thing has been talked about and done all over the web. But lately several people have asked me how to set that up. I guess now that the new vSphere products are on the market, everyone wants to get the most out of their new features. So, here it is… I’m going to share with everyone how I configure my virtualized test environment of vSphere with VMware Fusion.
First of all you’re going to need a single or multi-processor system with the latest version of Intel or AMD processors (specifically the ones that have support for Intel-VT and AMD-VT) and a good amount ranging from 4 GB and up. In this setup case it is extremely important that you meet or exceed these specs because the more RAM you have, the more ESX/ESXi, vCenter, and Guess (?) VM’s you can have. I’m currently using three different environments for all my testing and work, with the following specs:
Environment One: Portable
- MacBook Pro 17″ Unibody – It has one of the latest version of Intel processors.
- 8 Gigabytes of RAM – Maximum amount of RAM supported by MacBook Pro.
- Two 500 GiG external USB Hard Drives – small drive with lots of spare space.
- VMware Fusion 2.0.4 – VMware’s Mac version of their hosted hypervizor platform.
Environment Two: Not really Portable
- Mac Pro Dual Intel 3.2 GHz Quad-Core (8) – this is the version before they switched to Nahalem.
- 32 Gigabytes of RAM – Maximum amount of RAM supported by that system.
- One Drobo NAS Device – 4TB of USB accessible storage, and 4TB local. Lots of space for VM’s.
- VMware Fusion 2.04 – VMware’s Mac version of their hosted hypervizor platform.
Environment Two: Not portable at all!
- Six Dell PowerEdge Servers – 2 PowerEdge 6650, 2 PowerEdge T300, 2 PowerEdge 1U
- 72 Gigabytes of RAM – between all of them, each one with 12 gigabytes.
- One Thecus 7700N NAS Device – Configure as iSCSI SAN with 6 TB
- Dell Rack
Ok, maybe I’ve gone a bit over the top with some of this stuff… you don’t need to get as crazy. You just have to meet the processor requirements and have as much memory as you can afford for your laptop or desktop. The process of creating the VMs are very simple but following the correct steps before and after that creation is what makes the magic happen. When creating the VM start by choosing the “create a custom virtual machine from Fusion” option. For the ESX/ESXi host you have two options to choose from as the based for the guess (?) OS that is going to be installed :
Option 1: Linux – Red Hat Enterprise Linux 5 64-bit

Option 2: Other – Other 64-bit

To be honest either choice will work as long as you modify the setting of the VM before you start the build. The pre-configure VM settings are different. The Red Hat Enterprise Linux 5 option will configure the VM with 20 GB of Disk Size and 1 GB of RAM. The other 64-bit option will configure the VM with 8 GB of Disk Size and 256 MB of RAM. Neither one of the default VM settings will work for what you need to do. The ESX/ESXi servers require a minimum of 2 GB of RAM, and none of the options provide that by default. Configure the disk size to be larger than 10 GIG’s, since that capacity is required by the Service Console. Other than that, I haven’t been able to detect any issues in particular or anything on the ESX/ESXi VM’s based on the option used for the build. If you’re like me and want to make sure that you have everything labeled with proper names and stuff you can go with the Red Hat option.
After the VM is created, do not power it on until the following changes have been made: Go into the setting of the VM and change the setting from one to two processors; also, increase the memory up to 2 GIG (2048).

Change the Disk Size to 20 GIG (it has to be more than 10 as that is a requirement for the Service Console. I normally use 20. And don’t worry about space because the disk, by default, is created in thin provision format. I would recommend deselecting the “Split into 2GB Files” since deselecting will maintain just one single disk file.

After that, go to the Show All settings view and remove any virtual hardware that its not going to be used like the 3D support, sound, printers, etc. Locate the virtual machines package file and perform the function equivalent of a mouse right click from the keyboard (Control + Click), and select the option that says “Show Package Contents” to display all the VM files including the .vmx file that you need to modify in order to make this work.

A new finder window will open displaying all the files that make up the VM. Select and open the .vmx file with text editor other than Word or Textedit. I use TextMate, and BBEdit on the Mac; try to use something similar for windows if you’re working with a PC. Now that the .vmx file is open and ready check to see and make sure that the tags and settings listed in the .vmx file match the ones below; if they don’t match, change it to what is listed below:
- config.version = “8″
- virtualHW.version = “7″
- memsize = “2048″
- numvcpus = “2″
- displayName = “Kandinsky” <— this could be whatever you want
- guestOS = “ESX/ESXi” <— this could be whatever you want
If you would like to add multiple nics to the VM to test isolation, add the following lines right below the last line of the existing ethernet0.linkStatePropagation.enable = “TRUE”. Don’t forget to modify the ethernet# to something that follows like ethernet1, ethernet2, and so on. If you want the ESX/ESXi Server to be able to identify the nics and be able to use them, they have to be added like this (NOTE: If you add them from the setting GUI interface, they wont work):
- ethernet0.present = “TRUE”
- ethernet0.virtualDev = “e1000″
- ethernet0.connectionType = “bridged”
At the very bottom of the vmx file add the following lines
- monitor.virtual_exec = “hardware”monitor_control.restrict_backdoor = “TRUE”
- monitor.virtual_mmu = “hardware”
- monitor_control.enable_svm = “true”
- monitor_control.restrict_backdoor = “true”
- vmx.allownested = “true”
Those tags in the vmx file are what makes everything work from the VM’s perspective. These tags is whats will allow you to run a ESX/ESXi in a VM and then turn on nested VM’s and all that good stuff. Here is some additional advice: every ESX/ESXi server has a minimum memory requirement of 2 GIGs. For those of you who have to work with limited amounts of RAM (4GIGs) this could be a big issue because you will only be able to have two ESX Server, which leaves you with no room for vCenter and nested VMs that could be used to test and prep. Well, I got something for that: since we can now actually change the settings for the require memory for each VM this leaves more memory available for other VMs. Earlier this month Duncan Epping, the James Bond of VMware virtualization (whose VCDX ID number is coincidentally 007) wrote a post in his blog Yellow-Bricks that described how to lower the amount of required RAM on the vSphere ESX/ESXi VM’s. The post was titled “Running vSphere within Workstation takes up a lot of memory”. Combining the information from this post with Duncan’s you should be able to get a pretty sweet lab for your vSphere testing on either VMware Fusion or VMware Workstation. Enjoy!



May 27th, 2009 at 11:15 am
Great stuff! I now can use my new super workstation at home to test the new Vsphere. I think I should be good with 12GB of DDR3 and a core i7
May 27th, 2009 at 11:33 am
Yep, that would definitely do for you.
May 27th, 2009 at 7:31 pm
Hi,
We have just added your latest post “vSphere Lab on VMware Fusion and VMware Workstationto our Directory of Environment . You can check the inclusion of the post here . We are delighted to invite you to submit all your future posts to the directory for getting a huge base of visitors to your website and gaining a valuable backlink to your site.
Warm Regards
greenatmos.com Team
http://www.greenatmos.com
May 30th, 2009 at 6:24 pm
Hm.. I get a Check for missing files Faild: Dictionary problem.
May 30th, 2009 at 6:25 pm
I mean failed
May 30th, 2009 at 7:49 pm
Ok… After trying to get this setup today I find out some of the information provided didn’t work. I added some notes below.
The Type of OS when your creating the VM needs to be Red Hat Enterprise Linux 4 64-bit
also you need to change the CPU execution mode to Intel VT-x or AMD-V (note: you need to enable this in the BIOS)
The only line needed in the vmx file is below
monitor_control.restrict_backdoor = true
May 31st, 2009 at 11:12 am
Hey Jonathan,
if you are copying the text directly from the post paste it onto a notepad first, then copy to the .vmx file, or just type them in. When you copy and paste from the site there are characters that get added and that’s what is probably giving you that error. Also I hope you’re not using Word to edit the .vmx file, use a text editor like TextWrangler or something equivalent to that for windows.
May 31st, 2009 at 11:19 am
Hey Jonathan,
Since you are running your setup in windows you have to do the BIOS setup thing. When configuring this stuff on a Mac you dont have access to those settings or getting to the BIOS so the monitor_control.restrict_backdoor = true gets that done automatically from the VM. The OS really doesnt matter Linux Other-64bit or RHEL 5 64Bit, because you still have to modify the VM to setup correctly. I hope you got it to work, if not let me know I’ll hook you up!
- Rawlinson
June 1st, 2009 at 8:10 am
Ya I got everthing working last night even my Vyatta router. all I have to say is what a PAIN! I did everthing you said before.
The Vyatta VM I downloaded had one problem you have to select the CPU Process Mode to INtel VT-x AMD it can not be set to automatic maybe others have not tried this with the new Intel Core I7
PS. I’m not 100% VM’ed and I still have lots of CPU to spare I just need more RAM I don’t think 12GB is going to do it.
VM’s
OpenFilter SAN
Vyatta Router four different networks
Two vSphere 4.0 Servers
VCenter
June 2nd, 2009 at 11:43 am
Hey Rawlinson,
I asked some questions about running ESX in Fusion on VMTN forum and one of the replies was:
“though I have seen ESX in a virtual machine personally, the performance is nothing short of abysmal. The last one I saw running had a boot time of almost 2 hours. This also doesn’t include for stability issues which was being explained in earlier posts.”
You wouldn’t call “2 hours boot time” good stuff – right? What memory do you give to ESX client on Mac Pro to get comfortable performance?
June 2nd, 2009 at 11:51 am
And another thing – what FS do you have on Drobo? Can you configure it to be accessible from both Mac host and ESX clients, or it’s only one way or the other?
June 2nd, 2009 at 12:07 pm
Hi Vlad,
The configuration that I posted is not bad for a testing purpose, but performance is a whole different story. I can tell you that it doesn’t take two hours to boot the virtualized ESX servers, My VM’s take an average of about 30 seconds to a minute to boot up. I’m able to migrate vm’s to them and even mix them in clusters with physical boxes. So far everything I’ve tested with all or most of the configuration have worked. On my MacBook Pro as you can tell from my post, I don’t have much, its just a notebook and things run great.
June 2nd, 2009 at 12:12 pm
max that puppy out!!!
June 2nd, 2009 at 3:12 pm
vlad,
I use the VMware VMFS and it’s only usable to the ESX Servers. The Mac OS X disk is local to the systems.
June 2nd, 2009 at 6:07 pm
That’s what I thought, thanks!
June 2nd, 2009 at 7:35 pm
Anytime vlad
June 8th, 2009 at 7:50 am
I seem to be gettin a error wich ever i do this modification
Error in line 113, wich refers to this line
# monitor.virtual_exec = “hardware”monitor_control.restrict_backdoor = “TRUE”
have tried all sorts of edition, even typing it in, but to no avail.
On my Mac pro, dual QC, 2.8 ghz, 10 gb ram, vmware fusion
June 8th, 2009 at 9:02 am
Andre, try don’t copy the tags from the blog and paste them directly into the VMX file. Try pasting them into a plain text document and try that.
June 12th, 2009 at 6:40 am
This is great stuff. I’m downloading the ISO for vSphere right now.
Now I have a really good reason to buy the new MBP. My current 15″ MBP should handled everything but I’m limited to 4GB. The new one goes up to 8GB.
Thanks
June 23rd, 2009 at 6:37 pm
I found your blog on google and read a few of your other posts. I just added you to my Google News Reader. Keep up the good work. Look forward to reading more from you in the future.
November 2nd, 2009 at 12:56 pm
Hi Rawlinson,
Is there any difference between the 13, 15, and 17 inch MacBook Pros? I’m hoping to purchase the 13 inch version but I want to be able to run a vSphere environment as outlined above.
Jason
November 5th, 2009 at 2:12 am
How is Thecus working with vSPhere?
Without any problems?
November 5th, 2009 at 11:21 am
It works great, I love it and recommend it.
November 5th, 2009 at 11:22 am
The 13″ is definitely under power for that kind of stuff, but it always depends on how much memory you have on that system. Any of them can work, and give you the results you may be looking for to fit your budget. Try Fusion 3 now since it’s even better than ever for that kinds a stuff too.
November 19th, 2009 at 1:26 pm
Hi,
nice to see your lab is working. I am trying to get mien working but I cannot format my ns7700 iscsi luns with VMFS.
What did you do to get this iscsi stuf working?
Thanks
Gert
November 30th, 2009 at 2:31 am
I have to say I agree with most of what is being said here. I’m gonna have to have to snatch the rss so I can keep tabs. on what is going on around here.