Installing ESX 4.0 on VMware Fusion

If you love VMware you have to love Apple and if you love ESX4.0 you have to love a Mac. Well, at least I know I do. Both companies are light years ahead of their competitors and characterized by superior design, excellent performance and both fighting Microsoft’s marketing machine.

Since I’m a great Mac fan and while reading the excellent whitepaper from Xtravirt on Installing ESX 4.0 on Workstation, I wondered how to install ESX 4.0 on VMware Fusion.

Here’s how I did it:

  1. Start VMware Fusion and create a new Virtual Machine (File -> New). Click on the Continue without disk button.
  2. Select the Create a custom virtual machine radio button and click Continue.
  3. In the Operating System field select Linux and in the Version field select Red Hat Enterprise Linux 5 64-bit. Click Continue.
  4. Click on the Customize Settings button and enter a name and location for the virtual machine. Click Save.
  5. The new virtual machine gets created and the settings page appears. Click on Processors & RAM and increase the RAM to a minimum of 2048MB. Click Show All to get back.
  6. Click on Printers and deselect the Enabled checkbox. Click Show All to get back.
  7. Click on Network and select the Connect directly to the physical network (Bridged) option. Click Show All to get back.
  8. Click on Hard Disks and select the Pre-allocate disk space checkbox. Next deselect the Split into 2 GB files checkbox. I left the default disk size of 20GB. Click Show All to get back. In the popup window select Apply to apply the changes to the disk file.
  9. Click on CDs & DVDs. Select the Use disk image option and browse to the VMware ESX 4.0 ISO file. Click Show All to get back.
  10. Click on Sound and click the Remove Sound Device button. Click Remove in the popup window and click Show All to get back.
  11. Click on USB Devices and click the Remove USB Controller button. Click Remove in the popup window and click Show All to get back.
  12. Click on Other Devices and click the minus sign on the bottom-left. Click Remove in the popup window to remove the serial port and click Show All to get back.
  13. We’re all done now and we can close the settings window.
    To be able to create virtual machines inside our virtual ESX server we need to edit the .vmx file. So close fusion and browse to the location where you stored the ESX VM. Select it, right click and select show package contents. Now locate the .vmx file and open it in TextEdit and add the following lines:
    monitor_control.restrict_backdoor = TRUE
    monitor_control.vt32 = TRUE
  14. Now we’re ready to go. Start VMware Fusion again and power on the virtual ESX server. From here on, follow the Xtravirt documentation starting at “chapter 4.0 – Install VMware ESX 4.0″

I first ran this procedure on VMware Fusion 2.0.2 and my VM crashed whenever I tried to power on a VM inside the ESX server. After upgrading to VMware Fusion 2.0.4 this issue was resolved. So make sure to upgrade to VMware Fusion 2.0.4 which is a free, downloadable upgrade for all VMware Fusion customers.

Related posts:

  1. ESX Memory Management – Part 1 Tweet I receive a lot of questions lately about ESX memory management. Things that are very obvious to me seem to be not so obvious at all for some other...
  2. VMware ESX(i) 3.5 Update4 released Tweet VMware has released ESX(i) 3.5 update4. Do not forget to read the release notes here or you can go to the download page here While going through the release notes...
  3. ESX Memory Management – Part 3 Tweet In part 1, I explained the virtual machine settings that are available to us regarding to memory, in part 2, I explained how the ESX kernel assigns memory to...
  4. ESX Memory Management – Part 2 Tweet In part 1, I explained the virtual machine memory settings that are available to us. This caused quite some controversy on what would happen when a limit is hit...
  5. HOW-TO: Recover from failed Storage VMotion Tweet A while ago I received a request from the storage department to move a whole ESX cluster to another storage I/O-Group. This would be a disruptive action. I was...

