My Exchange 2013 SP 1 servers restarts frequently and don’t displayed a blue screen. The root cause from Exchange 2013 CU 2 was already solved in Exchange 2013 CU 3 so I have to investigate further. The CU 2 problem is described in the KB2883202 article.
My environment contains a 4 node DAG with Exchange Server 2013 SP 1 based on Windows Server 2012.
I was looking for a “*ForceReboot*” by Managed Availability and found the following Requester:
(Get-WinEvent -LogName Microsoft-Exchange-ManagedAvailability/* | % {[XML]$_.toXml()}).event.userData.eventXml| ?{$_.ActionID -like “*ForceReboot*”} | ft RequesterName–> ServiceHealthMSExchangeReplForceReboot
The Application Eventlog throws an error with the event id 1001 with the error message “Bugcheck 0x000000ef” and forces a reboot of the server.
The root cause of this issue was, that one NIC of the Exchange 2013 SP 1 servers has multiple static IP addresses and I don’t configured “Register this connection’s addresses in DNS”.
Alternatively, I decided to set a global override for this Requester:
Add-GlobalMonitoringOverride -Identity Exchange\ServiceHealthMSExchangeRepIForceReboot -ItemType Responder -PropertyName Enabled -PropertyValue 0 –Duration 60:00:00:00
To check the configuration changes, use the following cmdlet:
(Get-WinEvent -LogName Microsoft-Exchange-ActiveMonitoring/responderdefinition | % {[XML]$_.toXml()}).event.userData.eventXml | ?{$_.Name -like “ServiceHealthMSExchangeRepIForceReboot “} | ft name,enabled
Enabled must be the value “0” (instead of 1).
BTW: with Exchange 2013 CU 5, you can set the “Duration” parameter for a global override up to 365 days. It’s an alternative configuration for the parameter “ApplyVersion”.
But this solved not all problems!
The Test-ReplicationHealth cmdlet failed against the local server:c.pngConclusion: it’s recommended to check the “Register this connection’s addresses in DNS”! Instead, if you are using multiple MAPI network IP addresses on the same NIC, use the following configuration:
Netsh int ipv4 add address skipassource=true
For more information, see the following blog post: http://blogs.technet.com/b/rmilne/archive/2013/08/27/skipassource-flag-cleared-in-windows-2012.aspx
For Windows Server 2012 / 2012 R2, it’s included in the PowerShell v3 command set. Take a look at the following blog post: http://blogs.technet.com/b/heyscriptingguy/archive/2013/01/24/use-powershell-to-change-ip-behavior-with-skipassource.aspx.