王秀梅 張運動
摘要:隨著超級計算中心系統(tǒng)計算性能不斷提高,對校級超算中心的運行管理和服務能力提出了考驗,文章以某大學超級計算中心為例,從該中心提供服務的對象和內容實際出發(fā),探討了校級超算中心服務門戶的設計與實現(xiàn)。
關鍵詞:超算中心;門戶系統(tǒng);計算系統(tǒng)
中圖分類號:TP311.52 ? ? ?文獻標識碼:A
文章編號:1009-3044(2020)28-0096-03
1 背景
中國科學技術大學超算中心目前有瀚海20超級計算系統(tǒng)和曙光TC4600超級計算系統(tǒng),計算能力高達3.168千萬億次/秒,計算能力位居國內高校前列。中心不僅面向校內外有高性能計算需求的科研院系師生和用戶提供高性能計算服務,此外還向需求用戶提供高發(fā)熱密度的計算服務器及配套設備托管服務、計算軟件合作研發(fā)服務、用戶培訓服務等等。為提高本中心的管理服務水平,針對這種向特定科研群體提供服務的特性,需要開發(fā)一套平臺進行管理運維,從而設計了具有用戶管理、計費管理、系統(tǒng)運行分析及性能監(jiān)控、成果統(tǒng)計等功能的超算中心創(chuàng)新型服務門戶系統(tǒng)。
2 總體框架設計
首先,本服務門戶系統(tǒng)根據(jù)用戶使用方式設計一套包括資源申請和審批功能的工作流程。另外該系統(tǒng)是在原有LSF作業(yè)調度系統(tǒng)的基礎上開發(fā)的,故可通過操作系統(tǒng)接口以及作業(yè)調度系統(tǒng)接口獲取系統(tǒng)信息和作業(yè)調度系統(tǒng)的作業(yè)信息,通過作業(yè)調度系統(tǒng)的接口實現(xiàn)提交和管理作業(yè),以及對作業(yè)調度系統(tǒng)的配置進行修改。
設計該門戶系統(tǒng)應具備以下幾層:
1) 被管理對象層:主要包括系統(tǒng)管理的軟硬件設備;
2) 交換層:包括門戶系統(tǒng)與操作系統(tǒng)與作業(yè)調度系統(tǒng)的接口;
3) 數(shù)據(jù)存儲層:使用Mysql作為系統(tǒng)的核心數(shù)據(jù)庫;
4) 業(yè)務邏輯層:所有的業(yè)務邏輯,如:工作流程、作業(yè)管理、系統(tǒng)管理、用戶管理等功能都在該層實現(xiàn);
5) 系統(tǒng)展示層:通過Web實現(xiàn)用戶交互,包括標準展示和自定義展示。
3 門戶系統(tǒng)主要功能模塊設計
3.1 在線注冊和用戶登錄
此功能提供包含校內外用戶可訪問的在線注冊功能,對校內用戶支持是否為在校師生等身份認證,支持本校的現(xiàn)有統(tǒng)一身份認證系統(tǒng)。當用戶申請開設超算賬戶時先在線注冊門戶賬戶,收到用戶申請后,發(fā)郵件通知超算中心開戶,超算中心批準后,用戶再申請超算賬戶。另外,還設有負責人賬戶及普通賬戶,分級管理。
3.2 信息總覽
該功能主要提供科大超算中心在用的瀚海20超級計算系統(tǒng)和曙光TC4600百萬億次超級計算系統(tǒng)的總體信息,包括集群資源、作業(yè)排隊、機時等幾個維度的信息。
系統(tǒng)賬戶管理包含用戶賬戶管理、角色管理、待審核用戶列表等。
采用分級賬戶管理制度,提供超算中心管理員、課題組管理員、個人用戶三級賬戶,不同賬戶具備不同的權限,獲取不同的信息;根據(jù)校超算中心的具體使用情況提供省內、省外、中科院等不同用戶的賬戶管理:
1) 添加賬戶:超算中心管理員可添加課題組或個人用戶,課題組在得到授權后可添加組內個人系統(tǒng)用戶和VPN用戶,添加后需超算中心管理員批準后才生效;
2) 修改賬戶:超算中心管理員可對各級賬戶進行修改,課題組賬戶可修改課題組成員賬戶聯(lián)系等信息,系統(tǒng)賬戶等信息需要經超算管理員批準后才生效;
3) 刪除賬戶:超算中心管理員可刪除任意賬戶,刪除后需保留以前信息;
4) 開戶需要設定開始結束時間,直接記錄在超算系統(tǒng)中;
5) 允許用戶負責人在自己賬戶下提出申請(需要自動核實賬戶是否可用,比如已經存在等),申請?zhí)岢龊?,通過郵件等通知超算中心管理員確認開戶。
3.3 計費管理
根據(jù)校級超算中心制定的計費策略,實現(xiàn)不同集群、不同策略的分別計費;根據(jù)不同的計費策略,提供機時充值,機時修正功能。
1) 提供設備托管功能,支持托管設備費用記錄;
2) 提供隊列及費率信息,包含獨占隊列、非獨占隊列及設備托管信息,管理員可在頁面上動態(tài)調整不同隊列的計費策略,并記錄開始結束日期;
3) 計費策略中需包含優(yōu)惠政策等,并記錄開始結束日期等,統(tǒng)計時需對應;
4) 提供計費策略的修改功能,超算中心可自行修改;
5) 機時充值:超算中心管理員可在本頁面直接為對應賬戶充值;
6) 機時修正:對于計算有誤或者因其他不可抗力造成的機時誤差,可以使用機時修正功能,退還用戶使用機時。
3.4 成果統(tǒng)計
提供用戶科研成果錄入(支持用戶和超算中心管理員錄入,各子賬戶的計入負責人賬戶)以及機時獎勵系統(tǒng),返還機時數(shù)據(jù)并入計費系統(tǒng);以圖表方式展示科研成果;對校內用戶支持從校論文采集系統(tǒng)抽取數(shù)據(jù)由用戶進行確認。
3.5 運行分析
提供多套集群的數(shù)據(jù)分析與統(tǒng)計功能,提供每套集群的主要使用數(shù)據(jù),包括資源情況、排隊情況,用戶使用及作業(yè)使用情況;支持按照用戶名、用戶組、時間、隊列、單作業(yè)并行核數(shù)、運行機時范圍等組合查詢。
3.6 性能監(jiān)控
通過大規(guī)模機群的并行性能監(jiān)控和分析,可實現(xiàn)用戶對應用運行特征的準確了解,以及對性能異常提供報警,提高運行性能,實現(xiàn)綠色計算和節(jié)能減排。
1) 在門戶系統(tǒng)中加入云版paramon軟件,用戶可根據(jù)自己的權限看到對應作業(yè)運行狀態(tài),賬戶管理員可以看到該賬戶下所有用戶使用的作業(yè)在節(jié)點上的運行情況,包含節(jié)點本省狀態(tài),作業(yè)的運行性能等;而每個用戶只能看到自己當前提交作業(yè)節(jié)點的運行狀態(tài),及應用性能狀態(tài)。
2) 保存運行特征文件
用戶可單獨保存某個作業(yè)的運行特征文件,并提交到超算中心,做初步的應用性能分析。如果用戶很關心所運行應用的性能,可將特征文件保存后發(fā)給超算中心進行進一步分析。
4 服務門戶系統(tǒng)技術實現(xiàn)
4.1 系統(tǒng)技術路線
該服務門戶系統(tǒng)采用B/S架構模式,后臺基于成熟的SSH框架開發(fā),采用Tomcat作為Web容器,Mysql作為系統(tǒng)核心數(shù)據(jù)庫。系統(tǒng)前臺采用BootStrap作為基礎模板和素材庫,通過重寫JS和JQuery實現(xiàn)動態(tài)效果,系統(tǒng)中的報表組件采用HighChart報表庫。
4.2 應用特征數(shù)據(jù)采集與收集
超算中心門戶系統(tǒng)中,用戶比較關注自身的具體使用情況,特征數(shù)據(jù)收集分為前臺系統(tǒng)和后臺系統(tǒng),后臺系統(tǒng)又分為服務器端程序和客戶端程序。軟件后臺系統(tǒng)用于采集服務器各結點的特征指標數(shù)據(jù),前臺系統(tǒng)用于將收集到的特征指標數(shù)據(jù)進行實時顯示,對于某一特定用戶,只能通過頁面看到自己的應用當前在集群上的使用情況,并記錄離線的性能數(shù)據(jù)文件。
客戶端程序采集每一個結點的特征數(shù)據(jù),然后將匯總的數(shù)據(jù)再統(tǒng)一傳遞給服務器端程序。數(shù)據(jù)采集是客戶端程序的核心部分,系統(tǒng)級數(shù)據(jù)主要通過操作系統(tǒng)或第三方API獲得。如:CPU每個核(包括打開SMT超線程)的USED使用率(即CPU每個核的利用率)和SYS使用率(即CPU每個核系統(tǒng)開銷的利用率)、內存使用率、SWAP使用率、本地磁盤讀寫速率以及以太網網絡收發(fā)速率的采集是通過調用操作系統(tǒng)提供的接口來獲得;GPU利用率的實時采集是通過硬件廠商提供的API接口(NVML)規(guī)范來實現(xiàn),InfiniBand網絡的實時接收和發(fā)送量采集也是通過廠商提供的API實現(xiàn)。網絡文件系統(tǒng)讀寫速率通過調用服務端系統(tǒng)參數(shù)來獲得。
服務器端程序的主要工作是匯總客戶端數(shù)據(jù),并提交給前臺系統(tǒng)顯示。由于涉及不同平臺數(shù)據(jù)傳輸,因此,整個數(shù)據(jù)傳輸過程,通過XML封裝數(shù)據(jù)。XML是Internet環(huán)境中跨平臺的,依賴于內容的技術,是當前處理結構化文檔信息的有力工具。XML在任何應用程序中讀寫數(shù)據(jù)都比較簡單,程序可以很容易地與Windows、Linux以及其他平臺下產生的信息結合,然后可以很容易加載XML數(shù)據(jù)到程序中并進行分析,并以XML格式輸出結果。
前臺系統(tǒng)的主要工作是匯總后臺數(shù)據(jù),實時呈現(xiàn)被選中結點的特征數(shù)據(jù),并離線記錄到文件中。同時,在前臺系統(tǒng)中預設一系列可報警的事件列表,并對外提供開放的接口,支持自定義事件;當前臺系統(tǒng)中對應的預設事件被觸發(fā),系統(tǒng)會按照預設的操作方式進行操作,即進行自動應用軟件性能優(yōu)化。前臺系統(tǒng)要求是獨立的系統(tǒng),即可以單獨部署在一個結點上,也可以和后臺系統(tǒng)部署在同一結點上。每個節(jié)點在前臺系統(tǒng)里有與之對應的單體窗口,在單體窗口來顯示該節(jié)點資源使用狀態(tài)。
5 結束語
在高性能計算環(huán)境運行過程中,需要加強管理,對作業(yè)進行合理調度,提高系統(tǒng)利用率[1]。通過建立超算服務門戶系統(tǒng),可以直觀、全面、充分展示超算中心的資源、作業(yè)、應用和成果等各方面的信息,方便全面管理運行數(shù)據(jù)、作業(yè)數(shù)據(jù)、賬單數(shù)據(jù)、成果統(tǒng)計等,并從不同的維度分析展現(xiàn)數(shù)據(jù)價值,從而進行數(shù)據(jù)積累與分析挖掘,為后續(xù)隊列策略提供依據(jù),同時為超算中心的管理和運維工作提升了效率。
參考文獻:
[1] 趙毅,朱鵬,遲學斌,等.淺析高性能計算應用的需求與發(fā)展[J].計算機研究與發(fā)展,2007,44(10):1640-1646.
【通聯(lián)編輯:謝媛媛】