OSCAR集群技術
- 期刊名字:計算機工程與設計
- 文件大?。?83kb
- 論文作者:王璟,張云泉
- 作者單位:中國科學院
- 更新時間:2020-10-30
- 下載次數(shù):次
第25卷第11期計算機工程與設計2004年11月Vol.25No.11COMPUTER ENGINEERING AND DESIGNNov. 2004文章編號: 100-7024( 2004)11-1872-04中團分類號: TP311.56文獻標識碼: AOSCAR集群技術王璟,張云泉(中國科學院軟件研究所并行計算實驗室,北京100080)摘要:集群系統(tǒng)是目前最廣泛被采用的高性能計算機系統(tǒng)解決方案。安裝一個高性能計算集群需要多個節(jié)點協(xié)同安裝和配置,這對于多達幾百臺計算機節(jié)點的集群系統(tǒng)常常是很麻煩的過程。目前最受歡迎的集群系統(tǒng)安裝軟件包"OS-CAR (Open Source Cluster Application Resource) "很好地解決了這個問題。詳細介紹了OSCAR的各個功能部件的工作方式和使用方法,并概括了OSCAR集群的安裝流程.關鍵詞:集群; OSCAR; HPC; SIS; C3; OpenPBS; MPIResearch of OSCAR cluster packageWANG Jing, ZHANG Yun quan(Lab of Parallel Computing, Institute of Software, Chinese Academy of Sciences, Beijing 100080, China)Abstract: Cluster system is the most popular solution of HPC (lhigh performance computing). But in order to build a cluster, anengineer must install and configure many software packages on dfferent computers, which is very fussy. OSCAR (open source clusterapplication resource), which is one of the most favorite packages for insalling and configuring clusters, solves this problem completely.How the tools provided by OSCAR work and how to install a cluster by OSCAR are described.Key words: cluster; OSCAR; HPC; SIS; C3; openPBS; MPI1引言2 OSCAR軟件包介紹通常使用集群系統(tǒng)完成以下3種功能:①高性能科學OSCAR集成了很多的群集與科學計算相關的軟件,比.集群:它是并行計算的基礎,一般通過高速網絡來連接一組如SIS.C3 .OpenPBS、MPI等。單處理器或多處理器計算機,并且在TCP/IP層上進行通信2.1使用sIs安裝和維護集群系統(tǒng)以運行并行應用程序;②負載均衡集群:其目的是使負載可SIS(System Installer Suite)是用來通過網絡安裝Linux系以在計算機集群中盡可能平均地分攤處理:③高可用性集統(tǒng)的工具。管理員使用sIS來引導節(jié)點的安裝,其中包括內群:高可用性集群的出現(xiàn)是為了使集群的整體服務盡可能核引導、磁盤分區(qū)、文件系統(tǒng)格式化和基礎操作系統(tǒng)的安裝。可用。管理員還可以使用安裝映像來維護集群節(jié)點。更改以前部集群系統(tǒng)的安裝主要是指在各個結點上安裝操作系署的映像就像更改本地的文件系統(tǒng)-樣直接。管理員可以統(tǒng)、文件系統(tǒng)、并行程序運行庫、作業(yè)管理軟件和系統(tǒng)管理更新映像,然后使用rsync來更新集群節(jié)點上的本地文件系軟件等。它是集群系統(tǒng)投入應用的前提,所以集群系統(tǒng)的統(tǒng)。這種方法可以用來安裝和管理整個集群。sIs 具有以安裝是一件非常重要的任務。一般集群系統(tǒng)由幾十臺,甚下特性:①我們可以在一個Imageserver中存儲很多不同的至上百上千臺計算機組成,顯然手工安裝系統(tǒng)幾乎是不可系統(tǒng)映像;②我們可以直接用一些包在Image server 上生成能的。開放源碼的集群應用資源OSCAR(Open Source ofClus-映像;③在安裝過程中我們通過rsync傳播映像;④由于使用terApplicationResource)項目的成立,就是用來研究集群管理了rsync,傳播映像和維護映像的工作變得更加容易.的問題,并提供了一個解決方案。這個項目所產生的結果2.2使用C3工具方便地管理節(jié)點就是OSCAR軟件包。為了方便地管理集群系統(tǒng),-些管理者只是簡單地通目前,0SCAR2.3已經發(fā)布,它提供了對最新的RedHat過 NFS把- -個管理節(jié) 點的文件系統(tǒng)mount到其余節(jié)點中。8.0、RedHat9.0等的全面支持。這種做中國煤化工(Oak Ridge Nation LIB)基金項目:國家自然科學基金項目(<60303020); 國家973計劃基金項目(G19990CN M H Ga項目(CXK25628)。收稿日期: 2003-12-08。作者簡介:王環(huán)(1979-),男,黑龍江哈爾濱人,碩士研究生,研究方向為并行計算與并行軟件技術:張云泉, 男,山東聊城人,副研究員,研究方向為高性能計算、大規(guī)模數(shù)值并行軟件、并行計算模型和并行數(shù)據(jù)挖掘。- 173正在開發(fā)幫助用戶對PC Cluster進行系統(tǒng)管理的接口,其中中,使用了OpenPBS 2.3.16和Maui 3.2.5p2。在今后的OSCARC3(Cluster Command Control)這個強大的工具為集群的系統(tǒng)開發(fā)中,還會不斷升級OpenPBS和Maui的版本。管理提供了一個命令行界面(CLD。它是ORNL開發(fā)用來PBS包括3個主要部分。①一個PBS server: 它在主節(jié)管理和使用自己的HIGHTORCCluster的一套工具。 它主要點上運行,用來控制作業(yè)的提交和運行;②Mauischeduler:運包括全Cluster范圍內的命令執(zhí)行、文件發(fā)布和收集、遠程關用先進的算法在Cluster中安排任務:③一個“mom”守護進機和系統(tǒng)映像的更新等工具。這些工具方便了在各個節(jié)點程:它運行在每個節(jié)點,負責在節(jié)點上開始或者結束作業(yè)。執(zhí)行命令,使用戶可以輸入一個同時在所有的集群節(jié)點上在PBS安裝目錄/bin中可以找到所有PBS可以執(zhí)行的運行的命令(如cexec,cpushimage等)。例如:命令,這里簡要介紹幾個最重要的命令。①qsub:向PBS提cexec clusterl:1-5 cluster2:2-6 ls -l:交作業(yè);②qdel:刪除PBS作業(yè);③qtat[-n]:顯示當前時間的(在clusterl的1-5節(jié)點和cluster2的2-6節(jié)點運行Is-l命令,節(jié)點的相關作業(yè)情況;④pbsnodes:顯示節(jié)點情況。同時打印結果到本地計算機。)當作業(yè)被PBS提交以后,就由Maui進行日程管理.Maui其中cluster 是通過/etc/c3.conf文件指定的。在這個文首先確定哪個作業(yè)是可以執(zhí)行的,進而除去那些不可執(zhí)行件中,用戶可以通過固定的格式指定多個cluster,同時指定的(掛起的,狀態(tài)不符的,或者預處理不夠的);接著對作業(yè)不同的節(jié)點相對于某個cluster 的排列位置以幫助C3命令劃分次序,它定義各個作業(yè)的相對優(yōu)先權:作業(yè)的次序依據(jù)行確定命令到底在哪個節(jié)點執(zhí)行。C3邇過rshsh在遠程節(jié)作業(yè)的-些屬性進行計算(比如作業(yè)擁有者、作業(yè)大小、提點執(zhí)行命令,同時通過rsync同步各個節(jié)點的磁盤內容。由交到隊列的時間長度等);系統(tǒng)運用某種已經配置好的強制于使用了rsync機制,C3對系統(tǒng)的同步消耗有所降低;通過性措施約定可以運行多少作業(yè)、多少節(jié)點和進程,那些違反rsh/ssh的切換使用,C3可以在安全和快速中進行選擇。下這些規(guī)則的作業(yè)將不會被考慮進行作業(yè)安排。對于每個作面用圖說明C3工作原理,以cpushimage為例,如圖1所示.①業(yè),系統(tǒng)會尋找一些匹配的資源(CPU資源等)并按照某種server 通過rhsh傳送upda-D_算法找到最合適的資源進而向各個資源分發(fā)作業(yè)。teimage命令;②node1運行2.4使用pfiler確保安全性本地script向server 提出傳pfiter為集群提供安全屏障。當pfilter開啟的時候,系送image請求;③server通過統(tǒng)內部各個節(jié)點間允許任何的網絡連接,而和系統(tǒng)外部只rsync向node1傳送image文允許ssh和http訪問,這大大提高了系統(tǒng)的安全性。件;④nodel通過rsh/ssh 向外部網絡和集群之間的通信只被限制在從內到外的通server返回輸出結果。圖1 cpushimage信(Cluster toOutside)中,從外到內的通信被pfilter阻塞掉了。2.3使用PBS來箐理作業(yè)如果我們想開啟從外到內的通信,就必須修改pfilter的配置當很多的用戶同時使用一個Cluster或者- -個用戶想向文件。Cluster提交多個作業(yè)的時候,需要-一個作業(yè)管理系統(tǒng),它能2.5使用NTP來同步系統(tǒng)時鐘夠合理地給各個作業(yè)分配資源,從而確保充分利用集群系NTP(Network Time Protocol)是用來和外部資源同步計統(tǒng)計算能力并盡可能快地得到運算結果。一般來說, - 個算時鐘的工具。Ntpd守護進程可以在client和server節(jié)點上作業(yè)管理系統(tǒng)需要以下兩個主要部分。①資源管理器:為分別運行,其作用分別為在遠程節(jié)點上獲得當前時間和向了確保分配給作業(yè)合適的資源,集群資源管理器需要維護遠程節(jié)點提供當前時間。一個數(shù)據(jù)庫。這個數(shù)據(jù)庫記錄了集群系統(tǒng)中各種資源的屬OSCAR利用NTP去實現(xiàn)兩種時鐘同步:①Server節(jié)點性和狀態(tài)、所有用戶提交的請求和正在運行的作業(yè):②作業(yè)和外部資源的時鐘同步;②client節(jié)點和server節(jié)點的時鐘調度策略管理器:策略管理器根據(jù)資源管理器得到各個結同步。對于OSCARserver來說,它會努力地去與外部時鐘點上的資源狀況和系統(tǒng)的信息,從而生成一- 個優(yōu)先級列表。同步。如果無法與外部實現(xiàn)同步(甚至有時根本就沒連外此列表告訴資源管理器何時在哪些結點上運行哪個作業(yè)。部網絡),OSCAR也保證server和client是同步的。PBS(Portable Batch System)就是一-個資源管理器,是一2.6使 用MPICHLAM-MPI編寫計算程序種可伸縮性的任務隊列和工作管理系統(tǒng)。它是在網絡的、MPI(Message Passing Iterface)是消息傳遞并行程序設多平臺的UNIX系統(tǒng)環(huán)境下工作的。OpenPBS (tp://ww.計的標準之一,是由全球工業(yè)、政府和科研部門聯(lián)合推出的OpenPBS.org)是PBS的Open Source 的實現(xiàn)。OpenPBS 在一大類并行機的標準消息傳遞并行程序設計平臺。它包含OSCAR中扮演著資源管理器的角色。OpenPBS自身包括了3層結構:最上層是MPI的API,基本是點到點通信和在點一個叫做FIFO的作業(yè)調度策略管理器,但是OSCAR在安到點通信基礎上構造的集群通信(COllctive Communica-裝OpenPBS的時候缺省地關掉了FIFO,因為OSCAR使用tion)中國煤化工ce Interface) ,其中device了一個更加魯棒的開放源代碼作業(yè)調度策略管理器:Maui??梢詜YHCN M H G幸,ADI就是對各種不同MauiScheduler是-一個用于Linux和BSD集群計算機的高級的底層通信庫的不同接口的統(tǒng)一杯準;底層是具體的底層的HPC并行批處理調度器,它提供了一個完整的科學調度通信庫。方案,支持并行運行客戶的MPI工作。在最新的OSCAR2.3MPICH和LAM-MPI都是MPI的具體實現(xiàn),它們都遵從- 1873一MPI標準,我們可以選擇使用任何一個接口進行程序設計。管理工具簡化了集群的管理,管理員可以像往常- -樣創(chuàng)建這些實現(xiàn)都提供了用來編譯MPI程序的工具(mpicc, mpiCC,賬戶,但在命令完成之后,這個賬戶將存在于所有的OPIUM.mpi77等)和MPI程序的運行工具mpinin。管理的集群節(jié)點中。它還可以幫用戶配置ssh使得用戶無在OSCAR中,MPICH和LAM-MPI被缺省地安裝到系需輸入密碼就可以登陸系統(tǒng)節(jié)點。在更改用戶設置的時候統(tǒng)中,用戶可以根據(jù)個人的習慣去改變系統(tǒng)環(huán)境變量(參見用戶需要在cluster的頭節(jié)點更改,這樣才能夠確保用戶信switcher部分)來選擇使用哪種MPI實現(xiàn)來完成高性能程序息傳播到各個節(jié)點。開發(fā)。3OSCAR集群系統(tǒng)的安裝2.7使用環(huán)境切換器切換環(huán)境OSCAR向用戶提供了環(huán)境切換器(Switcher)包。利用一般的集群系統(tǒng)的安裝需要以下兩步:①網絡啟動:設它,用戶可更加安全地管理環(huán)境,如PATH、MANPATH等。置需要安裝的結點的網絡啟動,然后管理結點遠程重啟需用戶不用進行系統(tǒng)環(huán)境變量的配置就可輕松地在MPICH和要安裝的結點。網絡啟動的結點啟動后從啟動服務器獲得LAM-MPI中切換。使用switcher可以有以下幾個好處:一個小的操作系統(tǒng)內核。網絡啟動一般采用Intel 的PXE(1)用戶不必手工更改dot文件(如.bashrc文件)就可以(Pre-Execution Environment)標準;②網絡安裝:這個操作系統(tǒng)更改系統(tǒng)的環(huán)境變量,取而代之的是-一個簡潔安全的命令內核負貴從安裝服務器(通常是一個文件服務器)上取得安行界面(CLI)。裝軟件包或系統(tǒng)映像并在本地實施系統(tǒng)安裝。(2)使用命令行界面使得遠程調用shell如rsh、ssh等可作為OSCAR系統(tǒng),它基本遵循這個安裝思路,總結如以調用此命令,起到了在遠程更改dot文件內容的作用。F:(3)這樣做是安全的,因為Switcher定義了安全的用戶step 0:(Download aditional OSCAR Packages),這一步可命令,減少因為用戶的錯誤操作而使環(huán)境變得--團糟的可選,使用OSCAR Package Downloader(OPD)從網絡上下載新能性。的和附加的OSCAR安裝包并把它們放入安裝過程中不必(4)用戶可以選擇在當前shell下改變環(huán)境還是改變未.單獨配置。來shell的環(huán)境。Step 1: (Select Packages to insall)這一步 可選,它用來選OSCARSwitcher包括兩個核心軟件包:modules和env-擇我們要安裝的工具包,其中主要包括C3、Switcher等工具,switcher. modules用來改變當前的環(huán)境,但是改變并不永久可 以在這里選擇在安裝過程中是否安裝它們。,保存下來:env-switcher用來改變未來shell的環(huán)境,并且會永Step 2: (Configure OSCAR Packages)可選,在這里可以久發(fā)生作用。配置缺省的MPI、缺省的NTP設置和缺省的kermel.modules通過modulefile來動態(tài)修正用戶環(huán)境。module-Step 3: (Install OSCAR Server Packages)在server節(jié)點上file是一群TCL script, 它們負貴保存用來配置shell的一些調用保存在特定目錄中的rpm文件來安裝一些必要的工具信息。一旦modules包被初始化,用戶就可以通過module命包,這其中就包括在step1中選擇的軟件包。令去解釋modulefle的內容從而達到修改環(huán)境的目的。典Step 4: (Build OSCAR Client Image):在這-步中我們需型的modulefile 指導用戶去改變系統(tǒng)的環(huán)境變量(比如.要先配置系統(tǒng)文件使得root用戶可以通過SSH登陸系統(tǒng)任PATH、MANPATH等).每個用戶可以擁有自已的modulefile。意節(jié)點,同時還要保證系統(tǒng)中的防火墻盡量限制為nofire-例如用戶可以使用下面的兩個命令去增加環(huán)境和刪除環(huán)wall。這一步中,OSCAR創(chuàng)建client Image,為以后的集群安境:①module load lam-6.5.6:裝載lam-6.5.6的modulefile,使得裝做好準備。在這里用戶可以指定特別的image和特別的它在系統(tǒng)環(huán)境內可用;②moduleunloadpvm:卸載pvm的分區(qū)格式使得OSCAR集群的計算節(jié)點滿足這些條件。modulefile,使得它在系統(tǒng)環(huán)境內不可用。Step 5: (Define OSCAR Clients)在這里用戶定義目前的.Switcher 同樣是控制modulefile改變環(huán)境,只是它的改.OSCAR集群中應當有多少節(jié)點,各個節(jié)點的IP地址、機器變是全局性的,會在今后的shell中產生作用。下面是switcher名等信息也要在這里給出,以后系統(tǒng)的安裝將完全遵照這的使用例子: .里的規(guī)定進行。Switcher
-
C4烯烴制丙烯催化劑 2020-10-30
-
煤基聚乙醇酸技術進展 2020-10-30
-
生物質能的應用工程 2020-10-30
-
我國甲醇工業(yè)現(xiàn)狀 2020-10-30
-
JB/T 11699-2013 高處作業(yè)吊籃安裝、拆卸、使用技術規(guī)程 2020-10-30
-
石油化工設備腐蝕與防護參考書十本免費下載,絕版珍藏 2020-10-30
-
四噴嘴水煤漿氣化爐工業(yè)應用情況簡介 2020-10-30
-
Lurgi和ICI低壓甲醇合成工藝比較 2020-10-30
-
甲醇制芳烴研究進展 2020-10-30
-
精甲醇及MTO級甲醇精餾工藝技術進展 2020-10-30




