Okay, I’m supposed to be publishing my LPE article. But its not done yet. So have this “Quick and Nasty” guide instead
I’ve recently been migrating customers from older SBA’s running Lync 2013 code to newer SSD based SBA’s running Skype for Business 2015 and as such I’ve been working on a tool for Pool migrations but its not quite there yet.
Till then, I use this Cheat Sheet to make the migrations quick and easy and I encourage you to as well.
In summary, to migrate users from one SBA to the other, they have to go through a FrontEnd. You also need to migrate the Analog Devices, Meeting Rooms, Common Area phones and update a few attributes.
- New DNS Names
- First off, create new DNS names for everything, including the gateways, as you need to get everything off the old SBA before you can decommission it
- If your re-using any hardware tht your changing the DNS name on (analog gateways for example) you will need to update its certificate as part of the migration
- Update and Publish Topology with new SBA’s and gateways
- Do not rename the trunk for any gateways/ata’s hosting analog devices (More info on Greig’s site here)
- Don’t forget to create trunks between any FrontEnds and the SBC if your doing that.
- Follow your vendors instructions for building a new SBA/GW
- Update or Create new Voice Policies
- Create new routes between the new SBA and new Gateways
- Update the voice Policies to allow the new routes
- Export the endpoint lists out of the current SBA so we can track them for later
Get-CsAnalogDevice -Filter {RegistrarPool -eq "oldsba.skype4badmin.com"} | export-csv c:\Skype4badmin.com\migration\OldSba-Analog.csv Get-CsMeetingRoom -Filter {RegistrarPool -eq "oldsba.skype4badmin.com"} | export-csv c:\Skype4badmin.com\migration\OldSba-Meeting.csv Get-CsUser -Filter {RegistrarPool -eq "oldsba.skype4badmin.com"} | export-csv c:\Skype4badmin.com\migration\OldSba-Users.csv Get-CsCommonAreaPhone -Filter {RegistrarPool -eq "oldsba.skype4badmin.com"} | export-csv c:\Skype4badmin.com\migration\OldSba-Common.csv
- Re-Home Everything on the temp FrontEnd
Import-csv c:\skype4badmin.com\migration\OldSba-Users.csv | Move-CsUser -Target TempFE.Skype4badmin.com Import-csv c:\skype4badmin.com\migration\OldSba-Analog.csv | Move-CsAnalogDevice -Target TempFE.Skype4badmin.com Import-csv c:\skype4badmin.com\migration\OldSba-Common.csv | Move-CsCommonAreaPhone -Target TempFE.Skype4badmin.com Import-csv c:\skype4badmin.com\migration\OldSba-Meeting.csv | Move-CsMeetingRoom -Target TempFE.Skype4badmin.com
- Update the Analog Gateway attribute on the Analog Devices
- If you have multiple Analog Gateways associated with the SBA, Rinse and repeat
Get-CsAnalogDevice -filter {Gateway -eq "OldAnalogGW1.Skype4BAdmin.com"} | Set-CsAnalogDevice -Gateway "NewAnalogGW1.Skype4BAdmin.com" Get-CsAnalogDevice -filter {Gateway -eq "OldAnalogGW2.Skype4BAdmin.com"} | Set-CsAnalogDevice -Gateway "NewAnalogGW2.Skype4BAdmin.com" Get-CsAnalogDevice -filter {Gateway -eq "OldAnalogGW3.Skype4BAdmin.com"} | Set-CsAnalogDevice -Gateway "NewAnalogGW3.Skype4BAdmin.com" ... Get-CsAnalogDevice -filter {Gateway -eq "OldAnalogGW9.Skype4BAdmin.com"} | Set-CsAnalogDevice -Gateway "NewAnalogGW9.Skype4BAdmin.com"
- Wait for AD replication and repeat the process from FE to New SBA
- Enjoy a Coffee whilst you wait
Import-csv c:\skype4badmin.com\migration\OldSba-Users.csv | Move-CsUser -Target NewSba.Skype4badmin.com Import-csv c:\skype4badmin.com\migration\OldSba-Analog.csv | Move-CsAnalogDevice -Target NewSba.Skype4badmin.com Import-csv c:\skype4badmin.com\migration\OldSba-Common.csv | Move-CsCommonAreaPhone -Target NewSba.Skype4badmin.com Import-csv c:\skype4badmin.com\migration\OldSba-Meeting.csv | Move-CsMeetingRoom -Target NewSba.Skype4badmin.com
- If you created new Voice Policies for the endpoints on the SBA, update as appropriate
Import-csv c:\skype4badmin.com\migration\OldSba-Users.csv | Grant-CsVoicePolicy -PolicyName "AU NEWSBA International" Import-csv c:\skype4badmin.com\migration\OldSba-Analog.csv | Grant-CsVoicePolicy -PolicyName "AU NEWSBA International" Import-csv c:\skype4badmin.com\migration\OldSba-Common.csv | Grant-CsVoicePolicy -PolicyName "AU NEWSBA International" Import-csv c:\skype4badmin.com\migration\OldSba-Meeting.csv | Grant-CsVoicePolicy -PolicyName "AU NEWSBA International"
- Wait for AD replication again
- Update the Routing on your Analog Gateways and SBC’s the point to the new SBA
- Run through your test plan
- Remove the old Gateways and SBA from the topology
Hope this helps.
Update: One of my followers on Twitter @ricsip82 mentioned you can have ExchangeUmContacts hosted on the SBA
To check for this simply run the following powershell, if anything is returned, just migrate them with Move-CsExUmContact
Get-CsExUmContact -filter {registrarpool -eq "oldsba.skype4badmin.com" }
Pingback: Skype for Business SBA Migration Cheat Sheet | Skype4BAdmin.com – JC's Blog-O-Gibberish
You have NINE analog gateways on your hypothetical SBA? Yikes!
BTW, based on a TERRIBLE failure one of my colleagues had with this process last year, I suspect the “wait for AD replication” step might be a critical one to success.
Here’s his blog page with the fix for the next person who needs it:
https://pher0ah.blogspot.com/2017/07/the-dreaded-dcom-error.html
– G.
(Oh, and thanks for the M:N link).
Blame the previous integrator. They grabbed a bunch of MP124 (24 port) and MP112 (2 port) gateways and sent them all through Skype as they didn’t buy sip to sip licencing on the SBA’s gateway module.
Technically valid. Yes.
A pain to configure and troubleshoot. Yes.
At least they are TCP trunks so I don’t have to worry about certificates. But less than ideal I agree
Hi, great article!
Not sure if DNS and certificates migration is the fastest way. You could leave DNS, Certificates as is. Then move all users out to a hub. Then reinstall SBA, join AD with the same name, and keep DNS, import old certificate. Move pilot users in and then the rest.
Dan
Yes, this method totally works too. But not if your migrating from Lync 2013 to Skype4B 2015, or I assume Skype4b 2015 to 2019