一、什么是LSF
LSF(Load Sharing Facility),负载均衡设施,是一款分布式系统资源管理工具,LSF通过需求收集、分析负载、实时调度,使用户充分共享服务器阵列的CPU、内存、磁盘、license等资源,进而提高资源利用率,加速项目进度。LSF的运用可以有效避免大量作业仅占用少数服务器资源的情况,避免线程拥堵,减少资源浪费。
一组安装了LSF软件的计算机组成了一个主机群组cluster。如下左图(1)所示的Compute Hosts即为Cluster,它作为一个整体,通过调度系统(主机节点)统一分配资源,统一监控,做到负载均衡。
在LSF系统中通过bsub提交的任务单元,任务提交后可以通过bjobs查看其状态。如上右图(2)展示了一个job的完整生命周期:
(1) 提交作业(Submit a job):在客户机上通过bsub命令提交job到queue上,如果没有通过-q选项指定queue,那么就提交到默认的queue上,然后在Queue中处于PEND状态,等待分配机器资源。LSF会自动分配给每个任务一个job ID和name,也可以通过-J选项指定job name。
(2) 计划作业(Schedule job):Master Host每隔一段时间来收集信息,根据任务优先级,调度策略和现有机器资源决定任务的先后执行顺序。
(3) 调度作业(Dispatch job):一旦Master Host发现有空余的机器资源,就会把排队中的任务按顺序分配给Compute Host执行。
(4) 执行作业(Run job):Compute Host开始执行任务,它会接受Master Host发送来的请求,然后把Submission Host中的执行环境复制到Compute Host,最后才开始正式执行任务,Job的状态会变成RUN。所需复