游偉倩 張予倩 盛樂標


摘要 大型高性能計算集群的管理與維護是每個高性能計算中心的重要任務。本文以南京大學新搭建的一套大規模集群為案例,詳細闡述了LICO管理軟件在集群管理與維護中起到的作用。管理軟件不僅方便了系統管理員,也為用戶更好的使用高性能計算集群起到效果。
【關鍵詞】高性能計算 系統管理軟件 集群管理
高性能計算(High PerformanceComputing, HPC)主要研究開發超級計算機,提高集群并行計算效率。近些年,高性能計算發展非常迅速,高性能計算涉及的領域越來越寬廣,由此各地的高性能計算機群也應運而生。南京大學高性能計算中心于2015年12月投資了5000萬,建設了一套聯想Flex集群(由于該套集群的刀片服務器型號為聯想Flexx240 M5,因此該套系統后面均簡寫為Flex集群),這套系統910個CPU計算節點,共計21840個CPU核;有兩套存儲設備:一套用作家目錄存儲系統(存儲容量:2PB;其讀寫帶寬>15GB/s),另一套為高速并行存儲系統(裸容量:1.2PB;其讀寫帶寬>75GB/s),Flex集群系統的CPU理論峰值達到870萬億次浮點運算/秒。目前該套系統在高校高性能計算集群中規模排第一,該套計算集群己于2017年5月正式投入使用,為南京大學校內外科研計算提供了良好的服務。隨著大規模計算集群的應運而生,很多人對于高性能計算集群的管理與運維也投入大量的研究,我們也不例外。為了使整個龐大的計算集群可以安全的運行與管理,本套集群中安裝了各種管理軟件,如LICO集群管理監控軟件和LDAP用戶管理軟件,另外還安裝了Paramon和Paratune應用運行特征收集軟件和分析軟件。下面將以該套高性能計算集群為研究對象,詳細闡述一下LICO管理軟件在整套集群系統中各自所起的作用。
1 LICO登陸界面
這里首先介紹一下,南京大學Flex集群安裝了Platform LSF作業調度系統,集群總計三個作業調度節點,分別為job01、job02、job03,其中一個節點運行Platform LSF的主調度程序,另外兩個節點運行LSF從調度進程,三個節點組合保證了調度系統的高可用。LICO安裝在job03節點,系統管理員可以從網頁直接登錄界面,LICO首頁登陸界面如圖1。
用戶名登陸類別分為兩類:系統管理員和普通操作員。管理員可以看到整個計算機集群和所有用戶的信息,而操作員只能看到自己有權限訪問的資源和自己的用戶信息。作為Flex集群系統管理員,在輸入用戶名和密碼后,即可登陸看到管理員界面如圖2。
在左側,我們可以看到主頁:首頁,顯示集群基本信息。用戶:界面顯示普通用戶管理頁,Flex集群系統管理員可以對用戶或者組,做一些簡單的基本操作。監控選項:監控Flex集群系統。集群管理:可以對Flex集群做一些管理設置。集群比較常用的是監控、報告以及設置三個窗口,后面會詳細講解。
2 查看集群基本狀態
在管理員主頁上如圖2所示,可以查看整個Flex集群的基本狀態,這里可以看到以下信息:
2.1 hpc.com
集群名字。
2.2 集群CPU
服務器集群CPU的利用率,包括已經被占用的CPU核數和整個集群總共具有的CPU核數。目前Flex集群被占用核數為14560個,集群總開機核數18 600個,CPU利用率為78%。
2.3 集群內存
整個服務器集群系統的內存的利用率,包括集群總共具有的內存大小和已經被占用的內存大小。圖2顯示Flex集群內存使用率為15.91%,說明目前集群內存資源充足。
2.4 集群存儲
表示整個集群存儲系統的利用率,包括集群總共具有的存儲空間大小和已經被占用存儲空間大小。這里僅顯示Flex集群家目錄總存儲容量為1.3 9PB,已經使用80.56TB。
2.5 作業
顯示作業的歷史信息,包括運行中的作業數,正在等待中的作業數和已經結束的作業數。管理員可以選擇顯示全部隊列的作業數,也可以指定顯示某個隊列的作業數。時間上可以選擇分別顯示:過去一小時或者一天或者七天或者三十天的作業數。作業類型上可以設置分別顯示己完成和的未完成作業數。從圖中,系統管理員可以根據自己的需求設置各種選項,查看當前的集群上運行的作業情況。對于了解集群作業運行情況有一個比較全面的了解。
2.6 節點占用情況
顯示整個計算集群中的節點占用情況:包括忙碌,占用,空閑和關機。判斷這些節點占用情況的主要依據是各個節點的平均每分鐘的進程負載量。節點占用情況可以讓系統管理員詳細了解集群的負載情況。
2.7 網絡吞吐
表示整個集群服務器網絡的吞吐量,包括寫速率和讀速率。從圖中可以看到當前集群系統讀速度和寫速度。系統管理員可以通過這個大概了解一下集群系統的網絡是否有異常。
由上述集群的基本狀態參數,系統管理員就能對整個集群做出一個初步判斷。如果發現哪方面有異常,再去找到問題所在,進而解決問題。需要指出的是,Flex集群系統共具有兩套存儲系統,但是由于LICO系統只能顯示一個存儲系統,所以SSD并行存儲系統無法在此顯示。這也是LICO管理集群目前存在的一個缺點。
3 LICO監控界面
點開圖2左側的監控選項,就會出現如圖3所示頁面,可以看到列表視圖、物理視圖、分組視圖、GPU視圖、作業列表、報警列表、以及操作列表選項。這里Flex集群比較常用的主要包括列表試圖和分組視圖以及作業列表界面。
3.1 列表視圖
從列表視圖中可以看到Flex集群所有節點的狀態,具體包括:開關機狀態、分組、ip地址以及其硬件配置。也可以在此界面上對某些節點做開關機處理。當系統管理員遠程監控集群時,這就顯得非常方便且直觀。
3.2 分組視圖
分組視圖與列表視圖的區別在于,系統管理員可以輸入組名,然后查看指定組內的機器狀態,如圖4所示,圖中僅顯示compute組內的所有節點狀態。
3.3 作業列表
系統管理員最常關心的是當前集群的作業運行情況,是否出現排隊現象。若想了解這些情況,可以點擊作業列表選項,如圖5所示。從這里系統管理員可以看到所有Flex集群上的作業,包括運行中、等待以及己完成的作業。每個作業的詳細信息也都有顯示,可以看到Flex集群的某個作業id是136424,作業名字為DSM Ol.sh,提交作業的用戶為twang,作業提交到了MPI隊列,還包括作業的提交時間及運行了多長時間。非常詳細且直觀,對于系統管理員遠程掌握當前集群中作業運行情況,有很大的幫助。
4 LICO用戶界面
點開圖2的右側藍色按鈕就進入Flex集群LICO用戶界面,用戶界面首頁和管理員首頁界面一樣,可以看到集群的cpu使用、存儲、網絡等狀態。用戶界面如圖6所示,最常用的就是作業提交選項,下面主要就提交作業作一詳細介紹,其他如作業列表、專家模式等選項不再一一敘述。
點開Flex集群作業提交界面如圖6所示。用戶可以看到四個選項,包括提交作業、作業列表、專家模式和管理。用戶最常用的就是作業提交。LICO作業提交界面有多種提交作業的方式,Flex集群用戶可以根據自己使用的應用軟件來進行選擇提交模式。如點擊MPI,就進入如圖7所示的提交作業界面,在提交作業時,用戶可以輸入自己的作業名稱,選定設置參數,可以設定工作目錄、選擇MPI程序以及相應的MPI環境配置文件等。另外可以設定作業所需要的資源,如:需要多少個節點數,需要多少核數,是否需要提交到大內存隊列等。界面式作業提交方式對于很多不習慣用命令行提交作業的用戶非常方便,也可以擴大集群使用范圍,對于許多不太熟悉高性能計算的計算用戶非常有幫助。
5 結束語
本文以南京大學大型Flex集群系統為研究對象,詳細闡明了LICO管理軟件在該套集群管理過程中所起的作用。它方便系統管理員遠程管理整個Flex集群系統,同時也給整個集群用戶提交作業帶來了方便??傊?,一套好的管理軟件不僅可以服務于系統管理員,同時也可以讓用戶更加方便地使用集群,進而使高性能計算集群系統資源充分被使用。
參考文獻
[1]遲學斌,趙毅,高性能計算技術及其應用[J].學科發展,2007,22 (04): 306-313.
[2]周興銘,高性能計算技術發展[J].自然雜志,2011,33 (05): 249-254.
[3]盛樂標,游偉倩,周慶林,南京大學高性能計算中心建設的探索與實踐[J].實驗技術與管理,2013,20 (11):144-146.
[4]關偉豪,吳汝明,郭清順等.中山大學高性能計算服務平臺的建設[J].實驗技術與管理,2011(04): 303-306.
[5]沈軍,滿家巨,聶作.高性能集群管理與優化[J].計算機與現代化,2007,138 (02): 84-88.
[6]鄧賓,高性能計算集群的建立及管理[J].自動化與儀器儀表,2014,2:149-151.
[7]孟玲玲,高性能計算集群系統建設與運營管理研究[J],軟件導刊,2017,16 (03):138-140.