Thursday, February 09, 2012

Running Microsofts Demo VPC on Windows 7

Running Microsofts CRM Demo VPC (Available on Partnersource) on Windows 7 is a bit problematic but can be done. I found a good blog that showed how it can be done using VirtualBox but there were some extra things that needed to be done to make it work.
As many of you probably are aware, from Windows Server 2008, only 64 bit versions of the server operating systems are available which isn't very strange since the 32 bit versions of Windows only support up to 3.5 GB of memory which is really enough for even a small server.

Hence the Virtual Machine that Microsoft have released with a demo environment of CRM 2011 is based on this 64 bit environment. Since Windows Virtual PC, the Virtualization Technology for Windows 7 does not support 64 bit guest operating systems, it has been created on Hyper-V and is meant to be run on this virtualization technology. However, this is not really what you average CRM salesperson is running in his or her Lenovo X11 for many obvious reasons, power management probably being one of the most striking.

So, it is it just not possible to run the demo environment on a Windows 7 machine? Yes, it is. On the blog Leon's CRM Musings there is a very informative posting on how to make the virtual harddrive work in the VirtualBox virtualization technology. I was quite amazed when I saw this working as this is quite similar to installing an operating system on a computer, ripping out the harddrive and screwing it into a completely different computer and hoping it will work. However, the Hyper-V virtualization and VirtualBox virtualization must be very similar from the guest operating system perspective, otherwise the operatingsystem would have given a lot of errors.

Do note the part in the posting that the demo image does not support being run as a SATA drive but must be run as an IDE harddrive.

There are some comments that both SharePoint and CRM are installed on port 80. This is in part true, but they are installed on different websites separated by different host headers.

However, the sharepoint site did not work when I tried running it, hence the document manangement from CRM did not work either. After checking the IIS website bindings and the host-file (C:\system32\drivers\etc\hosts) I noticed that the host headers for the SharePoint site and some other sites were pointed at the IP 192.169.100.1 and a quick check with ipconfig showed that this was not the ip of the current computer. Hence I just changed the mapping to be 127.0.0.1 (always means "this" computer).

I then closed all IE-windows, flushed the DNS (ipconfig /flushdns) just to be sure, then tried the sharepoint site, and it worked. As did the document management in CRM.

I saw some people in Leon's blog commenting on the networking issues of making the exchange server communicate with the CRM-server. This can be done be setting the networkadapter in VirtualBox to "Internal Network" on the Exchange machine and using two adapters on the CRM machine, one with NAT (external) and one internal using the "Internal Network". Both the internal networks adapaters need to be configured manually, but the external one can have a dynamic IP. If anyone doesn't know how, please leave a comment and I will tell you how.

Regarding optimization of speed I strongly recommend upgrading your computers memory to at least 8 GB so that you can give the virtual machine between 4-6 GB. Try to give it even multiples of 512 MB as that will make for better memory management.

Another well known fact regarding VPC:s is disk access. It is highly recommended that you use a separate disc on a high speed controller (i.e. USB 3.0/eSATA/internal SATA).

As for processor power, it is not as essential, eventhough it is always nice. Try to allocate at least 2 cores to it. One for the SQL-server and one for IIS/GUI.

The recommendation that Leon gives to reduce the memory for the SQL server I am not so sure that is a good idea as CRM is very SQL heavy due to its meta data driven nature. However, if you only have 4 GB:s of memory and you have to make this VPC work, then you might have to try it. Kingston memory modules are very cheap now, 2x4 GB for a T410 is less than €100 last time I checked.

I have several computers, my "sales computer" is a Lenovo T410s Corei5 8Gb with 2 SSD HD. I use one of the harddrive for my host operating system and one for the virtual machines. I have removed the DVD-drive since I never use it, and the extra drive is a lot better use of the space.

Last of all, cudos to Leon for a great solution with VirtualBox for the VPC!

Update:
An additional thing to do is to convert the VHD to the Virtualbox native VDI-format for virtual harddrive using the media Media manager in VirtualBox. This is probably a more optimized format for Virtualbox and hence a bit Quicker. (I have not tested it, it is just a thought)
I have also tried to run the VPC on an external USB SSD, both USB 2.0 and USB 3.0 with 2 GB of RAM with 2 Cores on my Core i5 with the converted disk and it works fine. The SSD gives it a lot of extra speed.

Gustaf Westerlund
CEO, Chief Architect and co-Founder at CRM-konsulterna AB
www.crmkonsulterna.se

10 comments:

  1. Good Post showing how Microsofts Demo VPC can work on Windows 7.

    ReplyDelete
  2. Hi Gustaf,
    Nice to see your post on MS CRM.
    We are at present strugling to bridge the CRM VPC and Exchange VPC using the network adapter. Would be helpful if you can suggest solution

    Regards
    Ritesh - EBT - p.ritesh@ebtech.biz
    India

    ReplyDelete
  3. The trick is to use double adapters on the CRM VPC, a static internal one and a dynamic external one. Make sure the static internal is using the same internal network as the Exchange and that they are both on the same network.

    If this is too complicated, do consult a networking specialist.

    ReplyDelete
  4. Hi,
    I have Windows Server 2008. I tried using the Virtual PC and also Virtual Box.
    But still the image is booting continously.
    Also can this run on Vista Home (64 bit).

    Thanks in advance

    ReplyDelete
  5. @Gangadhar: Did you change the type of harddrive from SATA to IDE?

    Virtual PC still does not support 64 bit guest OS:s so you cannot use that. There should be no problems running it on Vista Home 64 bit as far as I have heard.

    ReplyDelete
  6. Hi Gustaf,

    Just trying my hands into it. I have a 32 bit desktop machine at my home. I read that it can support at max 4GB RAM. Can I install CRM 2011 as mentioned by LeonTribe in his blog on this machine?

    ReplyDelete
    Replies
    1. Well, if you have 4 GB in 32 bit environment, you will be able to use about 3,5 GB. CRM needs to be installed on a server so you cannot install it directly on the Win7 machine but you can run it virtualized. You will have to give the virtual machine quite a lot of memory, at least 2 GB, and try to put the virtual machine harddrive file on a high speed disk (preferably SSD) or at least not the system drive as that will make the two OS:s compete for the disk making everything very slow. I would recommend at least a driver of 7200 rpm connected with either USB 3.0 or eSATA.

      Delete
  7. Thanks for the reply Gustaf.
    Will I face a system crashing/performance related issue if I install it on a Laptop? As I am planning to buy one, what should be the minimum requirement for a laptop(like 8 GB RAM, 64 bit) so that things work smoothly after the said installation?

    ReplyDelete
    Replies
    1. Yes, I have that and it works well. Core i5 or i7 is also to be preferred. I would also suggest having an external drive on USB 3.0 with the virtual harddisk on it. Or if the computer can have two drives, that will also work. (I have a Lenovo T410S in which I have thrown out the DVD and replaced it with an additional SSD)

      Delete
    2. Thank you Gustaf.
      it was really helpful.

      Delete