Linux集群技术应用研究

2009-07-01 02:42纪秀辉
新媒体研究 2009年23期
关键词:集群调度可视化

[摘要]Linux操作系统的应用日趋成熟,Linux在很多计算机领域都占有一定的市场份额。基于Linux构建Web、Mail、FTP等应用服务器,已成为当今的主流。这也为Linux集群的发展创造了良好的平台。Linux集群开始是用于大学和研究部门中的计算系统,现在已经被大量用于天气预报、图象处理、数据挖掘、生物制药和基因测序软件开发等领域。由于集群具有高可扩展性、高性价比、高可用性、高性能等特性,这为Linux集群技术的发展奠定了良好的基础。

[关键词]Linux集群技术系统分析

中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)1210101-01

一、引言

随着网络技术的发展和网络应用在各个领域的深入使用,带来了服务器需求的迅速增长,当访问需求增长时,服务器会在很短的时间内超载,独立且能满足数据吞吐的服务器价格昂贵,而Linux集群技术在满足要求的基础上费用低廉。目前,越来越多的企业采用Linux操作系统,提供Web、邮件、FTP、数据库等服务。随着人们对Linux服务器依赖的加深,对其可靠性、负载能力和数据能力也备加关注。Linux可以运行于极为普及的PC机上,不需要购买昂贵的搭载UNIX操作系统硬件设备。在几台运行Linux的PC机上,只要加入相应的集群软件,就可以组成具有很

强计算能力、负载能力和可靠性的Linux集群。

二、集群定义分类及应用

(一)集群的定义。集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源。传统的UNIX的集群产品,例如TruClusterServer,价格十分昂贵,而Linux集群产品则具有优良的性能价格比。

(二)Linux集群的分类及应用。按照不同的侧重点,可以把Linux集群分为三类。一类是高性能计算集群:主要针对的是大规模数值计算,解决复杂的科学问题。这种集群中的服务器采用并行计算方法,把独立海量的计算任务分解成各个子任务,然后分配给各节点并行计算,并通过标准化的消息传递接口(PVM或MPI)实现各计算节点的同步和数据的汇集。随着社会进步与科学技术的发展,并行计算越来越多地应用于各行各业,如计算数学、环境科学、航空航天、石油地震勘探、天气预报、生物制药、人工智能、DNA模型计算等领域。第二类是高可伸缩性负载均衡集群:目的是提供与节点个数成正比的负载能力,将系统的整体负载合理地分配到各个服务器节点上,使得每个节点都不会因为超负荷工作而崩溃;并且当对系统整体负载需求大于系统整体负载能力时,可以通过增加服务器节点,平滑地拓展系统负荷能力。这种集群非常适合提供大访问量的网络服务。如网上营业系统、网银、网游服务器、VOD点播系统、图形对象发布、气象信息检索服务、互联网门户网站等领域。目前,世界最著名的Google搜索引擎就是由近2万台后台服务器构成,并通过基于Linux的高可伸缩性负载均衡集群技术来实现的。第三类是高可用性集群:设计目的就是要最大限度地减少服务中断时间。高可用性集群的主要功能就是提供7×24小时不间断服务。有许多应用程序都必须一天24小时不停运转,如数据交换机、军事监测系统、工业控制系统、电信业务支持系统等。对这些应用程序来说,暂时的停机和重启都会导致数据的丢失或灾难性的后果。高可用性集群通常是由多个节点构成,当单个节点出现故障时,系统其他节点接替服务,整个系统仍能继续正常对外提供服务。

三、Linux集群要解决的技术关键

(一)如何解决大规模集群系统的可扩展性和性能衰减的问题。集群的体系结构存在一些问题,如系统中有许多操作系统映像,单一系统映像能力差;当系统较大时,可扩展性和可靠性较差,并且系统性能衰减较快。

(二)并行调度的任务粒度划分问题。为了最大限度发挥集群计算的并行度,我们往往把减小系统通信延时作为任务划分的依据,即将一些任务划分到一个节点上串行执行,使得通信延时的减小效果超过串行执行对性能的影响。

(三)集群内部节点之间的通讯延时问题。节点之间使用一些专用的或者通用的互联网络协议进行连接。它避免了共享内存所出现的资源竞争,有助于提高节点利用率。通用的互联网络协议有:千兆以太网、Myrinet等。专用的协议有TCP/IP协议的精简协议,如ActiveMe-ssage、

FastMessage、VIA(Virtual Interface Architecture)等。一般对不同的情况采用不同的专用网络协议减少通信延时。

(四)调度器的负载均衡技术的问题。IP负载均衡技术:当客户请求到达时,调度器只根据服务器负载情况和设定的调度算法从服务器池中选出一个服务器,将该请求转发到选出的服务器,并记录这个调度;当这个请求的其它报文到达,也会被转发到前面选出的服务器。基于内容请求分发技术:服务器可以提供不同的服务,当客户请求到达时,调度器可根据请求的内容选择服务器执行请求。

(五)海量数据的可视化显示问题。因为显示数据不是从本地硬盘中读取的,可视化运行环境也不是事先在本地安装的。如果采用OpenGL等传统的可视化手段,只能在web服务器端生成图像,再一幅幅地传给客户端显示,在当前带宽受限的情况下,是不可能满足网络环境下高性能计算的可视化要求的。而Java3D能够很好地解决这个问题:它是面向Internet的三维开发环境,它继承了Java的网络语言特征——代码的可传输性,使得用来生成可视化场景的小巧的Applet可以方便地从服务器传给客户端,然后在客户端本地运行。也就是说,传输的不是图像本身,而是控制三维图像生成的程序和数据,因而大大节省了网络传输数据量。借助于Java3D三维可视化环境开发图形化用户界面,用于处理用户程序的海量数据显示的带宽瓶颈问题。

四、总结

在本文中,我们对Linux操作系统在机群技术方向的应用及相关技术做出研究分析,给出了Linux集群要解决的技术关键。计算机网络的快速发展,要求服务器不但处理速度高、吞吐量大、容错性能好,而且要可靠性高、稳定性强。Linux集群技术由多台服务器共同承担一些繁重的计算或I/O任务,从而以较低成本消除网络瓶颈,提高网络的灵活性和可靠性。

参考文献:

[1]刘德春、吴绍兴,基于Linux的集群技术的开发与应用[J].计算机教育,2006(09).

[2]屈钢、邓健青、韩云路,Linux集群技术研究[J].计算机应用研究,2005(05).

[3](美)Arman Danesh著,Mastering Linux,电子工业出版社,2005.

作者简介:

纪秀辉(1982-),男,黑龙江省绥化市人,本科,江西省九江学院信息科学与技术学院教育技术教研室助教,研究方向:嵌入式系统研究开发。

猜你喜欢
集群调度可视化
水资源平衡调度在农田水利工程中的应用
数据可视化设计在美妆类APP中的应用
智能四向穿梭车系统的应用与调度对策研究
思维可视化
10kV配网调度运行故障及控制对策
复变函数级数展开的可视化实验教学
复变函数级数展开的可视化实验教学
复变函数共形映射的可视化实验教学
复变函数共形映射的可视化实验教学
勤快又呆萌的集群机器人