In a clustered deployment, Microsoft Provisioning System (MPS) components can be distributed among servers in a variety of ways. The scenario described in this topic uses a Microsoft SQL Server cluster to provide fault tolerance, ensure high availability, and ease adding additional servers for increasing scalability.

Minimum hardware recommendations

Provisioning Database Cluster Servers

For your SQL Server 2005 cluster, you need the following

  • 2 servers with at least dual CPUs and 4 gigabytes (GB) of memory. You may use either 32-bit or 64-bit machines.
  • External drive array that both servers can connect to and which can be set up as the storage facility for the cluster. A minimum of 500 GB storage capacity for data and log files.

Provisioning Engine Servers

The Provisioning Engine servers do not need to be clustered or load balanced because MPS takes care of failover and load balancing internally. See for details.

  • 2-16 servers with at least dual CPUs and 4 GB of memory. Use 32-bit machines for these. 120 GB of internal storage for each is sufficient.
  • Availability of an external drive for use in storing extend trace information, if required.
  • Dual NIC cards. One end connects to the front-end servers and the other to the back-end SQL Server Cluster.

Provisioning Front-end Servers

The servers are load balanced on the Internet-facing side either by using hardware or Microsoft Windows Load Balancing Services with session affinity turned ON. The servers also run Internet Information Services (IIS) 6.0 to host the Web services. These servers also need access to the MPS computers running SQL Server to retrieve and update configuration data.

  • 2-16 servers with at least dual CPUs and 4 GB of memory. Use 32-bit machines for these. 120 GB of internal storage for each is sufficient.
  • Availability of an external drive for use in storing extend trace information, if required.
  • Dual NIC cards. One end connects to the internet and the other to the back-end MPS servers.

A common six-server configuration using an active/passive cluster is as follows:

  • 2 clustered provisioning database servers (virtual servers) -These share the drive array for the virtual server, which hosts the MPS database components.
  • 2 member Provisioning Engine servers -These host the MPS components that process incoming requests from the client servers. More Provisioning Engine servers can be added at any time in the process. Ensure that all the providers and namespaces get installed on all Provisioning Engine servers.
  • 2 provisioning front-end servers -These process incoming requests and passes them to the provisioning engine servers. The following figure and table illustrate the platform and MPS component requirements for each server.

Figure: Fault tolerant service provisioning configuration with server roles

For additional information on MPS component dependencies, see System Requirements for Service Provisioning.

MPS components Number of servers Software prerequisites

MPS Client Components
MPS Web services
MPS .NET Client Wrapper
Resource Manager Web client
(optional) Sample Provisioning User Interface

2: Servers 1 and 2 in the preceding server configuration diagram.

IIS 6.0
Microsoft Data Access Components (MDAC)

Core MPS Components
Standard MPS Providers
Provisioning Queue Manager Service
Resource Manager engine
Administration Tools

2: Server 3 and 4 in the preceding server configuration diagram.

MDAC

Configuration database
Transaction log
Audit log
Resource Manager database

2: Servers 5 and 6 in the preceding server configuration diagram.

Clustered SQL Server 2005 R2 server

Deploying a Clustered MPS Configuration

The requirements for clustered deployments are the same as those for domain deployments except that: Virtual servers and SQL Server clustering must also be configured, specifically:

  • When installing on a cluster, you specify the virtual server name rather than the server/computer name.
  • On computers running SQL Server, the installation detects the existence of a cluster and prompts for the necessary information.

See the Deployment Walkthrough for step-by-step instructions on how to deploy.