Sunday, April 15, 2012

How to set Client Access server array

If you find out you have not set your Client access array and would like to set it up here are quick steps to get the work done. If you are not certain what the CAS array is here is Exchange team Demystifying the CAS Array Object  series part1 and part2

image

Also very nice detailed explanation about the RPC Client access server is here

Exploring Exchange 2010 RPC Client Access service

Exchange 2010 Middle Tier

In order to facilitate this move to the middle tier, two new services were created that run on the Client Access Server role: the RPC Client Access service and the Address Book service.

The RPC Client Access service handles all data connections for mailboxes and the Address Book Service handles all data connections for access to Active Directory. One notable exception is public folders. For public folder connections, clients connect to the RPC Client Access service on the Mailbox role, and not the Information Store.

How Does it work ?

  • Outlook client checks its configured settings and finds out  where to connect to get the user mail from ( This case it is  CAS ARRAY = outlook.smtp35.org=10.10.10.150
  • The DNS Server the client is talking too,  has A record matches the RPC Client Access Server outlook.smtp25.org=10.10.10.150
  • Each Database has attribute called RPCclientAccessServer which is equal to CAS ARRAY name. ( this is where the magic happens……)

so in this case as fallows.

image

Outlook clients start talking to CAS servers and CAS Servers will talk to MBX Servers behalf of outlook ( MAPI ) clients. Now if you pay attention you can see the beauty of this design and its benefits.

Example one: You do not have any HLB in your environment what are your supported options after configuring CAS ARRAY ?

Option 1, you have created CAR ARRAY called outlook.yourCompany.local and assigned this to unique IP Address some thing like this

Outlook.YourCompany.Local = 10.10.10.100

Now you have two CAS Servers

CAS1=10.10.10.100
CAS2=10.10.10.101

Now here is how I can configure CAS ARRAY and have all RPC Connections to go to CAS1 Server.

Outlook.YourCompany.Local = 10.10.10.100
CAS1=10.10.10.100

Option 2,

Outlook.YourCompany.Local = 10.10.10.100  ( A Record in DNS)
Outlook.YourCompany.Local = 10.10.10.101  ( A Record in DNS)

As you can see half of the RPC connections go to CAS1 other Half will go to CAS2.

Of course there are problems with these configurations such as if CAS1 goes down, what happens to outlook client connected to CAS1 ? until these clients go back to their configured DNS and query Outlook.YourCompany.Local they wont get connected.

Option 3,  would be getting HLB ( Hardware load Balancer) and make more intelligent application base load balancing on the CAS Servers.

To create the Client Access server array……

New-ClientAccessArray -fqdn <FQDN_of_array> -site <SiteName>

To tag the existing databases

Set-MailboxDatabase <MailboxDatabaseName> –RpcClientAccessServer <Casarray>

To set for multiple databases:

Get-MailboxDatabase | Set-MailboxDatabase –RpcClientAccessServer CAS-Array.YourConpany.com

 

Respectfully,
Oz Casey, Dedeal ( MVP north America)
MCITP (EMA), MCITP (SA)
MCSE 2003, M+, S+, MCDST
Security+, Project +, Server +
http://smtp25.blogspot.com/ (Blog)
http://telnet25.wordpress.com/ (Blog)

1 comment:

surjeet said...

Indeed a good explanation of the CAS Array and its availability.