IBM Platform LSF平臺(tái)具備六大附加組件,可選附加組件可擴(kuò)展 Platform LSF,以提供完整的工作負(fù)載管理功能集。
由于IBM Platform LSF平臺(tái)具有高擴(kuò)展性、高性能,并提供追蹤和實(shí)時(shí)監(jiān)控能力,因此被HPC業(yè)界很多公司使用,和其他的負(fù)載管理軟件相比,IBM Platform LSF平臺(tái)能帶來明顯的效益增值。此外,它支持如下幾個(gè)操作系統(tǒng)和體系架構(gòu):
IBM AIX 5、6 and 7 on POWER
HP UX B.11.31 on PA-RISC
HP UX B.11.31 on IA64
Solaris 10 and 11 on Sparc
Solaris 10 and 11 on x86-64
Linux on x86-64 Kernel 2.6 and 3.0
Linux on POWER Kernel 2.6 and 3.0
Microsoft Windows 2003, 2008, XP, and 7 32-bit and 64-bit
Mac OS 10.x
Cray XT
在IBM Platform LSF平臺(tái)的背后有一個(gè)全球支持的機(jī)構(gòu),使得這個(gè)平臺(tái)方案成為可以被依賴的可靠的解決方案,尤其對(duì)于商用領(lǐng)域而言。
一個(gè)IBM Platform LSF平臺(tái)集群可以分成兩組主機(jī),分別是管理主機(jī)和計(jì)算主機(jī)。管理主機(jī)為集群提供專業(yè)化的服務(wù),計(jì)算主機(jī)運(yùn)行用戶的工作量,如下圖是IBM Platform LSF平臺(tái)在集群中的系統(tǒng)環(huán)境下的通信通道。
上圖展示了如下步驟:
1. 提交一份作業(yè)
從LSF客戶端,或者是一個(gè)運(yùn)行bsub命令的服務(wù)器上提交一份作業(yè),當(dāng)提交這份作業(yè)時(shí),如果不指定哪個(gè)隊(duì)列,這份作業(yè)就會(huì)被提交到系統(tǒng)默認(rèn)的隊(duì)列中,作業(yè)在隊(duì)列中等待安排,這些作業(yè)處于等待狀態(tài)。
2. 調(diào)度作業(yè)
后臺(tái)的主進(jìn)程mbatchd將處理隊(duì)列中的作業(yè),在一個(gè)預(yù)定的時(shí)間間隔里將這些作業(yè)按設(shè)定的計(jì)劃,傳遞給主調(diào)度進(jìn)程mbschd。
主調(diào)度進(jìn)程mbschd評(píng)估這份工作時(shí),根據(jù)作業(yè)的優(yōu)先權(quán)制定調(diào)度決策、調(diào)度機(jī)制和可利用資源。主調(diào)度進(jìn)程選擇最佳的主機(jī),在哪里作業(yè)可以運(yùn)行,并將它的決策返回給后臺(tái)主進(jìn)程mbatchd。主負(fù)載信息管理進(jìn)程(LIM)收集資源信息,主LIM與mbatchd主進(jìn)程交流這些信息,反過來mbatchd主進(jìn)程使用之前交流信息支持調(diào)度決定。
3. 分配作業(yè)
Mbatchd主進(jìn)程一收到Mbschd發(fā)過來的決定,立即分配作業(yè)到主機(jī)。
4. 運(yùn)行作業(yè)
從屬批處理進(jìn)程(sbatchd),從Mbatchd主進(jìn)程接到要求,為這份作業(yè)創(chuàng)建一個(gè)子Sbatchd和一個(gè)執(zhí)行環(huán)境,通過使用一個(gè)遠(yuǎn)程執(zhí)行服務(wù)器開始這個(gè)作業(yè)。
5. 返回輸出
當(dāng)一個(gè)作業(yè)完成時(shí),如果這個(gè)作業(yè)沒有任何問題,它處于一個(gè)完成狀態(tài)。如果有錯(cuò)誤作業(yè)無法完成,這份作業(yè)處于退出狀態(tài)。Sbatchd傳達(dá)作業(yè)信息,包括錯(cuò)誤提示和給Mbatchd的輸出信息。
6. 給客戶端發(fā)郵件
Mbatchd通過郵件給提交主機(jī)反饋?zhàn)鳂I(yè)輸出信息、作業(yè)錯(cuò)誤、提示信息、作業(yè)信息。
調(diào)度程序的特點(diǎn)
IBM Platform LSF 平臺(tái)有一套先進(jìn)的特點(diǎn):
公平競(jìng)爭(zhēng)調(diào)度
基于拓?fù)浣Y(jié)構(gòu)的調(diào)度
搶占調(diào)度
回填調(diào)度
資源預(yù)留
并行作業(yè)和串行作業(yè)控制
高級(jí)資源預(yù)留調(diào)度
饑餓作業(yè)調(diào)度
許可證調(diào)度
服務(wù)協(xié)議滿足調(diào)度
絕對(duì)優(yōu)先級(jí)調(diào)度
應(yīng)用程序斷點(diǎn)和恢復(fù)
作業(yè)array調(diào)度
GPU調(diào)度
自定義調(diào)度器插件
故障容錯(cuò)
IBM Platform LSF平臺(tái)的基礎(chǔ)結(jié)構(gòu)是為關(guān)鍵性的組件提供故障容錯(cuò)而設(shè)計(jì)的,有助于從一個(gè)故障中恢復(fù)過來,具體工作調(diào)度如下:
1. 主程序
如果一個(gè)主程序不能再用,另一個(gè)候補(bǔ)主程序接管任務(wù)。在主程序和候補(bǔ)主程序必須通過工作目錄共享來協(xié)同工作。
2. 節(jié)點(diǎn)和節(jié)點(diǎn)組
當(dāng)節(jié)點(diǎn)或者節(jié)點(diǎn)組不能工作,不可獲得時(shí),只有在其上運(yùn)行的作業(yè)受到影響(重新拍發(fā),失敗退出,會(huì)根據(jù)提交時(shí)的設(shè)置來反應(yīng))。
3.作業(yè)
作業(yè)提交時(shí)可以定義為可重新運(yùn)行模式,這樣當(dāng)作業(yè)失敗時(shí),可以重新運(yùn)行。
或者在作業(yè)提交時(shí)定義了checkpoint,這樣當(dāng)作業(yè)重新運(yùn)行時(shí)會(huì)從斷點(diǎn)處繼續(xù)運(yùn)行。
LSF為這些組件提供了故障容錯(cuò),一個(gè)LSF集群可以在部分網(wǎng)絡(luò)故障時(shí)將工作網(wǎng)絡(luò)隔離運(yùn)行。容錯(cuò)取決于系統(tǒng)日志記錄檔,這個(gè)記錄檔在系統(tǒng)中記錄了每一步操作。
安全性
不可否認(rèn),IBM Platform LSF平臺(tái)使用內(nèi)部的用戶管理機(jī)制,也為第三方安全機(jī)構(gòu)的整合提供了安全插件,例如輕量級(jí)目錄訪問協(xié)議(LDAP)、開放的安全系統(tǒng)認(rèn)證(Kerberos)、活動(dòng)目錄(Active Directory)。
對(duì)于IBM Platform LSF 平臺(tái)集群的安全性,有兩個(gè)步驟要求:首先,檢查用戶的密碼是否有效,然后檢查用戶的權(quán)限。在IBM Platform LSF平臺(tái)上,可以創(chuàng)建一個(gè)自定義的可執(zhí)行文件(eauth),可以為用戶、主機(jī)和后臺(tái)程序提供外圍的身份認(rèn)證。
在IBM Platform LSF平臺(tái)的客戶終端和服務(wù)器之間的認(rèn)證數(shù)據(jù)流中,這些機(jī)制提供了一個(gè)安全的轉(zhuǎn)移數(shù)據(jù),通過創(chuàng)建自己的自定義可執(zhí)行文件,可以設(shè)定集群的安全要求。
多集群支持
IBM Platform LSF 平臺(tái)提供了多集群支持,不同的集群在不同的位置上,可以通過單一的Platform LSF來進(jìn)行管理。這個(gè)方法使負(fù)載管理和集群管理變得容易,也使得基礎(chǔ)構(gòu)架獲得高度可擴(kuò)展性,多集群使得用戶可獲得更多的資源,提高生產(chǎn)率、資源利用率和性能。
作為強(qiáng)大的工作負(fù)載管理平臺(tái),IBM Platform LSF用于要求苛刻的分布式HPC環(huán)境,它提供智能的策略驅(qū)動(dòng)的調(diào)度功能,支持利用所有計(jì)算基礎(chǔ)架構(gòu)資源并確保最優(yōu)的應(yīng)用程序性能。