In this video, David Yack walks through the process of setting up a all-in-one CRM 2011 Virtual Machine from the ground up. Of course CRMOnline is a great way to build your demos and prototypes however there are scenarios where  you’ll need a virtual machine. This is especially true for pro developers who’d find a VM very useful for developing, debugging & testing their code.

Since C9 now uses Smooth Streaming for the default player, it is recommended to watch this video in full screen on a broadband internet connection with good bandwidth. If you’re having trouble viewing this in the embedded player, please download & play the high quality WMV. For web purists (no offense), C9 now offers the video in a HTML5 player (video tag) if you choose so in your C9 user profile!

http://channel9.msdn.com/Blogs/girishr/Building-a-CRM-2011-Virtual-Machine

I shared the video with someone smart who also had the patience to write down the steps in a detailed fashion. I’ve posted the notes here as-is with minimal edits and I hope you will find it useful.

Step Outline

  1. Minimally have 4GB memory on the host machine while building this VM
  2. Install Windows Server 2008 or Windows Server 2008 R2. This has to be a x64 bit Edition & make sure the hosting computer is 64 bit. 32 bit does not work. Side.
  3. Once installed we will go ahead & set this as the domain controller
  4. Install SQL Server 2008 R2
  5. Install Office 2010 if you need the outlook client
  6. Install MS SharePoint Foundation 2010 (a free edition) - this is not a requirement to run CRM2011 but CRM has some deeper integration with SharePoint.
  7. Install Dynamics CRM 2011 bits - at the minimum you will need the CRM2011 server & CRM2011 client software (CRM2011 client software 64 bit version is available for integration with Office 64 bit). If you are using SP, then software for CRM2011 SharePointList component is available. Software for CRM2011 Router & CRM2011 Multilanguage support are also available which are optional. You also have BIDSExtensions which is required if you want to author reports using the Fetch Model (allows reports to be developed for both on-premise & online & be deployed to both environments).
  8. Last but not least is installing VS 2010
  9. Have fun!

 

