LSF License Scheduler 提供了两个版本: Basic Edition 和 Standard Edition。
LSF License Scheduler Basic Edition 随附于 LSF Standard Edition 和 Advanced Edition ,并非旨在应用有关如何在集群或项目之间共享许可证的策略。 相反, LSF License Scheduler Basic Edition 旨在替换外部装入信息管理器 (elim) ,以收集由 FlexNet 或 Reprise License Manager 管理的许可证的外部装入指标。 要替换此 elim, LSF License Scheduler Basic Edition 会限制单个集群的作业的许可证使用,以防止许可证过度使用,并通过将许可证检出与这些作业相匹配来跟踪单个作业的许可证使用情况。
LSF License Scheduler Standard Edition 不仅为单个集群提供集群方式功能,还提供完整的 LSF License Scheduler 功能,包括支持所有方式 (集群方式,项目方式和快速分派项目方式) (集群方式和项目方式),多个集群,功能部件和功能部件组以及每个许可证功能部件的多个服务域。 LSF License Scheduler Standard Edition 还支持 taskman 作业以及 LSF Advanced Edition (LSF Advanced Edition) 中的 LSF/XL 功能部件。
体系结构
LSF License Scheduler 管理许可证令牌,而不是直接控制许可证。 通过使用 LSF License Scheduler,作业将在启动应用程序之前接收许可证令牌。 IBM® Spectrum LSF (LSF) 和 IBM Spectrum LSF Advanced Edition (LSF Advanced Edition) 提供的令牌数对应于许可证服务器提供的许可证数,因此如果令牌不可用,那么作业不会启动。 这样,运行作业所请求的许可证数不会超过可用许可证数。
当作业启动时,应用程序不知道 LSF License Scheduler。 应用程序以常规方式从许可证服务器检出许可证。
图 1. 守护程序交互
调度策略的工作方式
通过 LSF License Scheduler, LSF 收集有关暂挂作业的许可需求的信息,以高效分发可用许可证。 其他 LSF 调度策略独立于 LSF License Scheduler 策略。
启动作业时,将首先执行基本 LSF 调度。 LSF License Scheduler 不会影响作业调度优先级。 根据在每个集群中配置的优先级划分策略,将考虑分派作业。
例如,在应用 LSF License Scheduler 公平共享策略 (对于此作业所属的许可证项目) 之前,作业必须具有要启动的候选 LSF 主机。
其他 LSF 公平共享策略基于 CPU 时间,运行时间和使用情况。 如果配置了 LSF 公平共享调度,那么 LSF 将确定具有最高优先级的用户或队列,然后考虑其他资源。 通过这种方式,其他 LSF 公平共享策略的优先级高于 LSF License Scheduler。
当 mbatchd 处于脱机状态时
集群运行时, mbatchd 会维护与 bld的 TCP 连接。 当集群断开连接时 (例如,当集群关闭或重新启动时) , bld 将除去有关集群中作业的所有信息。 LSF License Scheduler 将已断开连接集群中的作业检出的许可证视为非LSF 使用许可证。
当 mbatchd 重新联机时, bld 将立即接收有关当前分发到集群的令牌数的更新信息。
当 bld 处于脱机状态时
如果 mbatchd 失去与 bld的连接,那么 mbatchd 无法获取 bld的令牌分发决策以更新其自己的令牌分发决策。
但是,由于 mbatchd 每分钟在 $LSF_TOP/work/data/feature_name.service_domain_name.dat 文件中记录令牌状态,因此如果连接丢失,那么 mbatchd 将使用上次记录的信息来调度作业
LanServer1 上的 f3 具有三个令牌和两个项目。 项目 p1 和 p2 共享许可证 50:50。
在 14:27:55 , bld 向 p1分派了一个令牌,该令牌的使用为零,一个免费,零保留。 同时, bld 将两个令牌分派到 p2,这两个令牌在使用中为零,两个可用且保留为零。
mbatchd 将继续调度基于在 14:27:55 记录的令牌分发的作业,直到重新建立与 bld 的连接为止。