Friday, June 8, 2012

Exchange 2010 en statische poorten voor load balancing

Er wordt wel eens gezegd dat je voor Exchange 2003 een storage specialist moest zijn, voor Exchange 2007 een specialist in certificaten en voor Exchange 2010 een specialist in load balancing. En eerlijk gezegd zit daar wel wat in, want hoge beschikbaarheid en load balancing is nog nooit zo belangrijk geweest.

Van alle Exchange 2010 protocollen die je kunt load balancen is MAPI wel de meest bijzondere. De reden is dat MAPI verkeer standaard gebruik maakt van dynamische hoge poorten voor de RPC Client Access en Address Book services, dat betekent dat je nooit vooraf weet welke poorten je moet load balancen. Dit kunnen we oplossen door Exchange zo te configureren dat deze vaste poortnummers gebruikt voor deze twee services.

Om te beginnen moeten we deze poortnummers bepalen. Hoewel in principe ieder hoog nummer wat niet in gebruik is voldoet, raadt Microsoft aan om een poort te kiezen binnen de range 59531 tot 60554. In dit voorbeeld ga ik uit van poort 60000 en 60001, omdat ze makkelijk te onthouden zijn als ik zo meteen de load balancing rules ga aanmaken. En het spreekt voor zich dat we de zelfde waardes gebruiken voor iedere Client Access server in deze site.

We kunnen Exchange configureren met behulp van twee registry keys. Om fouten te voorkomen raad ik aan om dit in te stellen met de volgende vier eenvoudige PowerShell regels:

New-Item HKLM:\SYSTEM\CurrentControlSet\services\MSExchangeAB\Parameters
Set-ItemProperty HKLM:\SYSTEM\CurrentControlSet\services\MSExchangeAB\Parameters RpcTcpPort 60001 -type string
New-Item HKLM:\SYSTEM\CurrentControlSet\services\MSExchangeRPC\ParametersSystem
Set-ItemProperty HKLM:\SYSTEM\CurrentControlSet\services\MSExchangeRPC\ParametersSystem "TCP/IP Port" 60000 -type dword

image

Vervolgens moeten we deze twee services opnieuw starten zodat we kunnen controleren of we het goed gedaan hebben:

Restart-Service MSExchangeAB
Restart-Service MSExchangeRPC

Nu controleren we of de server op de nieuwe poorten luistert:

netstat -ano | findstr 60000
netstat -ano | findstr 60001

image

We hebben ons werk goed gedaan, er luistert nu een proces op beide poorten. Dat betekent dat we nu de load balancer kunnen configureren voor poort 135, 60000 en 60001, maar dat valt buiten de scope van dit artikeltje.

No comments: