So the magic time has arrived. We have a new Skype for Business 2015 server release. After downloading the new ISO from your licensing site, or if you have MSDN for your lab, you can upgrade your existing Lync 2013 servers directly! What a great feature. I have been waiting for this since … well, a long time.
What needs doing?
I am going to upgrade my Lync 2013 SE. You may want to review this here first. Then, I think prudence will dictate that you read this next as this is the official documentation on upgrading an existing Lync 2013 server to Skype for Business 2015.
Before I started, I did the February 2015 Lync CU updates to the entire environment, and also, based on our reading, we need the Lync server to be at SQL2012 sp2. You can get that little download here.
If you are doing an SE like I am, then you need these three commands to accomplish the task:
SQLEXPR_x64_ENU.exe /ACTION=Patch /INSTANCENAME=RTCLOCAL /QS /HIDECONSOLE /IAcceptSQLServerLicenseTerms
SQLEXPR_x64_ENU.exe /ACTION=Patch /INSTANCENAME=LYNCLOCAL /QS /HIDECONSOLE /IAcceptSQLServerLicenseTerms
SQLEXPR_x64_ENU.exe /ACTION=Patch /INSTANCENAME=RTC /QS /HIDECONSOLE /IAcceptSQLServerLicenseTerms
BTW, if you don’t see this window during the second and third command lines, the upgrade did not take… reboot and start with number two…I don’t know why this happens, and rather than burn time figuring it out, I just booted between steps. FWIW, I seem to have “issues” with doing service packs on SQL Express, so I just always reboot between steps. I am sure there is some elegant way around this that smarter people have figured out, but not this guy.
You can check your success by running this little scriplet: (I got it here)
$inst = (get-itemproperty 'HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server').InstalledInstances
foreach ($i in $inst)
$p = (Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL').$i
(Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\$p\Setup").Edition
(Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\$p\Setup").Version
Once you get done with that, you will need to pick a spot to install the SfB Admin tools. We need to get the topology updated, and once you update topology, the Lync topology builder is going to useless to you; and there is no rolling back. Unless you export-csconfiguration and save yourself a tbxml and then do a force restore. I recommend that you take a pause and figure out those two steps and do them now before proceeding. The last thing you want is to hang yourself out to dry. A career limiting move to be sure.
OK, so choose a valid source onto which you will install the SfB admin tools. The prerequisites for this are the same as Lync. So you can read up on those requirements here. I don’t know about you, but I would pick a Server 2012 R2 instance or possibly an x64 Windows 8 or higher as the prerequisites will already be met. YMMV.
With the SfB admin tools installed, and an export-csconfiguration and an export-cslisconfiguration AND a pre-SfB topology TBXML saved, we can proceed.
One of the things the official documentation mentions is to ensure that all the services are running on the pool you are upgrading. You can see the status here (ignore the LYNCBACKUP you see here, I am doing something I am not supposed to…)
With that verified, we can now open Topology Builder using the SfB toolset. And here we are!
Note that the layout looks very similar, and in fact follows along with the 2010-2013 upgrade process – except this time we get to upgrade directly! Yes! At this point, Microsoft recommends making a copy of the TBXML you just saved and why you should do it…
If, like me, you have a SQL setup for Archiving and Monitoring that also supports the EE pool, you might want to be safe and update that SQL to SQL 2012 SP2 also. I did, and had zero issues during this next part. I note this because the pool I am upgrading is doing Archiving and Monitoring, and those databases are being used for the EE pool, and I know that the upgrade process is going to touch those databases, and the minimum to get this done cleanly is SQL 2012 SP2….
Select the pool, select “Upgrade to Skype for Business Server 2015…”
Say yes to the nasty gram…keeping in mind that if you say yes, and things go sideway, you will be discovering the wonderfulness of restoring a topology from your backups…
Note that your ex-Lync 2013 pool is no longer there, but your topology now has a SE under the Skype for Business Server 2015 node…
Publish your new topology using the time-honored, traditional method…
Finally, the magic moment has arrived… we have worked down to Step 5 of the official guidance, and we are looking at this:
Being brave, we will select setup.exe and live with the consequences! Say yes to this first one..
Accept the license agreement…and no, I am not going to screen cap that thing. Oddly enough, there were no updates to be found.
And voila! A hidden requirement that is not listed anywhere. Turns out you need 32 GB of uncompressed NTFS space. Please wait while I go fix this. Shouldn’t be too long. OK, I am back with 25 more GB of virtual drive space…
Apparently there was a prerequisite that I missed (I swear I did them all), but!
As advertised, on reboot the installer just continued forward.
almost done… about 12 minutes…
It don’t get easier than this. Thank you Product Team!
Note that there is a new cmdlet to run to start the pool. If you are doing EE pools, you should read up on this one. For maintenance and CU work, you are going to have to change some of your process to include this new cmdlet.
And we are complete…I had a few scary-looking warnings go flying by, but I also understood that I was upgrading the CMS holder, and I sort of expected replication to be borked until the server was fully started. In the end, patience!
The EE pool, still on 2013, thinks that the CMS is good to go! Note the version difference between the EE and Edge pool members and the SE…
We even have a new SfB Control Panel!
As in-place upgrades go, this was fairly painless and very straightforward. All functions expecting to be functioning are in fact, working just fine.