I still have a couple of other tips in terms of using VMware Fusion with Windows VMs. Yesterday, I focused on my favorite tools. Here I thought I’d mention some of the best practices I have picked up.
Memory management: If you can afford an SSD for your Mac, you will not regret the investment in terms of your VMware images. The startup and suspend operations are so smooth and fast that – especially having used VMware Workstation – you wonder whether Fusion actually did anything. Whether or not you have SSD, it is also a good idea to try to limit the memory allocated to your VM so as to avoid swap on the OS X host. I try to size the virtual machine so that its memory is about 25% higher than the requirements of the applications I am running in it. As for running multiple VMs simultaneously, I have had mixed results. Sometimes, things work fine, but too often the two start stepping all over each other and the SPOD rears its little spinning, ugly head. Unfortunately, my aging MacBook Pro 17″ is already maxed out at 8GB and I am not on the market for a new one (yet) so I just have to use my corporate-issue laptop or native OS X versions of Office Apps while working in my Win2008 Server VM image.
Networking: When you need your Windows laptop to access your Fusion VM, you’ll have to use Port Forwarding. It is also necessary for passing Remote Desktop Commands through so that you can access the Windows console remotely. It is quite easy: open the /Library/Preferences/VMware Fusion/vmnet8/nat.conf file and simply add lines such as those below the Incoming TCP section:
80 = 192.168.166.100:8080 <;== this is a forward from the OS X port 8080 to the Tomcat port 8080 inside the VMware image – very useful for connecting external rich clients to the app server.
3389=184.108.40.206:3389 <;== this is a forward to permit Remote Desktop of the virtualized Windows machine
Note that for the Remote Desktop to work, you will be presented with two authentication challenges: the first grants access to your OS X itself and the second is to the Windows machine itself.