安装和配置 SharePoint Server 的工作流

适用于:yes-img-132013 yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

本文包含为 SharePoint Server 配置 SharePoint 工作流管理器 (SPWFM) 所需的信息和过程。

注意

有两个单独的工作流引擎产品支持 SharePoint 2013 工作流平台:Microsoft 工作流管理器 (“经典WFM”) 和 SharePoint 工作流管理器 (SPWFM) 。 Microsoft 工作流管理器不再可供安装,而 SharePoint 工作流管理器 已发布以替换它。 因此,本文档中概述的说明介绍了如何安装 SharePoint 工作流管理器。

重要

本文中的步骤适用于 SharePoint Server。 SharePoint Foundation 2013 中不支持 SharePoint 2013 工作流平台。

注意

您可以watch一个视频系列,该视频系列演练了安装和配置 SharePoint 2013 工作流平台的过程。 若要查看视频,请参阅 视频系列:在 SharePoint Server 2013 中安装和配置工作流

了解 Microsoft 365 中的 SharePoint 工作流

概述

为 SharePoint Server 生成工作流时,存在一个新选项。 This option is called Platform Type. 此图显示了使用 SharePoint Designer 2013 创建新工作流时的“平台类型”选项。

图:SharePoint Server 包括三个工作流平台选项。

Three workflow platforms in SharePoint 2013.

首次安装 SharePoint Server 时,唯一可用的平台是 SharePoint 2010 工作流平台。 SharePoint 2013 工作流平台和 Project Server 平台需要更多步骤。 下表简要介绍这三个工作流平台。

SharePoint Server 中可用的工作流平台类型

平台类型 平台框架 要求
SharePoint 2010 Workflow
Windows Workflow Foundation 3
使用 SharePoint Server 自动安装。
SharePoint 2013 Workflow
Windows Workflow Foundation 4
需要 SharePoint 工作流管理器 或 Microsoft 工作流管理器 和 SharePoint Server。
SharePoint 2013 Workflow - Project Server
Windows Workflow Foundation 4
需要 SharePoint 工作流管理器或 Microsoft 工作流管理器和 Project 服务器。

注意

SharePoint 工作流管理器必须独立于 SharePoint Server 下载和安装。 安装 SharePoint Server 时,它不会自动安装。

SharePoint 工作流管理器的新安装

SharePoint 工作流管理器可以安装在与 SharePoint 相同的服务器上,也可以安装在单独的专用服务器上。 出于性能和可靠性的原因,建议在自己的专用服务器上安装 SharePoint 工作流管理器。

注意

具有奇数主机(例如 1、3 或 5)的场支持 SharePoint 工作流管理器。 不支持包含 2 个或 4 个 SharePoint 工作流管理器主机的场。

先决条件

