Provisioning SharePoint 2016 Service Applications using Powershell

The Excel services service application has been removed from 2016 SharePoint and moved into the Office Online Server.  You’ll need to spin up the Office Online Server on a separated server and bind it to your SharePoint farm if you want Excel Services.  This is why you’ll notice that the lines for the Excel Services Web application have been commented out.  Removing those comments, along with modifying the variables that annotate 2016 references (e.g. $searchServerName = “2016APP”) to something with 2013 in it’s name is all you need to do to use this script for a 2013 farm.  The current script is essentially just the 2013 script from this site with a few added enhancements: Database names are all in one easy to edit location, Database names use a prefix that you can modify, or leave “” if you don’t want it.


The script below installs the Shared Services in an application pool that it creates named, SharePoint Hosted Services.  It creates a separate application pool for Search.


Modify the variables to suit your environment.  Make sure that the managed accounts are created for Contoso\2016SP_SA_AP and Contoso\2016SP_Search_AP.  These are the two identities that SharePoint will use to configure the application pools in IIS.  If they are not already managed service accounts in SharePoint, you should add them via the gui or by running New-SPManagedAccount.


You might want to modify the database Prefix to something that suits your environment, too.

After the script completes, you’ll want to add the unattached service accounts for Visio Graphics and Performance Point after you create a Secure Store target ID for each.  Although, you can do this via the configuration for each of these service applications in 2016 SharePoint.