I had planned a CMS failover to avoid any Lync/Skype issues during weekend SAN maintenance since our Lync 2013 infrastructure was hosted on the Hyper-V platform.
As we have during our DR tests many times before, I ran the invoke-csmanagementserverfailover cmdelt from the target pool as documented by Microsoft.
#CMS failover cmdlet
Invoke-csManagementServerFailover -BackupSQLServerFqdn “Lyncpool31.companyname.com” -BackupSQLInstanceName "rtc" -Force"$false - verbose
The cmdlet failed and the log showed a strange message, "Error: An error
occurred: "System.FormatException" ""1" error categories reported in topology
document."
I also noticed I could not use the invoke-csreplication cmdlet due to the error below:
Invoke-CsManagementStoreReplication : ###50020:XdsForceReplication:This central management store is being moved to
another location. No changes can be made until this move is completed.
At line:1 char:1
+ Invoke-CsManagementStoreReplication -ReplicaFqdn servername.com....
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Invoke-CsManagementStoreReplication], SqlException
+ FullyQualifiedErrorId : System.Data.SqlClient.SqlException,Microsoft.Rtc.Management.Xds.InvokeOcsManagementStore
ReplicationCmdlet
Knowing that the SAN maintenance window was quickly approaching, I opened a SEV A Microsoft Premier case. With Microsoft assistance and roughly 2.5 hours later, it was determined that the cause of our degraded CMS state was due to version mismatch.
Solution:
The Invoke-csManagementServerFailover cmdlet was run from a Skype server (along with Enable-Cstopology) to force the failover of CMS to the desired Lync 2013 backup pool.
I hope this post saves someone a few hours of work for something, in retrospect, that is simple.