Apple Qmaster 分布式系统的基本组件

虽然 Apple Qmaster 软件包括几种不同的应用程序(请参阅Apple Qmaster 分布式处理系统中的界面),但它在整体上是网络系统的一部分,该系统包括以下基本组件。

备注: 在分布式处理系统中,Compressor 版本必须都相同,而 QuickTime 版本和 Mac OS 版本亦然。

客户端电脑、服务节点和群集控制器通常在不同(但通过网络连接)的电脑上,以便获得最快的处理速度。但是,群集控制器可位于客户端电脑或服务节点上。有关这种情况的更多信息,请参阅使用一台电脑充当两个分布式处理角色

下面更详细地介绍每个组件在 Apple Qmaster 系统中所起的作用。

客户端

客户端电脑提交批进行分布式处理。安装了 Compressor 并且与群集控制器位于同一个网络(子网)上的任何一台电脑都可以用作客户端电脑。多台客户端电脑可以位于同一个子网上,使用同一个群集为各种应用程序执行处理操作。

您可以使用 Compressor 或 Apple Qmaster 应用程序提交客户端的待处理批。有关如何使用这些应用程序的详细信息,请参阅基本转码工作流程《Apple Qmaster 使用手册》

群集

当客户端将批发送到 Apple Qmaster 分布式处理系统后,所有处理工作和随后输出文件的移动均由配置了 Apple Qmaster 的电脑(称为群集)完成。您可以创建一个或多个服务节点群集,每个群集包括一个群集控制器。群集中的每台电脑都通过网络连接与群集中的其他电脑相连。

Figure. Diagram showing the Apple Qmaster cluster including one cluster controller and three service nodes.

备注: 此插图仅提供了一个简单的群集示例。分布式处理网络的示例中介绍了其他可能的情形。

服务节点

服务节点是完成处理工作的地方。您将一组服务节点分配给一个群集时,这些节点就成为一台功能非常强大的电脑,因为它们的所有资源都是共享的。如果一个服务节点过载或不能访问,就会使用另一个服务节点。

您可以将电脑设为服务节点,方法是在“Apple Qmaster 共享”窗口中配置该电脑,该窗口可通过从 Compressor 的“Apple Qmaster”菜单中选取“共享本电脑”来访问。

必备基础知识

以下是设置分布式处理网络的基本规则:

  • 一个群集必须包含一台(且只有一台)电脑充当群集控制器,并且至少一台电脑充当服务节点。(这两者可以是同一台电脑,如使用一台电脑充当两个分布式处理角色中所示。)

  • 客户端电脑和支持客户端电脑的任何群集中的电脑必须在同一网络上。

  • 网络必须支持在 Mac OS X 中内建的 Apple 网络技术。

  • 群集中的全部电脑需要具备对任何电脑(或储存设备)的读写访问权限,这些电脑将被指定为文件的输出目的位置。

分布式处理网络的示例

一个很小的分布式处理设置可能只包含两台电脑:

  • 一台连接到客户端的电脑,配置为同时充当服务节点和群集控制器

  • 一台客户端电脑

    Figure. Diagram showing the client computer and the computer acting as both the service node and the cluster controller.

这项设置虽然简单,但是在小规模环境中非常有用,因为它允许客户端电脑分担许多处理工作。

使用一台电脑充当两个分布式处理角色

为了充分利用资源,您可能会考虑将一些电脑用于多种分布式处理功能。

  • 服务节点和群集控制器: 在小型设置中,群集中的服务节点之一也可以充当群集控制器,从而执行两种功能。然而,在具有多个服务节点的群集中,要求群集控制器承担的处理工作量可能很高,以致使用一台电脑同时充当服务节点和群集控制器将不够用。
  • 客户端电脑和群集控制器或服务节点: 你也可以将客户端电脑设置为充当一个群集控制器或群集中的服务节点,但是切记,电脑的可用处理能力越强,它管理或处理作业的速度就越快。

以下设置过程适用于使用台式电脑的环境。之所以称为“分时”处理,是因为每台电脑都充当某人的工作站,但是同时也是分布式处理群集的一部分。在每天下班时,可用 Compressor 或 Apple Qmaster 提交大量处理作业,从而让电脑在员工回家后忙于处理分布式处理批的大量队列。(有关安排服务节点可用时间的信息,请参阅关于“Apple Qmaster 共享”窗口中的高级设置在“工作计划”对话框中安排服务可用时间。)