SharePoint 工作流管理器需要 Web 服务器 (IIS) 的服务器角色。 如果在未安装 IIS 服务器角色的服务器上安装 SharePoint 工作流管理器,工作流管理器配置向导将失败,并显示无法加载文件或程序集“Microsoft.Web.Administration”等消息。 除了默认安装的功能外,SharePoint 工作流管理器工作还需要以下 IIS 功能:

  • Windows 身份验证(在“安全性”下面)
  • 应用程序开发) 下的 .NET 扩展性 4.7 (
  • 应用程序开发) 下 ASP.NET 4.7 (

SharePoint 工作流管理器可能未正确安装和配置,而网络环境中提供的仅 RODC (只读域控制器) ,因为它需要 RWDC (读/写 DC、完整的 DC) 。

SharePoint 工作流管理器需要 Azure Service Fabric,在运行 SharePoint 工作流管理器安装程序之前,必须安装它。 如果尚未安装 Azure Service Fabric 运行时,请按照以下步骤进行安装:

  1. SharePoint 工作流管理器支持的最低 Azure Service Fabric 运行时版本为 9.1.1583.9590,可以从 Azure Service Fabric 运行时下载。 或者,可以从 此处找到并下载其 Windows Installer 的任何更高版本。

  2. 以提升的管理员身份打开 PowerShell 控制台,并运行以下命令:

    .\MicrosoftServiceFabric.9.1.1583.9590.exe /accepteula

  3. 若要验证是否已安装 Azure Service Fabric,应能够在控制面板的“程序和功能”中找到它。

注意

SharePoint 工作流管理器支持版本 9.1 CU2 (9.1.1583.9590) Azure Service Fabric 及更高版本。 如果计算机上已安装Windows Fabric,则必须在安装 Azure Service Fabric 之前将其卸载。

据报道,Azure Service Fabric 可能会生成大量日志来挤压磁盘空间,而不考虑 SharePoint 工作流管理器工作负载,并且你可以在 下%ProgramData%\Microsoft Service Fabric\Log\Traces标识它。 但无法通过 群集配置控制日志大小,仅安装 Azure Service Fabric 运行时。 可能需要手动删除过期的日志,或者例如,通过 Windows 任务计划程序创建定期任务才能执行此操作。

安装 SharePoint 工作流管理器

可以从此处下载 SharePoint 工作流管理器和 SharePoint 工作流管理器 客户端。 系统要求也可以在该页上找到。

在工作流管理器场中的所有服务器上安装 SharePoint 工作流管理器 和 SharePoint 工作流管理器 客户端。 在 SharePoint Server 场中的所有服务器上仅安装 SharePoint 工作流管理器 客户端。

注意

尽管支持在运行 SharePoint Server 的服务器上安装 SharePoint 工作流管理器,但出于性能和可靠性考虑,建议在自己的专用服务器上安装 SharePoint 工作流管理器。

配置 SharePoint 工作流管理器场

若要创建 SharePoint 工作流管理器场并将服务器加入服务器场,可以通过工作流管理器配置向导配置 SharePoint 工作流管理器,请参阅视频系列安装和配置工作流

注意

安装 SharePoint Server 时,SharePoint 2010 工作流平台会自动安装。 SharePoint 2013 工作流平台需要 Microsoft 工作流管理器 (“经典WFM”) 或 SharePoint 工作流管理器 (SPWFM) ,并且必须单独安装,然后配置为使用 SharePoint Server 场。 若要正常运行,SharePoint 2013 工作流要求预配应用管理服务和网站订阅服务。 不需要设置通配符证书和 DNS 注册,但这两个实例都需要运行。

将 SharePoint 工作流管理器配置为使用 SharePoint Server 场

在将 SharePoint 工作流管理器配置为使用 SharePoint Server 之前,请考虑以下两个关键因素。

  • SharePoint 工作流管理器是否安装在属于 SharePoint 场的服务器上?

  • SharePoint 工作流管理器 与 SharePoint Server 之间的通信是否使用 HTTPHTTPS

这些因素可转换为四个方案。 每个方案都配置一个 SharePoint Server 场,以便与 SharePoint 工作流管理器 场进行通信和运行。 请遵循与您的情形相匹配的方案。

方案编号和说明 方案编号和说明
1:SharePoint 工作流管理器安装在属于 SharePoint Server 场的服务器上。 通信通过使用 HTTP 进行。
2:SharePoint 工作流管理器安装在属于 SharePoint Server 场的服务器上。 通信通过使用 HTTPS 进行。
3:SharePoint 工作流管理器安装在不属于 SharePoint Server 场的服务器上。 通信通过使用 HTTP 进行。
4:SharePoint 工作流管理器安装在不属于 SharePoint Server 场的服务器上。 通信通过使用 HTTPS 进行。

注意

[!注意] 出于安全考虑,我们建议将 HTTPS 用于生产环境。

在属于 SharePoint Server 场的服务器上配置 SharePoint 工作流管理器以及使用 HTTP 进行通信的服务器

  1. 登录到安装了 SharePoint 工作流管理器 的 SharePoint Server 场中的计算机。

  2. 右键单击 SharePoint 命令行管理程序并选择“以管理员身份运行”,以管理员身份打开SharePoint 命令行管理程序

  3. 运行 Register-SPWorkflowService cmdlet。

    示例

    Register-SPWorkflowService -SPSite "http://myserver/mysitecollection" -WorkflowHostUri "http://workflow.example.com:12291" -AllowOAuthHttp
    
  4. 登录到 SharePoint Server 场中的每个服务器。

    SharePoint Server 场中的每个服务器都必须安装 工作流管理器 客户端。

    注意

    SharePoint 工作流管理器服务器需要安装 SharePoint 工作流管理器和 SharePoint 工作流管理器 客户端软件。 SharePoint 服务器只需安装客户端。

  5. 在 SharePoint 场中的每台服务器上安装 SharePoint 工作流管理器 客户端。

在属于 SharePoint Server 场的服务器上配置 SharePoint 工作流管理器,并使用 HTTPS 在哪个服务器上进行通信

  1. 确定是否需要在 SharePoint 中安装 SharePoint 工作流管理器证书。

    在某些情况下,必须获取并安装 SharePoint 工作流管理器 证书。 如果您的安装需要您获取并安装这些证书,则在继续之前,必须完成此步骤。 若要了解您是否需要安装证书并获取相关说明,请参阅 在 SharePoint Server 2013 中安装工作流管理器证书

  2. 登录到安装了 SharePoint 工作流管理器 的 SharePoint Server 场中的计算机。

  3. 右键单击 SharePoint 命令行管理程序并选择“以管理员身份运行”,以管理员身份打开SharePoint 命令行管理程序

  4. 运行 Register-SPWorkflowService cmdlet。

    示例

    Register-SPWorkflowService -SPSite "https://myserver/mysitecollection" -WorkflowHostUri "https://workflow.example.com:12290"
    
  5. 登录到 SharePoint Server 场中的每个服务器。

    SharePoint Server 场中的每个服务器都必须安装 工作流管理器 客户端。

    注意

    SharePoint 工作流管理器服务器需要安装 SharePoint 工作流管理器和 SharePoint 工作流管理器 客户端软件。 SharePoint 服务器只需安装客户端。

  6. 在 SharePoint 场中的每台服务器上安装 SharePoint 工作流管理器 客户端。

若要在不属于 SharePoint Server 场的服务器上配置 SharePoint 工作流管理器,并使用 HTTP 在哪个服务器上进行通信

  1. 登录到 SharePoint Server 场中的每个服务器。

  2. 在 SharePoint 场中的每台服务器上安装 SharePoint 工作流管理器 客户端。

    在运行工作流配对 cmdlet 之前,必须在 SharePoint 场中的每个服务器上安装 SharePoint 工作流管理器 Client。

  3. 右键单击 SharePoint 命令行管理程序命令并选择“以管理员身份运行”,以管理员身份打开SharePoint 命令行管理程序

  4. 运行 Register-SPWorkflowService cmdlet。 此 cmdlet 只应运行一次,并且可以从 SharePoint 服务器场中的任何服务器运行。

    示例

    Register-SPWorkflowService -SPSite "http://myserver/mysitecollection" -WorkflowHostUri "http://workflow.example.com:12291" -AllowOAuthHttp
    

重要

在运行配对 cmdlet 之前,必须在 SharePoint 场中的每个服务器上安装 SharePoint 工作流管理器 客户端。

在不属于 SharePoint Server 场的服务器上配置 SharePoint 工作流管理器并使用 HTTPS 在哪个服务器上进行通信

  1. 确定是否需要在 SharePoint Server 中安装 SharePoint 工作流管理器证书。

    在某些情况下,必须获取并安装 SharePoint 工作流管理器 证书。 如果您的安装需要您获取并安装这些证书,则在继续之前,必须完成此步骤。 若要了解您是否需要安装证书并获取相关说明,请参阅 在 SharePoint Server 2013 中安装工作流管理器证书

  2. 登录到 SharePoint Server 场中的每个服务器。

  3. 在 SharePoint 场中的每台服务器上安装 SharePoint 工作流管理器 客户端。

    在运行工作流配对 cmdlet 之前,必须在 SharePoint 场中的每个服务器上安装 SharePoint 工作流管理器 Client。

  4. Open the SharePoint Management Shell as an administrator. 这是通过右键单击 SharePoint 命令行管理程序 命令并选择“ 以管理员身份运行”来实现的。

  5. 运行 Register-SPWorkflowService cmdlet。

    示例

    Register-SPWorkflowService -SPSite "https://myserver/mysitecollection" -WorkflowHostUri "https://workflow.example.com:12290"
    

重要

在运行配对 cmdlet 之前,必须在 SharePoint 场中的每个服务器上安装 SharePoint 工作流管理器 客户端。

升级现有 Microsoft 工作流管理器

为了将 Microsoft 工作流管理器 (经典WFM) 更新为 SharePoint 工作流管理器 (SPWFM) ,SharePoint 工作流管理器不能放在 Microsoft 工作流管理器之上。 安装此版本需要首先卸载任何以前版本的 工作流管理器、工作流管理器 客户端和服务总线。

可以从任何版本的 Microsoft 工作流管理器 升级到 SharePoint 工作流管理器。

按照以下步骤卸载 Microsoft 工作流管理器并安装 SharePoint 工作流管理器:

  1. 打开工作流管理器配置向导。

  2. 选择“离开工作流管理器场”。

  3. 确认后续步骤,直到结束。

    注意

    使用 SharePoint 工作流管理器 重新加入场时,需要指定 工作流管理器 和服务总线使用的每个数据库。 例如,工作流管理器场管理数据库和服务总线场管理数据库的SQL Server实例和数据库名称。

  4. 卸载 Microsoft 工作流管理器、工作流管理器 客户端、适用于 Windows Server 的服务总线,以及Windows Fabric(如果已安装)。 可以从控制面板卸载它们。 如果安装了Windows Fabric,请确保在卸载Windows Fabric后安装 Azure Service Fabric。

  5. 如果文件夹 %ProgramFiles%\工作流管理器\1.0 已存在,则必须手动删除它,后续步骤才能成功。

  6. 安装 SharePoint 工作流管理器 和 SharePoint 工作流管理器 客户端。

  7. 如果工作流管理器场中有多个服务器,请在所有场服务器上重复上述步骤。

  8. 运行工作流管理器配置向导,并在工作流管理器场中的所有服务器上使用前面步骤中记录的数据库重新加入上一个场。

    注意

    无需删除现有工作流服务应用程序代理,也无需重新注册 SPWorkflowService。 如果遇到 SharePoint 工作流管理器和服务总线证书生成密钥无效,可以重置它,请参阅重置证书生成密钥

  9. 重新运行工作流管理器配置向导,选择“升级工作流管理器场”,并确认后续步骤,直到结束。

    注意

    此步骤应在 SharePoint 工作流管理器 场中的所有服务器上运行。 无论是否需要升级,“升级工作流管理器场”选项始终显示在工作流管理器配置向导中。 多次运行它没有任何危害。

  10. 卸载任何早期版本后,在 SharePoint Server 场中的每台服务器上安装 SharePoint 工作流管理客户端。

验证安装

按照以下步骤验证是否已成功安装和配置所需的组件。

验证安装的具体步骤

  1. 将某个用户添加到 SharePoint 网站,并授予该用户"网站设计者"权限。
  2. 安装 SharePoint Designer 2013 并创建基于 SharePoint 2013 Workflow 平台的工作流。 有关详细信息,请参阅通过使用 SharePoint Designer 2013 和 SharePoint 2013 Workflow 平台创建工作流
  3. 从 SharePoint 用户界面运行此工作流。

疑难解答

出于安全原因,安装程序帐户不能用于基于 SharePoint 2013 工作流平台创建工作流。 如果尝试使用 SharePoint Designer 2013 基于 SharePoint 2013 工作流平台创建工作流,则会收到一条警告,指出工作流操作列表不存在,并且工作流未创建。

必须将部署和运行工作流的用户添加到 User Profile Service。 检查管理中心的“用户配置文件服务”应用程序页,确认用于验证工作流安装的用户是否在 User Profile 服务中。

可以使用 IIS 管理器确定 SharePoint Server 和工作流管理器对 HTTP 和 HTTPS 使用哪些端口,如图所示。

图:使用 IIS 管理器查看 SharePoint 工作流管理器

View ports in IIS Manager.

Sharepoint 工作流管理器使用 TCP/IP 或命名管道进行通信。 确保在托管 SharePoint 工作流管理器 数据库的 SQL Server 实例上启用相应的通信协议。

SQL Browser Service 必须在承载 工作流管理器 数据库的 SQL Server 实例上运行。

系统帐户不能用于开发工作流。

若要对 SharePoint Server 进行故障排除,请参阅 SharePoint Server 故障排除