Step by Step Guide to Migrate from SharePoint 2013 to SharePoint 2016 – Part 3

Migrate-SharePoint-2013-to-2016-part-3

Migration Guide – SharePoint 2013 to SharePoint 2016/SharePoint 2019:


Step by Step Guide to Migrate from SharePoint 2013 to SharePoint 2016 – Part 1

Step by Step Guide to Migrate from SharePoint 2013 to SharePoint 2016 – Part 2
Step by Step Guide to Migrate from SharePoint 2013 to SharePoint 2016 – Part 4
Step by Step Guide to Migrate from SharePoint 2013 to SharePoint 2016 – Part 5

Welcome to the third part in our series on migrating from SharePoint 2013 to 2016. In the previous parts, we showed you how to configure the SharePoint Server 2016 environment and copy the content and service application databases over. Now we will discuss how to configure the service applications to SharePoint Server 2016.

Pre-requisites

Before starting the upgrade process for service applications, please make sure you meet the following pre-requisites:

  • The account you use should be a member of the Farm administrators group in Central Administration.
  • Choose which service application pool you want to use for the upgraded service applications. The method described in this article uses the default service application pool, “SharePoint Web Services Default.” Use the Get-SPServiceApplicationPool cmdlet in Windows PowerShell to view a list of available the service application pools. Alternatively, you can use the New-SPServiceApplicationPool cmdlet to create a service application pool.

This process involves creating a new service application and providing the existing database’s name for it to use. The database will be upgraded as the service application is created. This process involves the following steps:

Note: There are a couple of services, such as ‘Word Automation Services’ and ‘Machine Translation Services,’ that can’t be upgraded. To upgrade these, you will need to create a new service instance.

Configuring the Service applications to SharePoint 2016
Step 1 – Starting the service instances

Start service instances for the five service applications that need to be upgraded:

  • Business Data Connectivity
  • PerformancePoint Services
  • Secure Store
  • Managed Metadata Web
  • Search

Most of these service instances can be started from Central Administration with the exception being SharePoint Server Search service instance, which will need to be started through Windows PowerShell.

Follow the below steps to start the service application instances using Central Administration:

  1. Launch SharePoint 2016 Central Administration.
  • For Windows Server 2012 R2:
  • Right-click on ‘Computer’, click on ‘All Aps’, and then click on ‘SharePoint 2016 Central Administration’.
  1. In SharePoint 2016 Central Administration, go to the ‘Application Management’ page, and click ‘Manage Services on Server’ in the ‘Service Applications’ section.
  2. Click ‘Start’ next to the ‘Business Data Connectivity service’.
  3. Click ‘Start’ next to the ‘Managed Metadata Web Service’.
  4. Click ‘Start’ next to the ‘PerformancePoint Services service’.
  5. Click ‘Start’ next to the ‘Secure Store Service’.

Use Windows PowerShell to start the Search service instance as it cannot be started from the Central Administration unless a Search Service application is already there.

 

Starting the search service instance using Windows PowerShell

Make sure that you have the following memberships:

  • ‘securityadmin’ fixed server role on the SQL Server instance.
  • ‘db_owner’ fixed database role on the databases that you want to update.
  • ‘Administrators group’ role on the server where you are running the Windows PowerShell cmdlets.

To grant permissions to use SharePoint Server 2016 cmdlets, use ‘Add-SPShellAdmin’ cmdlet.

  1. Launch the SharePoint 2016 Management Shell.
  • For Windows Server 2012 R2: Right-click on the Computer, click on the All apps, and then click on SharePoint 2016 Management Shell.
  1. To star the Search service instance, type the following commands at the Windows PowerShell and press ENTER after each command.

$SearchInst = Get-SPEnterpriseSearchServiceInstance

# Stores the identity as a variable for the Search service instance on this server

Start-SPServiceInstance $SearchInst

 

# Starts the service instance

Step 2 – Upgrading the Secure Store Service application

To upgrade the Secure Store service application, create the new service application and upgrade the database. In addition, create a proxy and add it to the default proxy group and the passphrase should be restored from the previous environment.

Follow the steps below to upgrade the Secure Store service application through Windows PowerShell:

Make sure that you have the following memberships:

  • ‘securityadmin’ fixed server role on the SQL Server instance.
  • ‘db_owner’ fixed database role on the databases that you want to update.
  • Administrators group on the server on which you are running the Windows PowerShell cmdlets.