Figure. Diagram showing a network of five computers in which each computer acts as both a client and a service node.

在上述示例设置中,5 台电脑同时充当客户端(用户工作站,用户在此提交进行分布式处理的作业)和群集电脑(进行处理)。每台电脑具有一个附件宗卷,如 FireWire 驱动器,用于存储渲染前后的媒体及其相关联的文件。

为了进行更强大的渲染,网络可能包括局域网上的一些客户端电脑,且使用高速交换机连接到一个群集。服务器机架加上共享储存设备充当群集,将成为一个功能极为强大的渲染引擎。每个服务节点都将有相关客户端应用程序软件的一个本地副本,以便处理渲染作业。

Figure. Diagram showing client computers, high-speed switches, and a rack of servers containing the cluster controller and service nodes.

Apple Qmaster 系统如何分发批处理

Apple Qmaster 群集控制器可确定群集资源的最有效用法。它确定的依据是每个服务节点的可用性和批的可分部分(在下一部分介绍)的数量。

因为 Apple Qmaster 在各个服务节点之间对单个批进行细分,所以工作由多个节点共同执行并且更快地完成。而且,因为这种方法尽量使用所有服务节点,所以不会浪费您的资源。

批可由群集控制器通过以下一种或两种方式分发给群集。(Apple Qmaster 会根据情况确定哪种方式对于特定批处理最有效。)

  • 将批处理细分为数据段: 例如,对于渲染批处理,群集控制器可以将帧分为多组(分段)。各个分段在群集中的服务节点上被同时处理。
  • 将批处理细分为任务: 例如,对于渲染批处理,群集控制器可以将渲染工作细分为不同的处理任务。不同的任务在不同服务节点上运行。

Apple Qmaster 不会实际地移动分段,而是通过网络告诉服务节点读取哪些分段、在哪里找到分段及如何处理。下面的示例说明 Apple Qmaster 系统中处理批的过程。

Figure. Diagram showing the batch, the cluster controller, instructions to individual service nodes, and the processed output file.

在分配批时,Apple Qmaster 采用内建在 Mac OS X 中的技术在同一 IP 子网上的群集中找到服务,并动态共享和接收信息。因为电脑可以不断地发送其当前的处理可用状态,Apple Qmaster 能够在群集中平均分发工作量(负载均衡)。

分布式处理网络其他可能的组件

分布式处理网络可以只由一到两台电脑组成,而大容量网络可能包括许多电脑、机架中的 Xserve 系统和 Xserve 群集节点和高速网络基础架构。您可以根据工作量的需要,将支持网络的功能和设备添加到网络中,来扩展分布式处理系统。

有多种方式可以扩展分布式处理网络的容量。您可以选用以下任何一种方式。

  • 高速交换机和电缆: 100Base-T 或千兆以太网交换机和适当的电缆,可让您以最高速度在 LAN 上传输数据。
  • 多客户端: 多台客户端电脑可以使用同一个群集的服务。您也可以使用同一个群集,在相同的客户端电脑上拥有多个客户端应用程序。
  • 多群集: 您可能想要根据网络规模和网络需要服务的客户端数量,对现有的电脑分组,并创建多个群集为各种客户端提供服务。(用户在提交批处理时,选择他们想要将批处理发送到的群集。)
  • 多服务节点: 通常,服务节点越多意味着处理能力越强。在决定一个群集中有多少个服务节点时,请考虑数据转移时间与计算时间之比。如果处理需求量大于整个群集中移动作业分段必需的网络需求量,最好按原样进行渲染,当然最好提供更多服务节点。如果每个作业的计算工作量接近网络工作量,则每个群集具有较少服务节点数量的效率会更高。如果您使用的是 Apple Qmaster 分布式处理系统,但是使用的应用程序不是 Shake 或 Compressor,请参阅应用程序用户指南,获取有关如何充分利用服务节点数量的信息。
  • 储存设备: 储存设备(如远程磁盘或一组磁盘阵列)可用作群集暂存存储空间,在此短期存储由群集控制器、客户端和服务节点生成的临时数据。(在 Compressor 的“Apple Qmaster 共享”窗口中设定暂存存储位置。有关更多信息,请参阅关于“Apple Qmaster 共享”窗口中的高级设置使用群集存储位置。))或者将储存设备用作文件被处理后的最终存储位置。

有关更多信息,请参阅分布式处理网络的示例