Error installing Workflow Manager: Add-WFHost raises exception

Workflow Manager 1.0 (a.k.a. Azure Workflow) is the new workflow engine to support workflow in SharePoint 2013. This allows for a more scalable workflow engine which can be hosted on a separate (workflow) farm. The other option is hosting the workflow engine on the same server where SharePoint 2013 is hosted.

To deploy my environment(s) I use PowerShell. This is the same with configuring Workflow Manager 1.0. When running the Workflow Manager Configuration it generates the PowerShell command for you (see sample script).

Add-WFHost exception when configuring Workflow Manager

Although I use PowerShell scripts, it’s very likely to have the same issue and errors when running the Workflow Manager Configuration. When running my, slightly adjusted, script I got this error:

Add-WFHost : Could not successfully create management Service Bus entity 'WF_Management/WFTOPIC' with multiple retries within a timespan of 00:02:05.7093984.. The exception of the last retry is: The token provider service was not avaliable when obtaining a token for 'https://vm-sp-01.contoso.com:9355/WorkflowDefaultNamespace/$STS/Windows/'.. At C:\SPInstall\McwModules\mcwspinstall.wfm1.0\Ensure-WorkflowManager.ps1:117 char:19 + $wfHost = Add-WFHost -WFFarmDBConnectionString "Data Source=$wfDBServer; ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : OperationStopped: (:) [Add-WFHost], TimeoutException + FullyQualifiedErrorId : WFRuntimeSettingFailed,Microsoft.Workflow.Deployment.Commands.AddWFHost

Solution to “token service provider not available” issue

It seems the service bus is not available, which is a local server address. I tried disabling the loopback adaptor, but that didn’t work out. After digging around some more I realized my environment has a proxy server. The checkbox “Bypass proxy server for local addresses” was unchecked in the Internet Settings (Control Panel » Internet Options » Connections tab » LAN settings).

After ensuring the local addresses are bypassed, the PowerShell script worked as a charm!

Advertisements