I've been troubleshooting a front end server that had issues starting its services. Removing and reinstalling the server was my last hope before contacting Microsoft but when removing a front end server from an enterprise pool, you have to reboot the rest of the servers at the same time. Didn't find a whole lot about this while researching the task, so I though I'd document some of the steps that I took and a couple of handy few-liners.

The message you get when trying to remove the server from the pool

Trying not break stuff

After right clicking the server in the topology builder and choosing to remove the server, you would then publish the topology. Like the message above says, you need to restart all the servers at the same time. To make sure you restart them all at the same time, you can use the following two lines of PowerShell

$servers = (Get-CsPool -Identity pool.fqdn.com).computers
foreach ($server in $servers) { Restart-Computer -ComputerName $server -Force}

Had to use the Force switch because I got an error saying that people were logged in to the servers.

When they came back online, I logged on to the server I had removed and ran the bootstrapper.exe to have it remove all the Skype components. I also checked whether the other servers had services starting with Get-CsPoolService (SkypeToolPack, shameless plug) and they looked like they had some trouble getting back up.

I ran Start-CsPool on the pool, but I might have been to early after the restart so a couple of the servers didn't get up and running. Ran the cmdlet again, this time they all started to play nicely.

Did a quick check with Get-CsPoolFabricState and everything looks good. Now, I just have to do everything in reverse to see if I can get the server up and running.

Tip: Everything worked out for me, but if you had issues getting the pool back up I would try running Reset-CsPoolRegistrarState -ResetType QuorumLossRecovery.

Step-by-step

  1. Open Topology builder, remove server and publish topology
  2. Invoke-CsManagementStoreReplication
  3. Restart all servers
  4. Run bootstrapper.exe on server you wanted removed (or just nuke it, if you actually are getting rid of the server)
  5. Check the services, possible run Start-CsPool but give the pool a couple of minutes to get back online by it self.
  6. Get-CsPoolFabricState
  7. Rejoice, you are the Skype for Business king!