Deployment

[Applies to: Microsoft Dynamics CRM 4.0]

Install Microsoft Dynamics CRM 4.0 Server on multiple computers

You can install multiple Microsoft Dynamics CRM servers to balance the processing load across several servers. Deploying Microsoft Dynamics CRM in this manner can increase performance and availability.

Note

  • Installing the Microsoft Dynamics CRM 4.0 Workgroup edition on multiple servers is not supported and is a violation of the license agreement.
  • This article does not apply to implementations that involve Windows Small Business Server 2003 (Windows SBS 2003).

On This Page

Multiple-server configuration overview

Step 1: Enable network load balancing

Step 2: Configure Active Directory

Step 3: Install Microsoft Dynamics CRM servers

Step 4: Update the configuration database to address the NLB cluster

Step 5: Verify and monitor the cluster installation

Multiple-server configuration overview

Before getting started with load balancing, installation and configuration planning is needed. For more information and guidelines, installation and configuration for a Microsoft Dynamics CRM system is described in the Microsoft Dynamics CRM 4.0 Implementation Guide.

The base configuration typically uses separate computers that are running the required components of a Microsoft Dynamics CRM deployment that includes Microsoft SQL Server and an instance of Windows Server functioning as an Active Directory domain controller. A multiple-server configuration of Microsoft Dynamics CRM has multiple computers that are running Microsoft Dynamics CRM that access a single server running SQL Server.

Note

This article describes the steps to install Microsoft Dynamics CRM in a two-node network load-balancing configuration where all Microsoft Dynamics CRM server roles are installed on a single computer. This type of deployment is called a full-server installation. You can use similar steps to install a particular server group role, such as the Application server role, or one or more specific server roles. When you install Microsoft Dynamics CRM, you have the following three choices for load balancing the Microsoft Dynamics CRM Web application, where both servers in the network load-balancing (NLB) cluster must have the following server-group roles or individual server roles installed.

  • Full-server install (typical install).
  • Application-server role group install (custom install).
  • Server role install (command-line install by using an XML configuration file). You will need to install at least the following two roles on the load-balanced servers in the cluster.
    • AppServer (application server role). This Microsoft Dynamics CRM server role is used run the Web-application server that is used to connect users to Microsoft Dynamics CRM data.
    • SDKServer (Microsoft Dynamics CRM SDK server role). This Microsoft Dynamics CRM server role is used to run applications that use the methods described in the Microsoft Dynamics CRM Software Development Kit.

    Important

    If you choose to install only the Application-server role group, you must install the Platform-server group role on another server in the Active Directory domain for Microsoft Dynamics CRM to function. Similarly, if you want to install only the required AppServer and SDKServer roles, you must install the remaining server roles on other servers in the Active Directory domain for Microsoft Dynamics CRM to function. For more information about server-group roles and individual server roles, see the Microsoft Dynamics CRM 4.0 Implementation Guide.

In this example, a two-node cluster will be set up by using two computers that are running Windows Server 2003 SP2. The server names are CRM01 and CRM02.

Step 1: Enable network load balancing

Enable NLB on the network and create a server cluster for servers CRM01 and CRM02. We recommend that you use the following port-rule settings when you enable the load-balanced cluster.

  • Port range. Leave the default range, which is from 0 to 65535.
  • Protocols. Both
  • Affinity. Single

For information about procedures for loading and administering NLB on Windows Server 2003, see the Network Load Balancing Manager Help on the Windows Server 2003 computer. For more information about how to configure NLB in Windows Server 2003 see How to Configure Network Load Balancing Parameters in Windows Server 2003.

Step 2: Configure Active Directory

Configure Active Directory by creating an account to run the CRMAppPool service and use a Service Principal Name (SPN). This is required when you run Internet Information Services (IIS) 6.0 in a clustered or a network load-balanced environment. The SPN uniquely identifies an instance of a running service. Active Directory uses the SPN for mutual authentication of a service instance, which enables the service instance to correctly authenticate when accessing resources located on other domain-member computers. For more information, see the MSDN article Service Principle Names.

To create SPNs, you must install the following tools, which are part of the Windows support tools, located in the Support\Tools folder on the Windows Server 2003 CD:

  • adsiedit.msc. This Microsoft Management Console (MMC) snap-in tool can be used to enter SPN values for a specific computer or user account. This tool requires adsiedit.dll.
  • search.vbs. This script is used to determine if the SPN value is used anywhere else.