Use Add-SPShellAdmin cmdlet to grant permissions for using SharePoint Server 2016 cmdlets.

  1. Launch the SharePoint 2016 Management Shell.

For Windows Server 2012 R2:

  • Go to the ‘Computer’ and right-click on it, go to the ‘All apps’, and then click on SharePoint 2016 Management Shell.
  1. Type the following command, at the Windows PowerShell command prompt, to store the application pool that you want to use as a variable for this service application.

$applicationPool = Get-SPServiceApplicationPool -Identity ‘SharePoint Web Services default’

Using the above cmdlet, set the service application pool as a variable that can be used again in the cmdlets that follow. If there are multiple application pools, and a different application pool must be used for a service application, this step should be repeated to make sure each service application uses the suitable application pool.

  1. Type the following command at the Windows PowerShell command prompt to upgrade the Secure Store service application.

$sss = New-SPSecureStoreServiceApplication -Name ‘Secure Store’ -ApplicationPool $applicationPool -DatabaseName ‘SecureStore_Upgrade_DB’ -AuditingEnabled

  • In this command, ‘SecureStore’ the new Secure Store service application’s name.
  • $applicationpool is the variable that was set earlier to recognize the service application pool to use.
  • SecureStore_Upgrade_DB is the service application database’s name that you want to update.
  1. Create a proxy for the Secure Store service application by typing the following command.

$sssp = New-SPSecureStoreServiceApplicationProxy -Name ProxyName -ServiceApplication $sss -DefaultProxyGroup

In this command, ‘ProxyName’ is the proxy name to be used. ‘$sss’ is the variable that was set earlier to recognize the new Secure Store service application. ‘DefaultProxyGroup’ adds to the default proxy group ‘Secure Store service application proxy’ for the local farm.

A variable, $sssp, is set by this command for the service application proxy. It will be used when the passphrase is restored. After the Secure Store service application and the proxy is created, the encryption key needs to be refreshed.

  1. To restore the passphrase for the Secure Store service application, type the following command:

Update-SPSecureStoreApplicationServerKey -Passphrase <Passphrase> -ServiceApplicationProxy $sssp

In the above command, <Passphrase> is the Passphrase from your previous environment for the Secure Store service application. $sssp is a variable that was set earlier to recognize the new Secure Store service application proxy.

Step 3 – Upgrading the Business Data Connectivity service application

A new service application now needs to be created in order to upgrade the Business Data Connectivity service application and database. For the Business Data Connectivity service application, a proxy is automatically created and assigned to the default proxy group when the service application is created.

Using Windows PowerShell to upgrade the Business Data Connectivity service application

  1. Ensure that you have the following memberships:
  • securityadmin fixed server role on the SQL Server instance.
  • db_owner fixed database role on the databases that have to be updated.
  • Administrators group membership on the server on which the Windows PowerShell cmdlets is being run.
  1. Launch the SharePoint 2016 Management Shell.

For Windows Server 2012 R2:

  • Go to the Computer and right-click on it, locate ‘All apps’ click on it, and then click on ‘SharePoint 2016 Management Shell’.
  1. Type the following command at the PowerShell to store the application pool that should be used as a variable for this service application.

$applicationPool = Get-SPServiceApplicationPool -Identity ‘SharePoint Web Services default’

This cmdlet is used to set the service application pool as a variable that can be used again in the cmdlets that will come after this. If there are multiple application pools, and a different application pool has to be used for a particular service application, then this step should be repeated to ensure each service application uses the appropriate application pool.

  1. Type the following command, at the Windows PowerShell command prompt to upgrade the Business Data Connectivity service application:

New-SPBusinessDataCatalogServiceApplication -Name ‘BDC Service’ -ApplicationPool $applicationPool -DatabaseName ‘BDC_Service_DB’

In this command, ‘BDC Service’ is the new Business Data Connectivity service application’s name.

‘$applicationpool’ is the variable which was set earlier to identify the service application pool.

‘BDC_Service_DB’ is the service application database’s name that is to be upgraded.

Step 4 – Upgrading the Managed Metadata service application

To upgrade the Managed Metadata service application, a new service application needs to be created. The database can then be upgraded and a proxy will also need to be created and added to the default proxy group.

Using Windows PowerShell to upgrade the Managed Metadata service application:

  1. Make sure that you have the following memberships:
  • ‘securityadmin’ fixed server role on the SQL Server instance.
  • ‘db_owner’ fixed database role on all databases that are to be updated.
  • ‘Administrators group’ on the server on which you are running the Windows PowerShell cmdlets.
  1. Launch the SharePoint 2016 Management Shell.

