Exchange Server 2010 connects all clients to the client access server (CAS), which differs from previous versions of Exchange in which Outlook connected through the mailbox server. The problem with using the CAS this way is that it can create a single point of failure.
Unfortunately, you can’t cluster client access servers as you could with the mailbox server. Instead you need to create CAS array, which offers a higher degree of fault tolerance. The CAS array load balances client traffic across multiple client access servers to protect Exchange from a CAS failure. How much fault tolerance you apply varies according to the load balancing method you use. Exchange Server 2010 supports both Windows Network Load Balancing and hardware-based load balancing.
There are three primary steps to follow in order to load balance a client access server.
- Set up your load-balancing method -- Windows Network Load Balancing Service or a hardware load balancer.
- Create an Active Directory (AD) object that defines the load-balanced client access servers as a CAS array.
- Configure mailbox databases to use the CAS array.
The exact procedure used to load balance a CAS is different for each load balancer; however, you’ll have to choose a fully qualified domain name (FQDN) to represent your CAS array. You must also associate an IP address with the array.
Creating an Exchange 2010 CAS array
After you've created a collection of load-balanced client access servers, use the New-ClientAccessArray cmdlet to instruct Exchange to treat them as a CAS array. The New-ClientAccessArray command creates an AD object that represents the client access servers.
A single object now represents all of the client access servers, so you’ll need to assign an FQDN to the object. I also recommend that you name the CAS array something identifiable.
Provide the name of the Active Directory site where you will create the CAS array. Exchange Server 2010 lets you create one CAS array per AD site.
To create the CAS array, use a command syntax similar to the following:
New-ClientAccessArray –Name “<CAS array name>” –FQDN “<array FQDN>” –Site <site name>
To create a CAS array named CAS with a FQDN of cas.contoso.com and place it into an AD site named Miami, the command would look like this:
New-ClientAccessArray –Name “CAS” –FQDN “cas.contoso.com” –Site Miami
After you’ve create the CAS array, you’ll need to link your existing mailbox databases to it. If you don't, the databases will remain associated with an individual CAS. To link a database to the CAS array, use the Set-MailboxDatabase cmdlet.
When you use this command, provide Exchange with the mailbox database name that you want to associate with the CAS array as well as your CAS array’s FQDN. The command’s syntax would look like this:
Set-MailboxDatabase <database name> -RpcClientAccessServer <CAS array FQDN>
For example, you would use the following command to link a mailbox database named DB1 to a CAS array with an FQDN of cas.contoso.com:
Set-MailboxDatabase DB1 –RpcClientAccessServer “cas.contoso.com”
ABOUT THE AUTHOR
Brien M. Posey, MCSE, is a seven-time Microsoft MVP for his work with Windows 2000 Server, Exchange Server and IIS. He has served as CIO for a nationwide chain of hospitals and was once in charge of IT security for Fort Knox. For more information visit www.brienposey.com.