Thursday, 21 August 2014

Exchange 2013 SP1: Client Access Servers (CAS) with Network Load Balancing (NLB) Connecting to the ECP Displays Error "HTTP 500 Internal Server Error"

Exchange 2013 SP1: Client Access Servers (CAS) with Network Load Balancing (NLB) Connecting to the ECP Displays Error "HTTP 500 Internal Server Error"

You have configured Exchange 2013 Client Access Servers (CAS) in a Highly Available cluster using Windows Network Load Balancing (NLB) when you try and connect up to the single namespace for the ECP (https://mail.domain.com/ecp) you are prompted to enter your credentials but when you login it times out and displays "HTTP 500 Internal Server Error", for me this also happened when I tried to connect to my CAS Servers via https://localhost/ecp therefore it caused quite a problem!

 
It seemed to happen straight after I configured the Network Load Balanced (NLB) cluster, so my first thought was to disable the cluster and then try connecting via https://localhost/ecp on each of the CAS servers, this worked!
To disable an NLB Cluster from PowerShell use the following command;
Stop-NLBCluster

 
I then decided to change the Cluster Operation Mode from the default of Unicast to Multicast, this can be done using the nlbmgr.exe GUI, by right clicking on the cluster and selecting Cluster Properties.
VMware Article on Windows Network Load Balancing Cluster Operation Modes http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1006580
From the Cluster Parameters you can change it from Unicast to Multicast.
 
Then use the following PowerShell command to restart the cluster;
Start-NLBCluster
 
 
It's a good idea to check inside the GUI that the cluster has started successfully and both nodes are showing green and are in the Converged state.

 
Now if you connect back to the single namespace /ECP, enter your credentials and it should now work as expected.