14 Comments on “Installing ESX 4.0 on VMware Fusion”

  1. #1 Welcome to vSphere-land! » Running ESX/ESXi in a VM Links
    on Jul 6th, 2009 at 11:46 pm

    [...] Install ESXi 4.0 on Workstation 6.5.2 as a VM vSphere ESXi as a VM – VMKernel Traffic Not Working Installing ESX 4.0 on VMware Fusion Running VMware ESXi 4/vSphere in VMware Workstation (video) Author: esiebert7625 Categories: [...]

  2. #2 bongface
    on Jul 24th, 2009 at 11:11 am
  3. #3 Prasanth
    on Oct 7th, 2009 at 9:21 pm

    I keep getting a problem where it says “Could not open /dev/vmmon: No such file or directory.” Any ideas?

  4. #4 Arnim van Lieshout
    on Oct 11th, 2009 at 2:03 pm

    Hi Prasanth,

    I don’t know exactly, but it looks like VMware Fusion isn’t initialising properly.
    Perhaps try upgrading to the latest version or reinstalling Fusion.


  5. #5 Virtualisierung: ESXi ausprobieren auf dem Mac | PHP Gangsta - Der PHP Blog
    on Dec 10th, 2009 at 5:08 pm

    [...] nicht vernünftig, da ein Hypervisor innerhalb eines Hypervisors nicht unterstützt wird. Doch Dank eines Blog-Artikels habe ich es dennoch ans Laufen bekommen, und nun kann ich ESXi ausgiebig [...]

  6. #6 Prasanth
    on Dec 30th, 2009 at 5:33 pm

    Any ideas how to get 2 ESX 4.0 servers to run on Fusion and connect to the same vCenter server.

    Also, with my setup, (running vCenter Server in XP Pro), it drops every minute because I can’t seem to open port 902. Any ideas?

  7. #7 Arnim van Lieshout
    on Jan 3rd, 2010 at 10:17 pm

    Hi Prasanth,

    To setup 2 ESX4 servers on Fusion just use the same procedure to install an additional ESX4 server. To connect the machines to the vcenter server depends on several things.
    Make sure that all 3 vms are on the same network and have a unique ip-address.

    So if your vcenter server is NOT running on your Mac, make sure that the network settings of both ESX vms is set to Bridged. (You cannot use NAT in this setup, because both vms will share the same external ip-address with this setting).
    If set to bridged, the vms are connected to the same network as your Mac, so setup ip-addresses accordingly. After this is done, check connectivity between vcenter and vm (I use Ping) and connect your ESX servers to your vcenter server.

    If your vcenter server runs on your Mac too, you can choose any vm network setting you like, as long as you choose the SAME setting on all 3 vms. Which setting to choose depends on if you want a connection to your external network or not. I would prefer the Host-Only setting, to isolate the environment from the external network.
    The ip-adresses to assign to your vms (in case you don’t want to use DHCP) depends on your networking setting again. Go into a terminal windows and issue the command “ifconfig”. Look for the ip info on network adapters vmnet1 (Host-Only) and vmnet8 (NAT) and configure an unique ip-address in the given network range on all of your vms. After this is done, check connectivity between vcenter and vm (I use Ping) and connect your ESX servers to your vcenter server.

    Regarding your networking problem on your vcenter server running on WinXP, I suggest disabling the firewall on your WinXP guest.


  8. #8 Support your favourite blog. Vote Now! | Arnim van Lieshout
    on Jan 6th, 2010 at 11:40 am

    [...] Installing ESX 4.0 on VMware Fusion [...]

  9. #9 Peter
    on Jan 22nd, 2010 at 1:30 am

    Hi Arnim,

    Thank you, this was exactly what I was looking for. And yes VMware and Apple rock!

    I do experience some very slow performance (both vm consuming lots of host CPU when both are running, in particular the WinXP vm, which goes wild as soon as vSphere client is active) and have no explanation yet (in order to fix it or live with it). Somehow I feel that Fusion is having difficulties managing the simultaneous workloads of the 2 VMs. Do you have similar experiences? Could you comment on that?

    This is my current setup:

    Host: MacBook 13 (late 2008) with 2.0 Ghz P7380 Core 2 Duo (P7350, has Intel VT) and 4 GB RAM
    OS X 10.5.8 with Fusion 2.0.5 (build 173382), performance preference for vm disk performance

    VM1 : 1 CPU, 1024 MB, 40 GB (split disk) Bridged Network, Win XP Pro to run vSphere Client v4.0
    VM2 : 1 CPU, 2048 MB, 10GB pre-allocated disk, Bridged Network, ESXi 4.0 (build 208167)


  10. #10 Arnim van Lieshout
    on Feb 1st, 2010 at 9:54 am

    To be honest, I don’t use ESX inside Fusion a lot, because I’m lucky to have a testlab for ESX stuff. In my experience the vSphere client is quite cpu and memory intensive, so maybe you’re running out of memory. You could try to increase the memory on your WinXP vm. I calculate 1GB extra for just vSphere client, so I would increase it to 1.5GB. Unfortunately you’re limited to 4GB overall memory on your MacBook, which doesn’t give you much flexibility.
    Another thing I noticed in your configuration is that the ESX vm has only 1 CPU while mimimum requirements are 2 CPU. Try increasing that as wel.

    Hope this helps.

  11. #11 Virtualization Cascading « Nabrantes's Blog
    on Apr 17th, 2010 at 11:43 pm
  12. #12 tim smy
    on Jun 22nd, 2010 at 2:07 pm

    you should try it on fusion 3.1.0
    its the best

  13. #13 BinaryPoet
    on Sep 18th, 2010 at 6:44 am

    One nice hack that i figured out to get around having to have a disk already preallocated is this trick. I used vmware workstation to configure the attributes of the vm (os, nics, disk, iso, etc.) For the hard drive I chose the largest size 950gb but not preallocated. Then I started a windows xp installation to create a partition for that drive. Of course you could do fdisk but I didn’t have those utils handy at the time. After it created the partition I followed your steps and my esx instance thinks that there is 950gb available to it. Nice for moving it around from smaller to bigger servers with more resources.

  14. #14 Marco Castro
    on Feb 12th, 2011 at 6:18 pm

    Hey guys, great article.

    When Im installing, I run accross this error.

    0:00:00:30:175 cpu0:4945)Warning: Syslog not configured…

    Any ideas?

    Thank you.

Leave a Comment