This article is a walkthrough of the Azure Workflow installation, as well as the initial configuration with SharePoint Designer 2013.
Azure for SharePoint 2013 allows the use of SharePoint 2013 workflows in SharePoint Designer 2013. Without this additional software, SharePoint 2013 will revert back to SharePoint 2010-compatible workflows.
Download and install the “Azure Workflow Installer” per the article “How to: Set up and configure SharePoint 2013 workflows” (http://msdn.microsoft.com/en-us/library/jj163276(v=office.15).aspx). This will enable SharePoint 2013 workflows in SharePoint Designer 2013. Otherwise, SharePoint Designer 2013 is relegated to SharePoint 2010-based workflows.
Note that in a production environment, a dedicated user should be created for Azure Workflows.
Log in as SPSetup.
It is very important NOT to login as a basic user for configuration of the workflow. Ensure that the RunAs account that will serve as the workflow service account is a member of the server administrator role on the SQL server, otherwise errors will occur.
*** Unfortunately, using the spsql SQL alias did not work, so use the FQDN for the SQL server instead.
The following error will occur if the installation was completed with a user that does not have appropriate rights to the SQL server or local machine.
[Error] [8/11/2012 2:22:07 AM]: System.Management.Automation.CmdletInvocationException: Could not successfully create management Service Bus entity ‘WF_Management/WFTOPIC’ with multiple retries within timespan of 00:02:05.6870891. —> System.TimeoutException: Could not successfully create management Service Bus entity ‘WF_Management/WFTOPIC’ with multiple retries within timespan of 00:02:05.6870891. —> System.UnauthorizedAccessException: The remote server returned an error: (401) Unauthorized. Authorization failed for specified action: Manage..TrackingId:dfc04846-20b9-403e-aa9c-4716ff97a439,TimeStamp:8/11/2012 9:22:07 AM —> System.Net.WebException: The remote server returned an error: (401) Unauthorized.
at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
at Microsoft.ServiceBus.Messaging.ServiceBusResourceOperations.CreateOrUpdateAsyncResult`1.EndGetResponse(CreateOrUpdateAsyncResult`1 thisPtr, IAsyncResult ar)
at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)
— End of inner exception stack trace —
Server stack trace:
Exception rethrown at [0]:
at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
at Microsoft.ServiceBus.NamespaceManager.CreateOrUpdateTopicAsyncResult.CreateDescription(CreateOrUpdateTopicAsyncResult thisPtr, IAsyncResult r)
at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)
Exception rethrown at [1]:
at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
at Microsoft.Workflow.Management.ManagementEntitiesCreator.CreateManagementEntitiesAsyncResult.EndCreateTopic(IAsyncResult result)
at Microsoft.Workflow.Common.BackoffRetryAsyncResult.IsolateWithRetry(IAsyncResult result)
— End of inner exception stack trace —
at Microsoft.Workflow.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
at Microsoft.Workflow.Administration.ServiceUpdateManager.CreateManagementEntities(IList`1 namespaceManagerUris, ServiceBusClientCredentialType clientCredentialType, IDictionary`2 arguments, TimeSpan retryTimeout)
at Microsoft.Workflow.Deployment.Commands.WorkflowServiceConfigHelper.SetWFRuntimeSettings(String resourceDBConnectionString, String config)
at Microsoft.Workflow.Deployment.Commands.AddWFHost.CallWFRuntimeSettings(Service wfserviceInfo)
— End of inner exception stack trace —
at System.Management.Automation.PowerShell.EndInvoke(IAsyncResult asyncResult)
at Microsoft.Workflow.Deployment.ConfigWizard.CommandletHelper.InvokePowershell(Command command, Action`2 updateProgress)
at Microsoft.Workflow.Deployment.ConfigWizard.ProgressPageViewModel.AddWFNode(FarmCreationModel model, Boolean isFirstCommand)
Leave the farm and start the installation again
Delete all databases that are prefixed with WF and SB.
Login as the RunAs user that will run Azure.
Ensure the RunAs user has local admin rights and serveradmin role membership on the SQL server.
The workflow management site will appear in IIS. For firewall purposes the ports 11290 and 11291 should be opened between the SharePoint servers. Make a note of the ports if they are not the standard 11290 and 11291.
Next, open PowerShell as the administrator and run the following command:
Register-SPWorkflowService –SPSite “http://localhost” –WorkflowHostUri “http://localhost:12291” –AllowOAuthHttp
*** Note that -AllowOAuthHttp can be removed if Azure Workflow was installed as http instead of https.
Choose the Platform Type after creating a workflow in SharePoint Designer 2013.
If everything is configured properly, the SharePoint 2013 Workflow option will appear.
I just went through this install again and luckily I had my notes. What I realized here is that every install failed until I added the FQDN to the username… ergo it succeeded only after I used the user [email protected] (INSTEAD OF spapppool@expertassist TO WHICH IT DEFAULTED). Long story short, add “.com” to the username and it will succeed.
Also, I’ve seen posts out there that Azure workflow can’t be instaleld on a domain controller… well I have and it does.
