How To: Install Workflow Manager with SharePoint 2016

How To: Install Workflow Manager with SharePoint 2016

How To: Install Workflow Manager with SharePoint 2016

​​Recently, I completed an implementation of Workflow Manager with SharePoint Server 2016 for a client. The client needed the configuration to be highly available and use SSL certificates. Here are a few pitfalls I experienced when trying to configure the farm and ways to avoid them.

Not Too Fast 
Before planning your deployment, I encourage you to read materials by Spencer Harbar​ (harbar.net) for Workflow Manager with SharePoint 2013. For a SSL-based HA configuration, I recommend reading the two articles below. They outline how to plan your deployment.
http://www.harbar.net/articles/wfm1.aspx
http://www.harbar.net/articles/wfm4.aspx

Once you begin your deployment, keep and eye out for these "gotchas".
Child Domain Subject Alternative Names
In Spencer's fourth article​ (Workflow Manager Farms for SharePoint 2013 Part Four: End to End Configuration using Domain CA issued certificates), he explains how the SSL certificate needs to be created. My client had a multi-tiered domain environment, so I had to add additional subject alternative names (SAN). For example, if the servers are sitting in a domain like server.us.contoso.com, then you need to add the following DNS SAN entries (continue this pattern for each child domain):
*.contoso.com
*.us.contoso.com
Run Timer Jobs
After WFM is installed and associated with SharePoint, you need to run the timer jobs in this article​. If you don’t, your workflows will time out.
Register Multiple SharePoint Farms to a Single Workflow Manager Farm
For smaller deployments, I see many clients associate a test and production environment to the same workflow manager farm. In order to do this you must include the -ScopeName parameter with the Register-SPWorkflowService cmdlet.
Register-SPWorkflowService -SPSite "https://sitename-test" -WorkflowHostUri "https://wfm.contoso.com" -ScopeName "Test WFM"
Register-SPWorkflowService -SPSite "https://sitename" -WorkflowHostUri "https://wfm.contoso.com" -ScopeName "Prod WFM"
Installing on Windows Server 2012 R2 or Higher
In order to get this to work, you need to take a scripted approach. Start by installing Web Platform Installer on each Workflow Manager server. Next, download the Service Bus 1.0 CU3 in this KB article​. Then, mount the Windows Server ISO to the server so the script can install the appropriate Windows features.
Run the script below:

Change the file location of the installation of Service Bus 1.0 CU3 to the location you downloaded it to

Change the -Source parameter of Install-WindowsFeature to the drive you mounted the Windows Server ISO to

 

$serviceBusLocation = "$env:USERPROFILE\Desktop\WorkflowManagerFiles\WorkflowManagerFiles\ServiceBus"
$wfmLocation = "$env:USERPROFILE\Desktop\WorkflowManagerFiles\WorkflowManagerFiles\WFMRefresh"
$workflowClientLocation = "$env:USERPROFILE\Desktop\WorkflowManagerFiles\WorkflowManagerFiles\WorkflowClient"
#download the offline files
webpicmd /offline /Products:ServiceBus /Path:$serviceBusLocation
webpicmd /offline /Products:WorkflowClient /Path:$workflowClientLocation
webpicmd /offline /Products:WorkflowManagerRefresh /Path:$wfmLocation
#Import ServerManager cmdlets
Import-Module ServerManager
#Install IIS components (requires Windows Server ISO mounted for offline install)
Install-WindowsFeature Net-Framework-Core, Web-Server, Web-WebServer, Web-Static-Content, Web-Default-Doc, Web-Dir-Browsing, Web-Http-Errors, Web-Http-Logging, Web-Log-Libraries, Web-Request-Monitor, Web-Filtering, Web-Stat-Compression, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Windows-Auth, Web-Mgmt-Console, Web-Net-Ext, Web-Net-Ext45, Web-Mgmt-Service, Web-Asp-Net, Web-Asp-Net45 -Source "D:\sources\sxs"
#Install Service Bus 1.0 and CU KB2799752
webpicmd /Install /Products:ServiceBus /XML:$serviceBusLocation\feeds\latest\webproductlist.xml /AcceptEula
Start-Process -FilePath "$env:USERPROFILE\Desktop\WorkflowManagerFiles\WorkflowManagerFiles\ServiceBus-KB2799752-x64-EN.exe" -ArgumentList "/passive" -Wait -PassThru
#Install Workflow Client
webpicmd /Install /Products:WorkflowClient /XML:$workflowClientLocation\feeds\latest\webproductlist.xml /AcceptEula
#Install Workflow Manager 1.0 CU2 (Refresh)
webpicmd /Install /Products:WorkflowManagerRefresh /XML:$wfmLocation\feeds\latest\webproductlist.xml /AcceptEula​
For more information about Workflow Manager or SharePoint Server 2016, contact a member of the Blue Chip team!
This post originally appeared on mattgibz.wordpress.com​.

Matt Gibson