Orchestrator 体系结构

 

发布日期: 2016年3月

适用于: System Center 2012 SP1 - Orchestrator,System Center 2012 - Orchestrator,System Center 2012 R2 Orchestrator

本主题概述 System Center 2012 - Orchestrator,并描述系统体系结构、典型 Runbook 工作流的内部结构以及已部署 Runbook 的流。

Orchestrator 部署基础知识

下表列出了 Orchestrator 基本部署中的功能。

Orchestrator 功能 描述
Management 服务器 Management 服务器是 Runbook Designer 与 Orchestration 数据库之间的通信层。
Runbook 服务器 Runbook 服务器是运行 Runbook 实例的位置。 Runbook 服务器直接与 Orchestration 数据库进行通信。 你可以在安装的每个 Orchestrator 中部署多个 Runbook 服务器以提高容量和冗余。
Orchestration 数据库 数据库是 Microsoft SQL Server 数据库,其中包括 Orchestrator 的所有已部署的 Runbook、运行的 Runbook 的状态、日志文件和配置数据。
Runbook 设计器 Runbook Designer 是用于构建、编辑和管理 Orchestrator Runbook 的工具。 有关 Runbook Designer 的详细信息,请参阅 在 System Center 2012 - Orchestrator 中使用 Runbook
Runbook 测试程序 Runbook Tester 是一个用于测试在 Runbook Designer 中开发的 Runbook 的实时工具。 有关 Runbook Tester 的详细信息,请参阅 如何测试 Runbook中的在 System Center 2012 - Orchestrator 中使用 Runbook
业务流程控制台 利用 Orchestration 控制台,你可以启动或停止 Runbook 以及在 Web 浏览器中查看实时状态。 有关使用 Orchestration 控制台的详细信息,请参阅 在 System Center 2012 - Orchestrator 中使用 Orchestration 控制台
Orchestrator Web 服务 Orchestrator Web 服务是基于表述性状态传输 (REST) 的服务,通过使用自定义应用程序或脚本,此服务允许自定义应用程序连接到 Orchestrator 以启动和停止 Runbook 以及检索关于操作的信息。 Orchestration 控制台使用此 Web 服务与 Orchestrator 交互。
Deployment Manager Deployment Manager 是一个用于部署集成包 (IP)、Runbook 服务器和 Runbook Designer 的工具。 有关此工具的详细信息,请参阅 部署 System Center 2012 - Orchestrator

体系结构图表

以下图表说明了每个 Orchestrator 功能以及相互之间的通信。

System Center 2012 - Orchestrator 体系结构
System Center 2012 - Orchestrator 体系结构

Orchestration 数据库是 Orchestrator 安装的中心,其中包含所有 Runbook、配置设置和日志。 系统需要以 Management 服务器作为 Runbook Designer 与 Orchestration 数据库之间的通信层。 一个或多个 Runbook 服务器直接与此数据库通信,以检索要运行的 Runbook 以及存储关于从 Runbook 中创建的作业的信息。 Web 服务也直接与 Orchestration 数据库通信,并为 Orchestration 控制台提供 Web 浏览器连接。

Orchestrator 扩展

下表显示了可用于扩展 Orchestrator 标准安装所提供的功能的多个策略。 有关其他信息,请参阅 部署 System Center 2012 - Orchestrator

Orchestrator 功能 描述
集成包 (IP) 集成包是特定于产品或技术的自定义活动的集合。 Microsoft 和其他公司提供的集成包中具有用于从 Orchestrator Runbook 中与其产品交互的活动。
Orchestrator Integration Toolkit 利用 Orchestrator Integration Toolkit,你可以将活动库扩展到标准活动和集成包集合之外。 集成工具包具有用于为 Orchestrator 创建新活动和集成包的基于向导的工具。 开发人员也可以使用集成工具包从使用 Orchestrator SDK 构建的自定义活动中创建集成包。

使用 Runbook 实现的自动化

为了在 Orchestrator 中自动执行任务或过程,你可以使用 Runbook Designer 创建 Runbook。 你可以从“活动”窗格中拖动活动以将活动添加到 Runbook 中,然后按照所需顺序链接活动以创建工作流。

下图显示了简单的 Runbook。

用于监视事件日志的 runbook

此 Runbook 监视事件日志。 当它检测到指定事件时,此 Runbook 会在特定计算机上的 Windows 中检查特殊进程的状态。 如果发现该进程正在运行,它将停止。 然后该 Runbook 启动该进程,并发送关于进程状态更改的电子邮件通知。

每个 Runbook 活动完成之后才会继续下一个活动,你可以使用提供复杂逻辑(例如,要求完成多个活动后再继续运行 Runbook)的活动。 通过对活动和智能链接使用逻辑组合,你可以实施特定自动化方案所需的任何类型的逻辑。

Orchestrator 如何处理 Runbook

创建 Runbook 之后,你可以通过签入将其提交到 Orchestration 数据库。 然后,你可以使用 Runbook Designer 或 Orchestration 控制台来启动和停止 Runbook。

运行 Runbook 的请求会创建一个存储在 Orchestration 数据库中的“作业”。 每个 Runbook 都可以定义一个主 Runbook 服务器以及一个或多个备用服务器,如果主服务器不可用,则这些备用服务器可以处理 Runbook。 每个 Runbook 服务器上的服务会继续监视 Orchestration 数据库中是否存在它可以处理的作业。 当 Runbook 服务器检测到作业时,它会记录它正在处理该作业,在本地复制 Runbook,记录它正在运行 Runbook 的实例,然后开始处理该 Runbook。 对于未包含监视器的任何 Runbook,你可以创建多个 Runbook 请求,这意味着单一 Runbook 可以具有多个作业。

当 Runbook 服务器处理作业时,它会通过在本地创建 Runbook 副本的方式创建 Runbook 的“实例”,然后根据所包括的工作流逻辑执行 Runbook 中定义的操作。 状态信息、活动结果和数据记录在 Orchestration 数据库中,以便你可以监视 Runbook 的实时状态和历史状态。

权限

通过将用户帐户添加到安装期间创建的安全组,可以提供对 Orchestrator 的访问权限。 此组可以是域组或 Management 服务器上的本地组。 此组的用户具有对 Runbook Designer 的完全访问权限,因此可以创建和修改 Runbook;并且具有对 Deployment Manager 的完全访问权限,因此可部署新的 Runbook Designer 和 Runbook 服务器。 那些必须启动和停止 Runbook 但未创建 Runbook 的操作员可被授予对单独 Runbook 的此权限,然后可以使用 Orchestration 控制台。