本章讨论如何在磁带库存储模块 (LSM) 之间进行直通活动期间实现磁带库的最佳性能。ACSLS 力图以多种方式最大程度地减少直通活动。可以使用以下 ACSLS 工具增强性能,以最大程度地减少直通活动。它们包括:
发送足够多的并发挂载和卸载请求
连接到多个 SL8500
最大程度地减少 LSM 之间的直通活动
在卸载期间浮动磁带
将磁带装入磁带库
从磁带库弹出磁带
在磁带库中保留空存储单元
借助 ACSAPI 请求和 ACSLS 命令最大程度地减少直通活动
使用这些 ACSAPI 请求和 ACSLS 命令
某些客户机应用程序设计用于简单的 SCSI 介质转换器磁带库,这些磁带库一次只能处理一个请求。但是,ACSLS 和 SL8500 及 SL3000 磁带库设计为可同时处理许多请求。每个磁带库在请求队列中可以至少有 40-50 个并发请求,ACSLS 队列基本上是无限的。
客户机可向 ACSLS 发送上百个并发挂载和卸载请求。为了最大程度地发挥磁带库的性能,客户机应向 ACSLS 发送足够多的请求,使磁带库中的所有机械手等保持忙碌状态。
如果客户机只能向 ACSLS 发送数量有限的并发请求,则可以将多个客户机连接到 ACSLS。例如,如果某个特定客户机应用程序只能向 ACSLS 一次发送一个挂载或卸载请求,通过将每个 SL8500 的 12-16 个客户机应用程序连接到 ACSLS,就可以向 ACSLS 发送足够多的并发挂载和卸载请求,使 SL8500 中的所有机械手保持忙碌状态。
以下详细信息有助于理解需要多少个并发请求来使磁带库的机械手保持忙碌状态:
只有在磁带机已装入并就绪时,磁带库才会向 ACSLS 返回挂载响应。通过这种方式,ACSLS 就会知道挂载是否成功。
在包含大约 3000 个存储单元的较小的 SL8500 中,机械手需要大约 10-15 秒将磁带移到磁带机。
但是,LTO 磁带机需要大约 19 秒来装入磁带并准备就绪。
要使滑轨上哪怕一个机械手保持忙碌状态,该滑轨上至少需要三个重叠的挂载请求。
这样,机械手就能在接收磁带的第一个磁带机正在装入并变为就绪状态时处理其他的挂载。如果每个滑轨有两个机械手,可能需要每个滑轨至少有四个并发挂载或卸载请求。
一个 SL8500 有四个滑轨,因此每个 SL8500 需要 12-16 个并发挂载和卸载请求,以使 SL8500 中的所有机械手保持忙碌状态。
所有这些并发请求可以来自单个 ACSAPI 客户机,也可以来自 12-16 个不同的客户机,每个客户机一次只发出一个请求,并等待响应,然后再发出下一个请求。
如果 ACSLS 服务器管理通过直通端口连接的一个 SL8500 磁带库串,则连接到该磁带库串中的每个 SL8500。这样可让 ACSLS 将请求路由到回复状态或启动磁带移动的磁带库,从而优化磁带库性能。
有关连接到一个 SL8500 磁带库串中多个 SL8500 的详细信息,请参阅多 TCP/IP 支持。
要提高磁带库性能,重要的是将从一个磁带库到另一个磁带库的直通活动减至最少。如果磁带和磁带机位于相连的磁带库中,通常希望在磁带机和磁带都处于相同的 LSM(磁带库中的滑轨)中时进行磁带挂载。需要较少直通的挂载会使性能提高。
图 L-1 显示当磁带和磁带机位于不同的 LSM 中时可能需要的直通。
有关更多信息,请参阅最大程度地减少升降装置和 PTP 活动、将磁带机配置为支持您的工作负荷和管理磁带位置。
卸载磁带时,ACSLS 尝试避免在 LSM 之间进行直通活动,方法是只要磁带的旧起始单元与磁带机处于不同的 LSM 中时,就分配一个新的起始单元。这是 ACSLS 的默认行为。要禁用此功能,可对 LSM 使用“扩展存储”功能。要卸载的磁带将“浮动”到新起始单元,以避免在 LSM 之间移动。
如果所有存储单元都已满,ACSLS 就无法在卸载时将磁带“浮动”到 LSM。同样,将磁带装入满的 LSM 时,必须将该磁带直通到具有空单元的 LSM。
为了优化性能,可标识不需要保留在磁带库中的磁带,以简化访问过程,并从磁带库弹出这些磁带。您也可能要将磁带从满的 LSM 移到具有足够空单元的其他 LSM,使所有 LSM 都有足够的空存储单元。请参见从活动 LSM 移动最近最少访问的磁带。
注:
应在磁带库不忙于处理挂载请求时管理磁带库中的磁带。需要协调 ACSLS 和客户机应用程序之间的挂载和卸载超时。客户机的超时需要足够长,以便让需要在 SL8500 滑轨和磁带库之间进行直通的挂载和卸载完成。这些超时也需要足够长,以便多个并发请求能够完成,特别是在请求等待直通端口时。
ACSLS 还会在磁带库或磁带机临时停机时自动将请求排队,并在磁带库或磁带机可用时进行重试。这可以防止在冗余电子设备切换期间、磁带库或磁带机重新引导或磁带库检修门打开时请求失败。
挂载和卸载排队的默认时间 (MOUNT_RETRY_TIME_LIMIT) 是 20 分钟。客户可将该时间设置为 5 到 80 分钟内的任何时间。ACSLS 还每 MOUNT_RETRY_DELAY 检查一次以确认磁带库是否能够处理排队的请求。这两个变量都是动态变量,这意味着它们可在 ACSLS 运行时更改,并且更改将立即生效。
调整 ACSAPI 客户机的超时,以允许较大复合磁带库中的请求完成。还要协调 MOUNT_RETRY_TIME_LIMIT 和 ACSAPI 客户机的挂载和卸载超时。
将磁带装入磁带库时,将为每个磁带分配在距离 CAP 最近的 LSM 中的一个起始单元。如果具有 CAP 的 LSM 有空单元,则在此 LSM 中分配起始单元。如果具有 CAP 的 LSM 已满,则在最近的、具有空单元的 LSM 中分配起始单元。
为了优化性能,可将磁带装入具有与磁带兼容的磁带机的 LSM。例如,可将 9940 磁带装入具有 T9940B 磁带机的 LSM,而不是仅具有 T9840B 磁带机的 LSM。否则,必须将 9940 磁带直通到具有 T9940B 磁带机的 LSM。
这些 ACSAPI 请求和 ACSLS cmd_proc 命令有助于避免在 LSM 之间进行不必要的直通活动。
以下命令适用于从客户机发送到 ACSLS 的 ACSAPI 请求,以及使用 cmd_proc 输入的 ACSLS 命令。术语“请求”可用于 ACSAPI 请求和 cmd_proc 命令。
此项适用于挂载所选的数据磁带或特定暂存(空)磁带。请使用以下命令:
query mount
mount
下节讨论挂载由 ACSLS 选定的暂存磁带。
对于指定的暂存池,将返回与指定暂存池中磁带的介质类型兼容的所有磁带机列表。可指定特定介质类型,以将磁带机限制为仅限与指定的介质类型兼容的磁带机。
将对返回的磁带机列表排序,使最接近密度最高的暂存池的磁带机列在首位。
命令:
ACSAPI
cmd_proc
query mount scratch
query mount * pool_id [media media_type]
可指定特定介质类型或 ALL_MEDIA_TYPE(cmd_proc 命令中的 media *)。ANY_MEDIA_TYPE 不受支持。
注:
如果指定ALL_MEDIA_TYPE,将选择具有与磁带机兼容的介质的磁带来确定密度最高的暂存池。对于指定磁带机,选择暂存(空)磁带并挂载它。或者,从指定暂存池选择磁带和/或选择具有指定介质类型的磁带。ACSLS 将选择距离磁带机最近的 LSM 中兼容的暂存磁带。为了轮转使用所有磁带,将选择所选 LSM 中具有最早访问日期的兼容磁带。
命令:
ACSAPI
cmd_proc
mount scratch
mount * drive_id [pool_id] [media media_type]
对于 ACSAPI 请求,必须指定 drive_id、pool_id 和 media_type。(可为 media_type 指定介质类型、ALL_MEDIA_TYPE 或 ANY_MEDIA_TYPE。)
使用 cmd_proc mount * 命令时,如果未指定 pool_id,则默认为公共池(池 0)。
可以确定特定的介质类型。如果指定 media *,则选择 ANY_MEDIA_TYPE。如果未指定介质,则选择 ALL_MEDIA_TYPE。
将处理 ANY_MEDIA_TYPE 和 ALL_MEDIA_TYPE 的特殊 media_type 值,如下所示:
如果指定 ALL_MEDIA_TYPE,则选择具有与磁带机兼容的介质类型的磁带。(这是基于 media_compatibility 文件选择的。)
如果指定 ANY_MEDIA_TYPE,scratch_preferences 文件将确定要挂载到磁带机的首选介质列表。
本节介绍如何使用 ACSAPI 请求和命令来提高磁带库性能。
在下面的讨论中,术语“请求”既用于 ACSAPI 请求,又用于 cmd_proc 命令。
挂载特定磁带(其中 vol_id 为已知)时:
在处理 mount 请求之前处理 query mount 请求。
选择第一个“可用的”磁带机,并在 mount 请求中指定该磁带机。
将暂存磁带挂载到特定磁带机时,有两个选项:
选择距离特定磁带机最近的暂存磁带:
使用 mount scratch 请求指定磁带机及暂存池(可选)。
对于 ACSAPI 请求,指定以下选项之一:
ALL_MEDIA_TYPE(已选择兼容的介质)
ANY_MEDIA_TYPE(使用暂存首选项列表)。
对于 cmd_proc 命令,选择以下选项之一:
不指定介质类型(已选择兼容的介质)
指定 media *(使用暂存首选项列表)。
从磁带机列表中选择特定磁带机,然后选择最近的暂存磁带:
选择磁带机,然后选择暂存磁带:这可以确保磁带机接近暂存磁带。
输入 query mount scratch 请求,以确定距离所需的暂存池中大多数暂存介质最近的可用磁带机。
输入 mount scratch 请求,以将暂存磁带挂载到选定的磁带机。或者,指定暂存池。
对于 ACSAPI 请求,指定以下选项之一:
ALL_MEDIA_TYPE(将选择兼容的介质),或
ANY_MEDIA_TYPE(以使用暂存首选项列表)。
对于 cmd_proc 命令:
不指定介质类型(将选择兼容的介质),或
指定 media *(以使用暂存首选项列表)。