使用 Service Manager,可以自动执行以前需要手动任务的许多管理过程。 实现该项自动化的功能就是 Windows Workflow Foundation (WF) 工作流。 WF 工作流包括工作流活动,也称为 WF 活动 ,以将它们与其他 Service Manager 活动类型区分开来。 每个工作流活动执行一个函数,例如将用户或计算机加入 Active Directory 域服务 (AD DS)中的组、创建 Service Manager 事件或运行脚本。 你可以将 WF 活动组合为执行一组任务的工作流,并且可以指定工作流的运行条件。
本文介绍 Service Manager 中可用于自动执行进程的功能。 它描述工作流和管理包之间的关系,并描述了 Service Manager 创作工具在默认活动库中提供的 Windows Workflow Foundation (WF) 活动。
工作流和管理包
Service Manager 使用管理包中存储的触发器条件信息运行 Windows Workflow Foundation (WF) 工作流。 对于每个工作流,管理包均包含一个数据源模块和一个写操作模块。 数据源模块定义触发工作流运行的条件,而写操作模块定义工作流操作。 管理包还存储工作流使用的任何脚本信息。
文件和格式
除了需要管理包文件之外,WF 工作流还需要几个支持文件:
创作环境文件。 在您创建或编辑工作流时,这些文件存储原始工作流信息,例如属性值和工作流逻辑。
已编译的工作流程序集文件 (workflowname.dll)。 在 Service Manager 创作工具中保存管理包时,该工具还会将任何原始工作流文件(XOML 和 CS 文件)编译为工作流程序集 (DLL) 文件。
活动程序集文件 (activityname.dll)。 这些文件包含可用的工作流活动的定义。 编辑工具无法修改活动程序集文件。
若要在 Service Manager 控制台环境中实现包含工作流的管理包,请确保 Service Manager 有权访问工作流程序集文件和活动程序集文件以及管理包本身。 下图说明在工作流运行时不同的文件如何交互。
工作流的触发条件
工作流的数据源模块定义工作流触发器条件。 工作流可以有两种类型的触发器条件之一:
计时器。 此选项(也称为 “计划”)在每周的指定日或按照另一个指定的间隔触发工作流。
数据库查询。 此选项(也称为 订阅)在特定的对象类发生特定类型的更改时触发工作流。 你可以从任何已安装管理包中选择类,并且可以选择以下三种类型的更改:
在创建类的新实例时
在更新类的实例时
当一个类的对象实例被删除时
活动库
Service Manager 创作工具中的活动库提供了许多用于构建基础 Windows Workflow Foundation (WF) 工作流的活动。 每个活动执行离散函数,例如在工作流中建立循环结构、运行脚本或创建 Service Manager 事件。 活动库中包含下列类型的活动:
Active Directory 活动 - 执行 Active Directory 功能的活动,例如将用户或计算机添加到组。
控制流活动 - 为工作流提供结构的活动,例如循环和 if-else 分支。
Virtual Machine Manager 活动 - 可用于生成使用虚拟机执行简单操作的工作流的活动。
脚本活动 - 运行 Windows PowerShell、命令行或Microsoft Visual Basic 脚本版本(VBScript)脚本的活动。
Service Manager 活动 - 执行 Service Manager 功能的活动,例如创建或更新事件。
下表列出了创作工具提供的默认活动:
Active Directory 活动 | 说明 |
---|---|
将 AD DS 计算机添加到组 | 使用此活动将计算机添加到 Active Directory 域服务 (AD DS) 中的安全组。 使用此活动时,请确保 Service Manager 工作流帐户具有足够的权限来修改 AD DS 中的安全组。 |
将 AD DS 用户添加到组 | 使用此活动将用户添加到 AD DS 中的安全组。 使用此活动时,请确保 Service Manager 工作流帐户具有足够的权限来修改 AD DS 中的安全组。 |
控制流活动 | 说明 |
---|---|
延迟 | 使用此活动在工作流中的活动之间加入延迟。 |
For Each 循环 | 使用此活动重复执行某一组活动,以完成指定次数的迭代。 |
IfElse | 使用此活动根据布尔 (True/False) 条件控制工作流内的活动序列。 您可以将前一个活动(例如脚本活动)的结果用作条件。 |
并行程序 | 使用此活动将活动序列分为两个同时进行的活动序列。 |
虚拟机管理活动 | 说明 |
---|---|
获取虚拟机 | 使用此活动从 System Center Virtual Machine Manager (VMM) 库中检索一个或多个虚拟机 ID 的列表。 |
移动虚拟机 | 使用此活动将虚拟机从 VMM 库移到维护主机。 |
关闭虚拟机 | 使用此操作关闭虚拟机上的来宾操作系统。 |
启动虚拟机 | 使用此活动启动已停止或已暂停的虚拟机。 |
保存状态虚拟机 | 使用此活动保存虚拟机的状态,然后停止虚拟机。 |
脚本活动 | 说明 |
---|---|
命令脚本 | 使用此活动将命令行脚本作为 WF 工作流的一部分运行。 |
VBScript 脚本 | 使用此活动将 VBScript 脚本作为 WF 工作流的一部分运行。 |
Windows PowerShell 脚本 | 使用此活动将 Windows PowerShell 脚本作为 WF 工作流的一部分运行。 |
Service Manager 活动 | 说明 |
---|---|
创建事件 | 使用此活动创建并填充 Service Manager 事件。 |
获取事件 | 使用此活动可检索一个或多个 Service Manager 事件。 |
更新事件 | 使用此活动将属性更改保存到一个 Service Manager 事件。 |
将活动状态设置为“已完成” | 使用此活动来更新服务管理器(Service Manager)自动化活动的状态。 |
后续步骤
- 用创作工具管理工作流。
- 添加或删除工作流活动。
- 配置活动管理和传递信息的方式。