OSCAR集群技术 OSCAR集群技术

OSCAR集群技术

  • 期刊名字:计算机工程与设计
  • 文件大小:583kb
  • 论文作者:王璟,张云泉
  • 作者单位:中国科学院
  • 更新时间:2020-10-30
  • 下载次数:
论文简介

第25卷第11期计算机工程与设计2004年11月Vol.25No.11COMPUTER ENGINEERING AND DESIGNNov. 2004文章编号: 100-7024( 2004)11-1872-04中團分类号: TP311.56文献标识码: AOSCAR集群技术王璟,张云泉(中国科学院软件研究所并行计算实验室,北京100080)摘要:集群系统是目前最广泛被采用的高性能计算机系统解决方案。安装一个高性能计算集群需要多个节点协同安装和配置,这对于多达几百台计算机节点的集群系统常常是很麻烦的过程。目前最受欢迎的集群系统安装软件包"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软件包介绍通常使用集群系统完成以下3种功能:①高性能科学OSCAR集成了很多的群集与科学计算相关的软件,比.集群:它是并行计算的基础,一般通过高速网络来连接一组如SIS.C3 .OpenPBS、MPI等。单处理器或多处理器计算机,并且在TCP/IP层上进行通信2.1使用sIs安装和维护集群系统以运行并行应用程序;②负载均衡集群:其目的是使负载可SIS(System Installer Suite)是用来通过网络安装Linux系以在计算机集群中尽可能平均地分摊处理:③高可用性集统的工具。管理员使用sIS来引导节点的安装,其中包括内群:高可用性集群的出现是为了使集群的整体服务尽可能核引导、磁盘分区、文件系统格式化和基础操作系统的安装。可用。管理员还可以使用安装映像来维护集群节点。更改以前部集群系统的安装主要是指在各个结点上安装操作系署的映像就像更改本地的文件系统-样直接。管理员可以统、文件系统、并行程序运行库、作业管理软件和系统管理更新映像,然后使用rsync来更新集群节点上的本地文件系软件等。它是集群系统投入应用的前提,所以集群系统的统。这种方法可以用来安装和管理整个集群。sIs 具有以安装是一件非常重要的任务。一般集群系统由几十台,甚下特性:①我们可以在一个Imageserver中存储很多不同的至上百上千台计算机组成,显然手工安装系统几乎是不可系统映像;②我们可以直接用一些包在Image server 上生成能的。开放源码的集群应用资源OSCAR(Open Source ofClus-映像;③在安装过程中我们通过rsync传播映像;④由于使用terApplicationResource)项目的成立,就是用来研究集群管理了rsync,传播映像和维护映像的工作变得更加容易.的问题,并提供了一个解决方案。这个项目所产生的结果2.2使用C3工具方便地管理节点就是OSCAR软件包。为了方便地管理集群系统,-些管理者只是简单地通目前,0SCAR2.3已经发布,它提供了对最新的RedHat过 NFS把- -个管理节 点的文件系统mount到其余节点中。8.0、RedHat9.0等的全面支持。这种做中国煤化工(Oak Ridge Nation LIB)基金项目:国家自然科学基金项目(<60303020); 国家973计划基金项目(G19990CN M H Ga项目(CXK25628)。收稿日期: 2003-12-08。作者简介:王環(1979-),男,黑龙江哈尔滨人,硕士研究生,研究方向为并行计算与并行软件技术:张云泉, 男,山东聊城人,副研究员,研究方向为高性能计算、大规模数值并行软件、并行计算模型和并行数据挖掘。- 173正在开发帮助用户对PC Cluster进行系统管理的接口,其中中,使用了OpenPBS 2.3.16和Maui 3.2.5p2。在今后的OSCARC3(Cluster Command Control)这个强大的工具为集群的系统开发中,还会不断升级OpenPBS和Maui的版本。管理提供了一个命令行界面(CLD。它是ORNL开发用来PBS包括3个主要部分。①一个PBS server: 它在主节管理和使用自己的HIGHTORCCluster的一套工具。 它主要点上运行,用来控制作业的提交和运行;②Mauischeduler:运包括全Cluster范围内的命令执行、文件发布和收集、远程关用先进的算法在Cluster中安排任务:③一个“mom”守护进机和系统映像的更新等工具。这些工具方便了在各个节点程:它运行在每个节点,负责在节点上开始或者结束作业。执行命令,使用户可以输入一个同时在所有的集群节点上在PBS安装目录/bin中可以找到所有PBS可以执行的运行的命令(如cexec,cpushimage等)。例如:命令,这里简要介绍几个最重要的命令。①qsub:向PBS提cexec clusterl:1-5 cluster2:2-6 ls -l:交作业;②qdel:删除PBS作业;③qtat[-n]:显示当前时间的(在clusterl的1-5节点和cluster2的2-6节点运行Is-l命令,节点的相关作业情况;④pbsnodes:显示节点情况。同时打印结果到本地计算机。)当作业被PBS提交以后,就由Maui进行日程管理.Maui其中cluster 是通过/etc/c3.conf文件指定的。在这个文首先确定哪个作业是可以执行的,进而除去那些不可执行件中,用户可以通过固定的格式指定多个cluster,同时指定的(挂起的,状态不符的,或者预处理不够的);接着对作业不同的节点相对于某个cluster 的排列位置以帮助C3命令划分次序,它定义各个作业的相对优先权:作业的次序依据行确定命令到底在哪个节点执行。C3邇过rshsh在远程节作业的-些属性进行计算(比如作业拥有者、作业大小、提点执行命令,同时通过rsync同步各个节点的磁盘内容。由交到队列的时间长度等);系统运用某种已经配置好的强制于使用了rsync机制,C3对系统的同步消耗有所降低;通过性措施约定可以运行多少作业、多少节点和进程,那些违反rsh/ssh的切换使用,C3可以在安全和快速中进行选择。下这些规则的作业将不会被考虑进行作业安排。对于每个作面用图说明C3工作原理,以cpushimage为例,如图1所示.①业,系统会寻找一些匹配的资源(CPU资源等)并按照某种server 通过rhsh传送upda-D_算法找到最合适的资源进而向各个资源分发作业。teimage命令;②node1运行2.4使用pfiler确保安全性本地script向server 提出传pfiter为集群提供安全屏障。当pfilter开启的时候,系送image请求;③server通过统内部各个节点间允许任何的网络连接,而和系统外部只rsync向node1传送image文允许ssh和http访问,这大大提高了系统的安全性。件;④nodel通过rsh/ssh 向外部网络和集群之间的通信只被限制在从内到外的通server返回输出结果。图1 cpushimage信(Cluster toOutside)中,从外到内的通信被pfilter阻塞掉了。2.3使用PBS来箐理作业如果我们想开启从外到内的通信,就必须修改pfilter的配置当很多的用户同时使用一个Cluster或者- -个用户想向文件。Cluster提交多个作业的时候,需要-一个作业管理系统,它能2.5使用NTP来同步系统时钟够合理地给各个作业分配资源,从而确保充分利用集群系NTP(Network Time Protocol)是用来和外部资源同步计统计算能力并尽可能快地得到运算结果。一般来说, - 个算时钟的工具。Ntpd守护进程可以在client和server节点上作业管理系统需要以下两个主要部分。①资源管理器:为分别运行,其作用分别为在远程节点上获得当前时间和向了确保分配给作业合适的资源,集群资源管理器需要维护远程节点提供当前时间。一个数据库。这个数据库记录了集群系统中各种资源的属OSCAR利用NTP去实现两种时钟同步:①Server节点性和状态、所有用户提交的请求和正在运行的作业:②作业和外部资源的时钟同步;②client节点和server节点的时钟调度策略管理器:策略管理器根据资源管理器得到各个结同步。对于OSCARserver来说,它会努力地去与外部时钟点上的资源状况和系统的信息,从而生成一- 个优先级列表。同步。如果无法与外部实现同步(甚至有时根本就没连外此列表告诉资源管理器何时在哪些结点上运行哪个作业。部网络),OSCAR也保证server和client是同步的。PBS(Portable Batch System)就是一-个资源管理器,是一2.6使 用MPICHLAM-MPI编写计算程序种可伸缩性的任务队列和工作管理系统。它是在网络的、MPI(Message Passing Iterface)是消息传递并行程序设多平台的UNIX系统环境下工作的。OpenPBS (tp://ww.计的标准之一,是由全球工业、政府和科研部门联合推出的OpenPBS.org)是PBS的Open Source 的实现。OpenPBS 在一大类并行机的标准消息传递并行程序设计平台。它包含OSCAR中扮演着资源管理器的角色。OpenPBS自身包括了3层结构:最上层是MPI的API,基本是点到点通信和在点一个叫做FIFO的作业调度策略管理器,但是OSCAR在安到点通信基础上构造的集群通信(COllctive Communica-装OpenPBS的时候缺省地关掉了FIFO,因为OSCAR使用tion)中国煤化工ce Interface) ,其中device了一个更加鲁棒的开放源代码作业调度策略管理器:Maui。可以|YHCN M H G幸,ADI就是对各种不同MauiScheduler是-一个用于Linux和BSD集群计算机的高级的底层通信库的不同接口的统一杯准;底层是具体的底层的HPC并行批处理调度器,它提供了一个完整的科学调度通信库。方案,支持并行运行客户的MPI工作。在最新的OSCAR2.3MPICH和LAM-MPI都是MPI的具体实现,它们都遵从- 1873一MPI标准,我们可以选择使用任何一个接口进行程序设计。管理工具简化了集群的管理,管理员可以像往常- -样创建这些实现都提供了用来编译MPI程序的工具(mpicc, mpiCC,账户,但在命令完成之后,这个账户将存在于所有的OPIUM.mpi77等)和MPI程序的运行工具mpinin。管理的集群节点中。它还可以帮用户配置ssh使得用户无在OSCAR中,MPICH和LAM-MPI被缺省地安装到系需输入密码就可以登陆系统节点。在更改用户设置的时候统中,用户可以根据个人的习惯去改变系统环境变量(参见用户需要在cluster的头节点更改,这样才能够确保用户信switcher部分)来选择使用哪种MPI实现来完成高性能程序息传播到各个节点。开发。3OSCAR集群系统的安装2.7使用环境切换器切换环境OSCAR向用户提供了环境切换器(Switcher)包。利用一般的集群系统的安装需要以下两步:①网络启动:设它,用户可更加安全地管理环境,如PATH、MANPATH等。置需要安装的结点的网络启动,然后管理结点远程重启需用户不用进行系统环境变量的配置就可轻松地在MPICH和要安装的结点。网络启动的结点启动后从启动服务器获得LAM-MPI中切换。使用switcher可以有以下几个好处:一个小的操作系统内核。网络启动一般采用Intel 的PXE(1)用户不必手工更改dot文件(如.bashrc文件)就可以(Pre-Execution Environment)标准;②网络安装:这个操作系统更改系统的环境变量,取而代之的是-一个简洁安全的命令内核负贵从安装服务器(通常是一个文件服务器)上取得安行界面(CLI)。装软件包或系统映像并在本地实施系统安装。(2)使用命令行界面使得远程调用shell如rsh、ssh等可作为OSCAR系统,它基本遵循这个安装思路,总结如以调用此命令,起到了在远程更改dot文件内容的作用。F:(3)这样做是安全的,因为Switcher定义了安全的用户step 0:(Download aditional OSCAR Packages),这一步可命令,减少因为用户的错误操作而使环境变得--团糟的可选,使用OSCAR Package Downloader(OPD)从网络上下载新能性。的和附加的OSCAR安装包并把它们放入安装过程中不必(4)用户可以选择在当前shell下改变环境还是改变未.单独配置。来shell的环境。Step 1: (Select Packages to insall)这一步 可选,它用来选OSCARSwitcher包括两个核心软件包:modules和env-择我们要安装的工具包,其中主要包括C3、Switcher等工具,switcher. modules用来改变当前的环境,但是改变并不永久可 以在这里选择在安装过程中是否安装它们。,保存下来:env-switcher用来改变未来shell的环境,并且会永Step 2: (Configure OSCAR Packages)可选,在这里可以久发生作用。配置缺省的MPI、缺省的NTP设置和缺省的kermel.modules通过modulefile来动态修正用户环境。module-Step 3: (Install OSCAR Server Packages)在server节点上file是一群TCL script, 它们负贵保存用来配置shell的一些调用保存在特定目录中的rpm文件来安装一些必要的工具信息。一旦modules包被初始化,用户就可以通过module命包,这其中就包括在step1中选择的软件包。令去解释modulefle的内容从而达到修改环境的目的。典Step 4: (Build OSCAR Client Image):在这-步中我们需型的modulefile 指导用户去改变系统的环境变量(比如.要先配置系统文件使得root用户可以通过SSH登陆系统任PATH、MANPATH等).每个用户可以拥有自已的modulefile。意节点,同时还要保证系统中的防火墙尽量限制为nofire-例如用户可以使用下面的两个命令去增加环境和删除环wall。这一步中,OSCAR创建client Image,为以后的集群安境:①module load lam-6.5.6:装载lam-6.5.6的modulefile,使得装做好准备。在这里用户可以指定特别的image和特别的它在系统环境内可用;②moduleunloadpvm:卸载pvm的分区格式使得OSCAR集群的计算节点满足这些条件。modulefile,使得它在系统环境内不可用。Step 5: (Define OSCAR Clients)在这里用户定义目前的.Switcher 同样是控制modulefile改变环境,只是它的改.OSCAR集群中应当有多少节点,各个节点的IP地址、机器变是全局性的,会在今后的shell中产生作用。下面是switcher名等信息也要在这里给出,以后系统的安装将完全遵照这的使用例子: .里的规定进行。Switcher = [-system]: 把某个环境进行切Step 6: (Setup Networking)在这里,用户通过PXE或者换。网络启动软盘网络启动所有的计算节点,计算节点启动后OSCAR提供了3种modulefile.①Normal:不被OSCAR将向前面Step5中定义的IP段广播,主节点监听到广播并自动装载:位置:/opt/modules/modulefiles;②Auto-loaded:被获得各个计算结点的MAC地址,从而将前面定义的IP地址OSCAR确保装载到各个shell中;③Switcher-contolled:是否与MAC地址进行绑定。然后各个节点再次网络启动,这时,被装载由用户利用switcher命令决定;位置:这些modulefle主节中国煤化,工TP服务器将基本安装没有固定的目录。映像MHCNMHG算结点完成本机的操作2.8使用 OPIUM系统的义要部分。OPIUM(OSCAR Password Installer and User Management)Step 7: (Complete Cluster Setup)将各个计算节点从硬盘包提供了一个同步集群账户信息的机制。这个标准的用户启动, 运行这一步来完成- - 些最后的安装配置工作和重新一1874初始化等工作。[5] Core OSCAR Team. OSCAR 2.0 architecture incomplete draftStep8:(TestClusterSetup)在这里运行--些简单的script[EB/OL]. 2002- 10-24. htp://oscar. sourceforge net.来简单测试一下各个包的工作状况,如果其中任何-一个包[6] Core OSCAR Team. OSCAR developer conventions and guide-lines[EB/OL]. 2002-10-16. htp:/ osca.sourceforge.net/.出现问题,都会使得安装失败。[7] Jeremy Enos. 0SCAR[EB/OL].2002-06-30. ht:/oscar. sou-4结语rceforge. net.综上所述,OSCAR集群系统实际上是通过SIS远程安[8] Thomas Naughton. Clustering with OSCAR (utorial)[EB/OL].2002-06-29. htp://oscarsourceorge. net/.装系统,整合了MPIPVM、OpenPBS.C3等强大工具的集群[9] Jef Squyres. Everything you wanted to know about switcher解决方案。目前,SCAR还在处于不断发展的阶段,它还有[EB/OL]. 2002-05-15. htp://oscr. sourceforge.neV.很多地方需要完善。[10] Enos Jeremy. Cluster in a box, a.k.a. "OSCAR"IR]. NCSA Lin-参考文献:ux Revolution Conference, 2001.1] Ibrahim Haddad. Aries[EB/OL]. Open source cluster group Con-[] The open cluster group. How to Intall an OSCAR Cluster Soft-ference, 2001-03-07 ht:/sar.. sourceforge.net.ware[EB/OL.2003-08-19. htp:/ osca.sourceforge.net/.[12] Scott Stephen, Mattson Tim. Notes from the Kick-off meeting[2] The open cluster group. OSCAR Cluster User's Guide Software[EB/OL].2000-04. htp:/scar. sourceforge.net.[EB/OL]. 2003-08-19. htp://oscar.. sourcefore.net.[3] Brechin Jason, Ellen Michael Mary. The sterps required to install[13] Jewett Sean. Supporting the revolution of linux high perfor-mance computing [EB/0OL200-07-.htp://oscar.sourceforge.an OSCAR cluster [EB/OL]. 2002-05-05. htt/scar.source.e[14] Hsieh Jenwei. A Turnkey Solution for Cluster Computing[EB/forge.net.OL].2001. htp:/www.del. Com.[4] Stephen L. Open source cluster application resources release[15] Brim Michiel, Flanery Ray. Cluster command and control (C3)v1.1 & v2.0 plans[C].2001-07.Tool Suite[C]. Parallel Distributed Computing Practices,2001.(上接第1871页)务的服务提供者实例可以在运行时刻动态更改,而不必修[Z]. Draft ETSI ES 202 915-4-3,4,5 V0.0.4.,003.改应用逻辑。比如当Strong.com存在问题或者遇忙时,用户[2] Douglas Schmidt , Steve Vinoski. CORBA and XML -three part账户管理功能可以由联网的其它银行来提供,只要这些其series[Z]. C/C++ Users Journal, 2001.它银行可以提供相同的WebServices接口;③这个商业流程[3] Dan Gisolfi. Web services architecture [EB/0OLJ.2002. htp//本身是可以动态改变的,原有流程可以作为新流程的一部www. ibm.com/developerworks/webservices.分被重用。比如希望在现有MobileStockDealer流程中增加[4] The common object request broker: Architecture and specifica-tion [s]. Obiject Management Group, 2002.一个股票交易实时转托管的功能,也即在上述流程的Stron-g.com账户管理和NYSE.com股票交易之间增加- -个 新的账[5] OSA Specification [EB/OL]. htp://www.gpp.org.户代理功能。这时我们要做的工作仅仅是:描述新的账户[6] ETSI SPAN Specification [B/0:L:/tp://ww.etsi.org.[7] Web services [EB/OL].2002. htp://ww.w3.org/.代理功能处理流程,该流程对外表现为Service,称作Proxyer,8] cbXML [EB/0L]. htp:// www.ebxml.org.将现有MobileStockDealer也作为Service,通过WSFL描述[9] Web services [EB/OL]. htp://msdn.microsoft.com/webservices.Proxyer与MobileStockDealer之间的交互流程,形成- - 个新10] Web services [EB/OL]. htp://java.sun.com/webservices.的业务流程MobileStockDealer2。 对新流程的解释执行中,[11] Web services[E/0OL:/ttp://ww.ibm.com/developerworks/web-将会用到已有MobileStockDealer和Proxyer处理流程的能力。services.6结语[12] Taking advantage of web services [EB/OL]. htp://www attach-mate.om/article/0,1012,3856_ 1_ 7416,00.html.通过分析Parlay API技术和Web Services 技术的特点,[13] Ivy Schmerken. Can web services hype [EB/OL]. Wall steet and提出结合二者构建统一的业务体系,从而有机结合企业应technology online, 2002.ttp://www.walstreetandtech. com 1用和电信网络两个领域资源,有可能更加快捷、方便地开发story/WST20021007S0006.更多新业务,并易于维护和管理。但是这种结合目前还存[14] Web services: hype vs. reality [EB/OL]. htp://ww. jupiterweb-在安全、事务处理、性能等方面的诸多问题,这也是WebSer-[1s中国煤化工3/OL]. htp:p:/nicentern advi-vices技术和ParlayAPI技术需要进一步研究的方向。.MYHCNMHG参考文献6] Cutting through web services hype (EB/OL]. 2002. htp://ka/sey.1] Open service acess, application programming interface (API)com/uting_ through web. services bype.一1875一

论文截图
上一条:人脸识别技术
版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。