To configure the SPN, follow these steps.

  1. Open Active Directory Users and Computers.
  2. Create a user account to run the CRMAppPool application pool in IIS. To do this, we recommend that you use a name that describes what the account will be used for, such as CRMService.

    Important

    This user account must be member of the Domain Users group.

  3. Close Active Directory Users and Computers.
  4. Open Windows Explorer and then locate the Program Files\Support Tools folder.
  5. Double-click adsiedit.msc.
  6. Expand the domain, expand the node that starts with DC=, and then expand CN=Users.
  7. Right-click the user account that you created in the previous step, such as CRMService, and then click Properties.
  8. In the Attributes list, scroll down, select servicePrincipalName, and then click Edit.
  9. In the Value to add box, type HOST/CRMNLBName.FQDN, and then click Add. Where, CRMNLBName, is the NLB cluster name and FQDN is the fully-qualified domain name. For example, the CRMNLBName.FQDN name might be CRMNLBCluster.contoso.com.

    Important

    Note this NLB cluster name; you must use this name in the following step when you create the NLB cluster and when you update the configuration database.

  10. Click OK two times.

Step 3: Install Microsoft Dynamics CRM servers

Each instance of Microsoft Dynamics CRM in a multi-server deployment must be installed one at a time. The following steps assume that a single instance of a full-server installation of Microsoft Dynamics CRM will be deployed on a computer that is named CRM01, and then a second instance will be installed on a computer named CRM02. For detailed information, such as system requirements, required components, and detailed installation instructions, see the Microsoft Dynamics CRM 4.0 Implementation Guide

The following editions of Microsoft Dynamics CRM are supported for multiple-server installations.

  • Microsoft Dynamics CRM 4.0 Professional
  • Microsoft Dynamics CRM 4.0 Enterprise

Installing Microsoft Dynamics CRM 4.0 Workgroup on multiple servers is not supported and is a violation of the license agreement.

Install the first instance Microsoft Dynamics CRM on CRM01.

  1. Run Microsoft Dynamics CRM Setup on server CRM01. For step-by-step guidance, see the Microsoft Dynamics CRM 4.0 Implementation Guide.
  2. On the Specify Deployment Options page, select the instance of SQL Server that will be used for the Microsoft Dynamics CRM databases. Then, select the Create a new deployment option. Click Next and continue Setup.
  3. On the Specify Security Account page, select the domain user account (for example, CRMService) created previously.
  4. Continue running Setup until the installation is complete.

Install the second instance Microsoft Dynamics CRM on CRM02.

  1. Run Microsoft Dynamics CRM Setup on server CRM02.
  2. On the Specify Deployment Options page, enter or select the name of the computer that is running SQL Server where the Microsoft Dynamics CRM databases are stored (from the installation of CRM01), and then click Connect to an existing deployment Click Next.
  3. On the Specify Security Account page, select the domain user account (for example, CRMService) created previously.
  4. Continue running Setup until the installation is complete.

Step 4: Update the configuration database to address the NLB cluster

You must manually update the configuration database by adding the fully-qualified domain name (FQDN) cluster name. To do this, follow these steps.

Warning

Incorrectly modifying the configuration database can cause unexpected behavior in the Microsoft Dynamics CRM system, or cause it to stop working. We recommend that you back up the Microsoft Dynamics CRM system before you begin these steps. For information about how to back up the Microsoft Dynamics CRM system, see the Operating and Maintaining Guide that is part of the Microsoft Dynamics CRM 4.0 Implementation Guide document set.

Run the following update statement against the configuration (MSCRM_CONFIG) database.

  • Update DeploymentProperties set NVarCharColumn = 'crmcluster.contoso.com' where ColumnName = 'ADsdkRootDomain'
  • Update DeploymentProperties set NVarCharColumn = 'crmcluster.contoso.com' where ColumnName 'ADWebApplicationRootDomain'

    Important

    Depending on how you deployed the Microsoft Dynamics CRM server role group or separate server role installation as well as the configuration of each server in the NLB cluster, the ADWebApplicationRootDomain and ADsdkRootDomain values may be different. For example, if you installed the application-server role group on a server in an NLB cluster that is named crmcluster1 in the contoso domain but installed the platform-server role group on a different server in a different NLB cluster such as crmcluster2 in the same domain, the FQDN will be different for each of the ADWebApplicationRootDomain and ADSdkRootDomain values.

For a full server role deployment, replace crmcluster.contoso.com with the FQDN of the cluster. If you are using a TCP port other then 80 (non secure HTTP) or 443 (secure HTTP or SSL), you must specify the port number by appending the FQDN name with :5555, where 5555 is the port number, such as crmcluster.contoso.com:5555.

Step 5: Verify and monitor the cluster installation

Verify that Microsoft Dynamics CRM client applications can connect to Microsoft Dynamics CRM by using the cluster name, such as CRMNLBCluster.

To monitor the cluster, you have the following options.

Related Links