Disaster Recovery for Lync Survivable Branch Appliance (SBA)

Survivable Branch Appliance (SBA) is an appliance typically deployed in a branch site to provide resilience during WAN failures.

If your SBA does go down your users should have no loss of features (other than slight blip when they are disconnected from SBA and connected to the Lync Front End Pool). Although your users will only see a slight blip when SBA does fail it is important you bring the SBA online in case you have a WAN failure!

Consider a scenario where your SBA has gone down and you have determined its not usual things which has broken the SBA (firewall, AV updates, stopped services, specific updates, etc). Either you can continue to spend time on it to find the root cause, or go ahead and rebuild the SBA!

I am not suggesting you rebuild your SBA every time it breaks (SBA’s are actually pretty good and don’t fail often). You should find the root cause if your SBA is failing frequently but the quickest way to bring the SBA online  is by rebuilding it although it may seem drastic.

Rebuilding a failed SBA
To rebuild the SBA follow the steps below:

  1. Although the SBA has failed you should NOT remove the SBA from AD or Topology builder.
  2. Open Active Directory Users and Computers, find your SBA in AD, right click and select Reset Account. 
    image
  3. Now just rebuild your SBA (using the same name) as per instructions from the SBA vendor. For Sonus SBA’s the rebuild does take around 60 minutes but the actual time you spend is no more than 15 –20 minutes esp. if you have done few of them.
  4. As soon as the SBA is built and services started everything will just start working automatically! Usually  its a good idea to apply any Windows/Lync updates at this stage.No changes to topology, AD, etc are required.

Move a SBA from one Lync Front End Pool to another (When associated Lync Front End is still Online)
There may be times when you have to move a SBA to another Lync Front End pool. This typically happens when you are going from PoC to Production deployment.You can quite easily move an SBA from one Lync Front End pool to another without doing a rebuild provided following 2 conditions are met:

  1. The new Lync Front End pool you are associating the SBA should be in the same Lync site (in Topology Builder) as the original Lync Front End Pool
  2. The SBA’s can only be moved within the same version (Lync 2013 to Lync 2013 or Lync 2010 to Lync 2010). Moving SBA’s between different versions involves upgrade and rebuild of the SBA .

Provided you meet the above 2 conditions, follow the steps below to move the SBA to another Front End pool.

  1. Move all the Lync objects (Users, Common Area Phones, etc) off the SBA somewhere else (probably to another Lync Front End pool) . You can use the below snippet to complete this.

    $sbafqdn = "sba01.allthingsuc.co.uk"
    $destinationpoolfqdn = "fe01.allthingsuc.co.uk"

    #Move Users
    $users = Get-CsUser -Filter {registrarpool -eq $sbafqdn}
    $users | move-csuser –target $destinationpoolfqdn

    #Move Common Area Phones
    $cap = get-cscommonareaphone -Filter {registrarpool -eq $sbafqdn}
    $cap | move-cscommonareaphone –target $destinationpoolfqdn

    #Move Analog Devices
    $analog = get-csanalogdevice -Filter {registrarpool -eq $sbafqdn}
    $analog | move-csanalogdevice –target $destinationpoolfqdn

    #Move Exchange UM Contacts
    $exumcontacts = get-exumcontact -Filter {registrarpool -eq $sbafqdn}
    $exumcontacts | move-exumcontact –target $destinationpoolfqdn
  2. Open Topology Builder and download your topology. Navigate to Central Site > Branch Sites > SiteName > Lync Server 2010/2013 > Survivable Branch Appliances > SBAFQDN. Right click and select Edit Properties and select Resiliency. From the drop-down menu select the Lync Front End Pool you want to associate the SBA.image
  3. Publish the topology
  4. Your SBA is associated to new Lync Front pool. If required you can go ahead now move all the Lync objects (Users, Common Area Phones, etc) back to SBA. You can use the code snippet referenced in Point 1, just make sure to switch around the source and destination.

Move a SBA from one Lync Front End Pool to another (When Lync Front End is Offline)

During disaster recovery when your Lync Front End pool associated with the SBA is offline any users on the SBA will have very limited set of features. The users which were hosted on your Lync Front End pool directly probably failed over to the paired pool (for Lync 2013) you associated with your Lync Front End, but pool pairing does not provide any kind of resiliency for users hosted on SBA. You have to manually move these users to new Lync Front End pool if you think your primary Lync Front pool is not coming online anytime soon.

Moving users from SBA to another Lync Front End pool is very similar to what we discussed in section “Move a SBA from one Lync Front End Pool to another (When “associated Lync Front End is still Online).

To move the users you still need make sure 2 previous conditions are met, plus there are 2 more important one’s:

  1. The new Lync Front End pool you are associating the SBA should be in the same Lync site (in Topology Builder) as the original Lync Front End Pool
  2. The SBA’s can only be moved within the same version (Lync 2013 to Lync 2013 or Lync 2010 to Lync 2010). Moving SBA’s between different versions involves upgrade and rebuild of the SBA .
  3. Ensure the Lync Front End Server your SBA is associated with is pool paired to another Lync Front End Server. This is the only Front End server where the user should be migrated to if you want to retain user data.
  4. As we are leveraging pool pairing this works (without loss of data) for Lync 2013 only.

The 3rd point mentioned above strictly does not have to be true, but if its not true and you go ahead with the migration of the user, you will lose all the User data – Contact list, meetings, etc.

Assume you meet the above 4 conditions you can move the users across from that SBA to another Lync Front End pool with there data intact.

Below is a little power shell snippet you can use to complete this:

$sbafqdn = "sba01.allthingsuc.co.uk"
$destinationpoolfqdn = "fe02.allthingsuc.co.uk"

#Move Users
$users = Get-CsUser -Filter {registrarpool -eq $sbafqdn}
$users | move-csuser –target $destinationpoolfqdn -Force

#Move Common Area Phones
$cap = get-cscommonareaphone -Filter {registrarpool -eq $sbafqdn}
$cap | move-cscommonareaphone –target $destinationpoolfqdn -Force

#Move Analog Devices
$analog = get-csanalogdevice -Filter {registrarpool -eq $sbafqdn}
$analog | move-csanalogdevice –target $destinationpoolfqdn -Force

#Move Exchange UM Contacts
$exumcontacts = get-exumcontact -Filter {registrarpool -eq $sbafqdn}
$exumcontacts | move-exumcontact –target $destinationpoolfqdn -Force
The above snippet is no different than the one we saw previously in the section “Move a SBA from one Lync Front End Pool to another (When associated Lync Front End is still Online)” other than –Force parameter. Typically we do not use –Force as that leads to loss of user data but in this specific instance that is the only way. As the paired pool has already got user data no loss of data actually happens.


Leave a Reply

Your email address will not be published. Required fields are marked *

Solve this to prove you are not a bot * Time limit is exhausted. Please reload the CAPTCHA.

Post Navigation