机群系统
互相连接的多个独立计算机的集合
机群(cluster)系统是互相连接的多个独立计算机的集合,这些计算机可以是单机或多处理器系统(PC、工作站SMP),每个结点都有自己的存储器I/O设备和操作系统。机群对用户和应用来说是一个单一的系统,它可以提供低价高效的高性能环境和快速可靠的服务。
基本体系结构
机群系统一般结构
机群系统包括下列组件:
·高性能的计算结点机(PC、工作站或SMP)。
·具有较强网络功能的微内核操作系统
·高效的网络/交换机(如千兆位以太网和Myrinet)。
·网卡(NICs)。
·快速传输协议和服务。
·中间件层,其中包括某些支持硬件,如数字存储通道、硬件分布共享存储器及SMP技术;应用,如系统管理工具和电子表格;运行系统,如软件分布共享存储器和并行文件系统;资源管理和调度软件等。
·并行程序设计环境与工具,如编译器、语言环境、并行虚拟机(PVM)和消息传递接口(MPI)等。
·应用,包括串行和并行应用程序。
组建机群系统的需求和功能
机群组建时应考虑下面的需求和功能:
·较高带宽的网络,以支持通信需求;
·低延迟的通信机制;
·支持高带宽的多点传送通信方式;
·自动恢复网络和结点错误的能力;
·标准的低级原语,支持通信、同步和时序;
·异构的远程过程调用,以隐藏体系结构、协议和系统的不同性;
·实时性能监视器;
·可靠的批处理工作调度程序;
·分布应用程序开发工具;
·支持传统的高级语言进行异构计算
·能够开发工作站机群的应用程序;
·新的系统管理工具;
·发展标准化,以保护软件投资。
机群系统与其他系统的比较
一个典型机群系统和其他类型系统的对比可参看下表。
基本类型
机群系统可以按照应用或结构进行分类。
1.按应用目标
可分为面向科学计算型或面向关键任务应用型:
·高性能机群(high performance cluster);
·高可用性机群(high availability cluster)。
2.按组成机群的处理机类型
·PC机群;
·工作站机群;
·SMP(对称多处理器)机群。
3.按处理机操作系统
·Linux机群,如Beowulf;
·Solaris机群,如Berkeley NOW;
·NT机群,如HPVM;
·AIX机群,如IBM SP2;
·数字VMS(虚拟存储机)机群;
·HP-UX机群;
·微软Wolfpack机群。
4.按处理机的配置
·同构型机群:所有结点拥有近似的构造和相同的操作系统;
·非同构型机群:所有结点拥有不同的构造和不同的操作系统。
5.按处理机的位置和数量
·组机群,结点数量为2~99,通过SANs(系统级网络),如Myrinet,机群实际上装入一个机箱中或存在一个范围之内;
·部门机群,结点数量为几十或几百;
·企业机群,结点数量为几百。
6.按构筑机群的方式
·专用机群;
·非专用机群。
极高的性能价格比使专用机群深受欢迎。
专用机群
专用机群一般由一组同构的处理机组成(有时也有异构情况),通常安装在一个机房内,或者将主板等安装在一个机柜的各机箱中(商业机群常用这种方式),或像图中那样简单地把PC机堆砌在机架上(Piles of PC)。在这种机群中,每个处理机都是专用的、无属主的,由系统管理员统一管理,用户可通过前端机进行访问,用户无需知道机群的详情,就像使用MPP机一样,易于配置和管理,不受外界干扰,通信可靠且延迟小,适合于面向加速比的并行任务和面向吞吐量批处理作业。专用机群具有相对结构和管理简单、易于扩展等特点,用途极广。
专用机群的互联结构
·I/O方式 包括普通用LAN、FDDI、ATM等网络连接和共享磁盘连接两种方式。
·共享存储器方式 包括全局共享存储器方式和分布式共享存储器方式。分布式存储器指没有一个集中的存储器,由各处理机内一部分存储器通过软件机制形成。
1994年夏,美国的研究人员建成了第一个Beowulf机群,它由16个DX4处理机组成。1997年,又推出了16个基于PⅡ的机群,只需花费5万美元却具有每秒10亿次的浮点运算能力,而购买具有相同能力并行机的投资数却是它的10倍。 Berkeley的NOW系统也是较早的工作站机群,由上百个Sun Ultra工作站组成,集成到19 英寸机箱中,可使用Myrinet、ATM和终端集中器等多种互联手段,每个结点自带512K缓存、128M内存及2个2.3G硬盘。
此外,各大公司推出的商业专用机群还有很多,如DEC 的VMS机群和TruCluster、惠普的Apollo 9000机群、IBM的Sysplex、Sun的Solaris MC 等。
在国内,曙光公司最新推出了基于NT的天潮系列机群产品,是采用分布式存储的可扩展机群体系。其结点处理器为Intel PⅡ和PⅢ,通过千兆位以太网互联,扩展性好,结点可根据不同的应用,动态地分为多个结点池,如可用两个结点作为服务器、四个结点运行数据库、其他结点用于计算等,结点数量可灵活配置。应用范围包括:
科学计算 支持PVM和MPI,使用优化的BLAS库;事务处理 在线事务处理(OLTP),如电子商务、证券交易和在线分析处理(OLAP);并行数据库 支持Oracle、DB2等分布式数据库应用;
非专用机群
非专用机群是由分散互联的处理机或在网上寻找到的空闲处理机组成的机群,这些处理机可能分属于不同的个人、组织或单位。据资料统计,一般计算机系统平均使用率仅为30%左右,有的空闲率竟达91%,而许多桌面网络工作站和微机的CPU利用率都小于10%,因此,人们自然想到要利用这些闲散的CPU处理能力,这被称为CPU周期窃取。
通常,网络上计算单元都是拥有者各自孤立地使用其拥有的计算单元,一般处于下列状态:
·处于空闲或等待状态,如夜间;
·文档编辑工作,包括收发E-mail、阅读文档和信息等;
·开发工作,包括编辑、编程、编译、调试等;
·完成某种定时、守候服务和功能;
·运行计算型的程序。
所谓窃取CPU周期就是要窃取上述前四类处理机的CPU 周期给最后一类工作用。显然,被窃取CPU周期的处理机包括空闲的处理机和CPU负载较轻的处理机两类。
非专用机群地理上分布于不同的所有者,由异构系统组成,大部分通过以太网连接,适用于企业级局域网范围,技术难度要高于专用机群。工作站的主人与需占用工作站资源运行程序的远程用户之间存在着矛盾,前者希望与工作站快速交互,而后者只关心能否利用所有的共享CPU来快速运行程序。机器的所有者必须具有参加机群的动机,这意味着他们相信贡献他们的资源是有意义的。但是,这些所有者不希望在他们工作时或他们的系统过于饱和时,受到其他干扰,一个解决的策略是允许所有者退出机群。国际上正在形成一种计算资源的买卖市场,以刺激资源拥有者加入网上机群。此外,由于当前网络通信速度和质量的瓶颈所限及由通信竞争造成的网络不确定性的存在,对非专用机群技术提出了更高的要求,如对进程迁移、负载平衡等技术的需求。但此类系统最为贴近普通用户,可以充分利用网上无穷无尽的资源,而组建投资几乎可忽略不计。可以预见,随着网络瓶颈问题的缓解,非专用机群必然是极有发展前途的一种计算形式。
主要应用
网格计算
网格计算或网格集群是一种与集群计算非常相关的技术。网格与传统集群的主要差别是网格是连接一组相关并不信任的计算机,它的运作更像一个计算公共设施而不是一个独立的计算机。还有,网格通常比集群支持更多不同类型的计算机集合。
网格计算是针对有许多独立作业的工作任务作优化,在计算过程中作业间无需共享数据。网格主要服务于管理在独立执行工作的计算机间的作业分配。资源如存储可以被所有结点共享,但作业的中间结果不会影响在其他网格结点上作业的进展。
高性能计算集群
高性能计算集群采用将计算任务分配到集群的不同计算节点儿提高计算能力,因而主要应用在科学计算领域。比较流行的HPC采用Linux操作系统和其它一些免费软件来完成并行运算。这一集群配置通常被称为Beowulf集群。这类集群通常运行特定的程序以发挥HPC cluster的并行能力。这类程序一般应用特定的运行库, 比如专为科学计算设计的MPI库。
HPC集群特别适合于在计算中各计算节点之间发生大量数据通讯的计算作业,比如一个节点的中间结果或影响到其它节点计算结果的情况。
负载均衡集群
负载均衡集群运行时,一般通过一个或者多个前端负载均衡器,将工作负载分发到后端的一组服务器上,从而达到整个系统的高性能和高可用性。这样的计算机集群有时也被称为服务器群(Server Farm)。 一般高可用性集群负载均衡集群会使用类似的技术,或同时具有高可用性与负载均衡的特点。
Linux虚拟服务器(LVS)项目在Linux操作系统上提供了最常用的负载均衡软件。
参考资料
最新修订时间:2023-12-10 17:57
目录
概述
基本体系结构
参考资料