For Windows Server 2012 R2:

  • Go to the ‘Computer’ and right-click on it, then go to the ‘All apps’ and click on it, and then click on ‘SharePoint 2016 Management Shell’.
  1. Type the following command at the Windows PowerShell command prompt to store the application pool that should be used as a variable for this service application.

$applicationPool = Get-SPServiceApplicationPool -Identity ‘SharePoint Web Services default’

This cmdlet enables you to set the service application pool as a variable that can be used again in the cmdlets that follow. If there are multiple application pools, and a different application pool is required for a service application, this step should be repeated to ensure each service application uses the suitable application pool.

  1. Type the following command at the Windows PowerShell command prompt to upgrade the Managed Metadata service application, at the Windows:

$mms = New-SPMetadataServiceApplication -Name ‘Managed Metadata Service Application’ -ApplicationPool $applicationPool -DatabaseName ‘Managed Metadata Service_DB’

In this cmdlet, ‘Managed Metadata Service Application’ is the name of the new Managed Metadata service application. ‘$applicationpool’ is the variable to recognize the service application pool, and ‘Managed Metadata Service_DB’ is the service application database’s name to be upgraded.

  1. Type the following command at the Windows PowerShell command prompt to create a proxy for the Managed Metadata service application:

New-SPMetadataServiceApplicationProxy -Name ProxyName -ServiceApplication $mms –DefaultProxyGroup

In the above command, ‘ProxyName’ is the proxy name that you will use. ‘$mms’ is the variable that was set earlier to recognize the new Managed Metadata service application, and ‘DefaultProxyGroup’ adds the ‘Managed Metadata service application proxy’ to the default proxy group for the local farm.

Step 5 – Upgrading the PerformancePoint Services service application

To upgrade the PerformancePoint Services service application, create the new service application and then upgrade the database. A proxy also needs to be created and added to the default proxy group.

Using Windows PowerShell to upgrade the PerformancePoint Services service application:

  1. Ensure that you have the following memberships:
  • ‘securityadmin’ server role on the SQL Server.
  • ‘db_owner’ database role on all databases that have to be updated.
  • Administrators group role on the server where you are running the Windows PowerShell cmdlets.

Add-SPShellAdmin cmdlet can be used to grant permissions to use SharePoint Server 2016 cmdlets.

  1. Launch the SharePoint 2016 Management Shell.

For Windows Server 2012 R2:

  • Right-click on ‘Computer’, click on ‘All apps’, and then click on ‘SharePoint 2016 Management Shell’.
  1. Type the following command at the PowerShell to store the application pool that you want to use as a variable for this service application:

$applicationPool = Get-SPServiceApplicationPool -Identity ‘SharePoint Web Services default’

This cmdlet sets the Service application pool as a variable that can be used again in the ensuing cmdlets. When there are multiple application pools, and a different application pool needs to be used for a service application, this step in the procedure needs to be repeated to create each service application to use the suitable application pool.

  1. Type the following command at the Windows PowerShell command prompt to upgrade the PerformancePoint Services application:

$pps = New-SPPerformancePointServiceApplication -Name ‘PerformancePoint Service’ -ApplicationPool $applicationPool -DatabaseName ‘PerformancePoint Service Application_DB’

In the above command, ‘PerformancePoint Service’ is the name that will be given to the new PerformancePoint Services application. ‘$applicationpool’ is the variable that was set earlier to recognize the service application pool. ‘PerformancePoint Service Application_DB’ is the PerformancePoint Services service application database’s name that has to be upgraded.

  1. To create a proxy for the PerformancePoint Services service application, run the following command:

New-SPPerformancePointServiceApplicationProxy -Name ProxyName -ServiceApplication $pps -Default

In this command, ‘ProxyName’ is the proxy name that will to be used. ‘$pps’ is the variable that was set earlier to recognize the new PerformancePoint Services service application. ‘Default’ is used to add the PerformancePoint Services service application proxy to the default proxy group for the local farm.

Conclusion

This post covers the third part of the SharePoint 2013 to 2016 migration. By following the steps laid out in this article you should have successfully configured the service applications to SharePoint 2016. In the next part, we will discuss upgrading the service applications.

Reference: https://technet.microsoft.com/en-us/library/jj839719(v=office.16).aspx