Skype for Business Server: How to update or patch
Components
Lync server or Skype for Business server is made up two major primary components:
- The front-end server
- The Backend SQL database
As a part of installing the cumulative update for Lync Server one has to update both the components. Has this changed in Skype for Business not really still both components have to be updated, However Skype for Business Team has simplified the process.
Here is what flow looks like for Lync Server 2013
Looks a little complex isn’t it ?
What has changed?
Here is what changed with Skype for Business.
Get-CsPoolFabricState
Returns the Windows Fabric state for a Skype for Business Server 2015 pool. this cmdlet shows any missing replicas. If any replicas are missing run the following cmdlet to recover the pool before you apply any patches Reset-CsPoolRegistrarState -ResetType QuorumLossRecovery
Invoke-CsComputerFailOver
The Invoke-CsComputerFailOver to force a computer in a Skype for Business Server 2015 pool to failover to other servers within the pool. To successfully run this cmdlet you need to run it using an account that has administrator privileges on each server in the source and target pools. The Invoke-CsComputerFailOver cmdlet migrates the users and data, and drains the existing conferences and sessions before the Skype for Business services are stopped and disabled to prevent accidental restart when computer is rebooted. For more information: https://msdn.microsoft.com/en-us/library/dn985882.aspx%20
Update
Install the update package downloaded from Microsoft
Invoke-CsComputerFailOver
The Invoke-CsComputerFailBack to flag a server as available for load balancing in a Skype for Business Server 2015 pool. To successfully run this cmdlet you need to run it using an account that has administrator privileges on each server in the source and target pools. Its start the skype for business services if not already started. For more Information refer https://msdn.microsoft.com/en-us/library/dn985825.aspx%20
Update the Backend server
Stop Skype for Business Server services - Stop-CsWindowsService
Stop the World Wide Web service - net stop w3svc
Install the update
Stop Skype for Business Server services again to catch Global Assembly Cache (GAC) –d assemblies
Start Skype for Business Server services - Start-CsWindowsService
Start the World Wide Web service - net start w3svc
If this is an Enterprise Edition Back End Server and there are no collocated databases on this server, such as Archiving or Monitoring databases, then type the following at a command line:
Install-CsDatabase -Update -ConfiguredDatabases -SqlServerFqdn <SQL Server FQDN>
If this is an Enterprise Edition Back End Server and there are collocated databases on this server, then type the following at a command line:
Install-CsDatabase -Update -ConfiguredDatabases -SqlServerFqdn <SQL Server FQDN> -ExcludeCollocatedStores
If this is a Standard Edition server, type the following at a command line:
Install-CsDatabase -Update –LocalDatabases
Do and Don’t
- This command only apply to Skype for Business servers
- Do not run the Invoke-CsComputerFailOver on multiple server simultaneously
- The RTC services must be running to execute Invoke-CsComputerFailOver
Other Benefits
In Skype for Business we start all the server that part of same pool with one cmdlet
Start-CsPool
If there is problem starting server in pool it runs extended diagnostics and will display alerts
How is this better?
- Simpler – Fewer command to run chance of human error less
- Faster – fewer operation tasks
- More reliable – The Invoke-CsComputerFailOver will not allow fail-over of a server is the minimum number server required for the pool to up is not meet