Detailed Steps

  1. Windows Server 2008 R2 VHD when downloaded comes in a self-extracting archive - Part 1,2 &3. Run the extract on these. The extracted folder will have a ReadMe, License Agreement & a folder structure (WS2008R2Fullx64Ent)which looks like a VM that you can go ahead & readily import. Now copy this folder structure to your local hard drive. Rename this to CRM2011DevVM or some meaningful name.
  2. On the host, launch Server Manager (right next to the Start Button) - expand Roles & make sure you have a role named Hyper-V listed there.
  3. When you further expand the Hyper-V (under the Role section), you would see the machine name listed. Right click the machine name & select Import Virtual Machine & specify the location of the CRM2011DevVM folder. Also, under the Import settings, you can either choose Move/restore option, copy or duplicate. You can now rename the VM (listed under the machine name) to something useful from WS2008R2Fullx64Ent to CRM2011DevVM. Right click this VM & choose Settings. Increase the Memory to at least 2750 MB.
  4. Right click CRM2011DevVM & start the VM. This boots up the OS. Right click again & you will see Connect using which you can remotely connect to the VM.
  5. Then go through the set up steps mostly with default values (like the country, language,..). When it starts up the first time, it will show a password expired notification. Go ahead & change the password.
  6. Once VM desktop shows up, change the computer name to something meaningful. On the Start menu - choose Computer - right click Properties - Change Settings - System Properties dialogue - then click Change - enter the new name (eg. CRM). You will need to restart the machine once you change the name of the machine.
  7. Go back to settings on the VM (Server Manager -> Roles -> Hyper-V -> CRM 2011 Beta -> right click Settings - network Adapter - select Local Area Connection - Virtual Network - click Apply & then OK. This enables the internet connection on the VM.
  8. Then navigate to Command Prompt in the VM - type dcpromo to promote this particular machine to a domain controller. Follow through the set up (ignore the warnings), you need to give a fully qualified domain name (Contoso.com) & continue. Then choose Windows Server 2008 R2 for Forest functional level & continue. Then enable DNS server. You can leave the default locations for the database & log files. Then assign a password for Directory Services Restore Mode & complete the setup. Reboot the machine again.
  9. Log in & copy the SQL Server Install to the local machine. Extract it & start setup. Click New Installation and continue. In the meantime, click Start button & type dsa.msc - this launches the domain users environment so we can add a user under which SQL Server can run. Navigate to the domain name (Contoso.com)-> Users->New->User. Create a user named Sql Server & assign a password. Check the options where the user cannot change the password & the option password never expires. You can get back to SqlServer Install Setup & continue with feature installation. Under Instance Configuration, you can leave the default instance selected. Use the same account for each of the services - the one you just created (contoso\sqlsever) and you can choose Windows Authentication Mode. Install Reporting Services under the Native default mode. Continue & complete the installation. If needed, you can then delete the install files from the local hard drive. Note: Ensure that the user you create for the CRM services to run under are added to the 'Performance Log User' otherwise you'll run into performance counter permissions issue as mentioned here: http://blogs.msdn.com/b/johnsullivan/archive/2011/07/08/account-does-not-have-performance-counter-permissions-crm-2011.aspx.
  10. Now is a good point to take snapshot of the VM. Go back to the host machine - Server Manager->Roles->Hyper-V->CRM2011DevVM -> right click Snapshot. Once the snapshot is created, you could rename it to something meaningful - "After SQL Server and Domain Setup". If you ever want to start using from this checkpoint, right click & select Apply & that will reset the machine to this check point.
  11. Next step is the installation of SharePoint Foundation 2010 on the VM. Copy the SharePoint installation file to the VM & run it. Install the Prerequisites which will install a few patches & hot fixes. Once it completes, reboot the machine. After reboot, navigate back to the SharePoint Installation file & install SharePoint Foundation. This installs the software & when it completes, it will prompt if you want to run the configuration wizard which will set up the basic configuration. Choose to run the configuration wizard & go through the various steps. Create a new server farm. Then type crm as the Database Server & SharePoint_Config as the Database Name & reuse the account we had set up for SqlServer - contoso\sqlserver & set up a passphrase to secure the Farm. Then check the option to set a specific port number for SharePoint Central Administration Web Application & type in 7777 & make sure it doesn't conflict with anything else you are using. Choose the default value NTLM as the authentication provider for this web application. Finish the configuration & exit. It will launch the administration for the first time. Make sure it comes up fine & then once it is complete, you might want to take another snapshot at this point.
  12. At this point, it will prompt you to configure the SharePoint Farm. Choose the option to configure by yourself. Choose Manage web applications. Create a new web application & this will be the site we use to host our site collection for the data that we store from CRM. Select Classic Mode Authentication & type in 7778 for the Port. Leave everything else as it defaults to & click OK.
  13. Navigate back to Central Administration & click Create Site Collection. Select the web application that we just created (http://crm:7778/) & specify a title CRM Data. Choose Document Workspace as the template & specify SqlServer as the administrator for this site collection & click OK to create. Then navigate to http://crm:7778/ to verify if you can view the default content for that site collection.
  14. Next step is to install the CRM Server. Copy the CRM2011-server installation file to the local hard drive & run it. Once it is done extracting, navigate to the serverfolder & run setupserver. Choose the option to get updates for Microsoft Dynamics CRM. It will then prompt you for the Product Key which can be retrieved from the ReadMe file for the Server installation & continue. It will install a few prerequisites. Reboot & then again restart the installation by running the setupserver & repeat steps to complete installing the prerequisites. Then continue installing Dynamics CRM - choose the default location & select Full Server for Roles. Create a new deployment & type in the name of our SqlServer (crm) & choose Contoso as the Organizational Unit. Then select Network service account for the Security Account & let it use the Default Web Site. Then do not set the E-mail router service name. Then specify the Organization Settings. Type in the display name as Contoso1 & leave the remaining fields to default values & continue. The default reporting server url will be http://crm/reportserver. Then check the option to use Microsoft Update to check for updates when available & complete installation. Once it completes, make sure to check "Launch Reporting Extensions for SSRS Setup" & the option to get any updates for Dynamics CRM. Select crm as the SQL Server, MSSQLSERVER as the SSRS Instance, check the option "Install SQL Extension" & complete the installation of Microsoft Dynamics CRM Reporting Extensions.
  15. Navigate to http://crm/ & verify the new instance comes up which completes the basic installation.
  16. Next step would be to install VS2010 & create some other organizations through Deployment Manager.
  17. Give yourself a round of applause for reading this till the end!

 

BTW, below are the links to software downloads referred in the video

Windows Server 2008 R2
http://www.microsoft.com/windowsserver2008/en/us/trial-software.aspx

SQL Server 2008 R2
http://www.microsoft.com/sqlserver/2008/en/us/try-it.aspx

Office 2010 Trial
http://office.microsoft.com/en-us/try/

SharePoint 2010 Foundation
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=49c79a8a-4612-4e7d-a0b4-3bb429b46595&displaylang=en

CRM 2011 Download
http://www.microsoft.com/en-us/download/details.aspx?id=27822

Visual Studio 2010
http://www.microsoft.com/visualstudio/en-us/download

P.S: I know this video was recorded several months ago while Beta build was around but it is still very relevant for everyone. I apologize for not posting this earlier.