没有合适的资源?快使用搜索试试~ 我知道了~
集群机及并行环境建构讲义
4星 · 超过85%的资源 需积分: 5 8 下载量 17 浏览量
2012-01-10
18:17:05
上传
评论 1
收藏 3.98MB DOC 举报
温馨提示
试读
64页
本资源是国内最早的一本集群机及并行环境建构教材,由大学教授编写,是本科生的一本教材,也可用于自学~
资源推荐
资源详情
资源评论
第 1 章 集群机概述
随着计算机技术的发展和越来越广泛的应用,越来越多的依赖于计算机技术的应用系
统走进了我们的工作和生活。在给我们带来方便和效率的同时,也使得各行各业对于计算
机技术的依赖程度越来越高。尽管随着计算机技术以日新月异的速度发展,单台计算机的
性能和可靠性越来越好,但还是有许多现实的要求是单台计算机难以达到的。看看下面的
例子:
某银行需要一台服务器来储存财务数据。他要求这台计算机即使是在机房坍塌的情
况下也能够被各个业务网点访问。
某科研单位需要用一台超级计算机来模拟气象变化。他们需要有相当于
奔腾 处理器的浮点运算能力。
某网络公司刚刚起步。他们想要一台现在 万人民币以下,但以后可以逐步升级到
具有巨型计算机能力的服务器来运行数据库。
在这些情况下,往往需要将多台计算机组织起来进行协同工作来模拟一台功能更强大
解决问题。这种技术称为集群技术。
最常见的三种集群类型包括高可用性集群、高性能科学集群和负载均衡集群。
高可用性集群:高可用性集群的出现是为了使集群的整体服务尽可能可用,以便考虑计算
硬件和软件的易错性。如果高可用性集群中的主节点发生了故障,那么这段时间内将由次
节点代替它。次节点通常是主节点的镜像,所以当它代替主节点时,它可以完全接管其身
份,并且因此使系统环境对于用户是一致的。高可用性 (HA) 集群致力于使服务器系统的
运行速度和响应速度尽可能快。它们经常使用在多台机器上运行的冗余节点和服务,用来
相互跟踪。如果某个节点失败,它的替补将在几秒钟或更短时间内接管它的职责。因此,
对于用户而言,集群永远不会停机。
高性能科学集群:通常它涉及为集群开发并行编程应用程序,以解决复杂的科学问题。这
是并行计算的基础,尽管它不使用专门的并行超级计算机,这种超级计算机内部由十至上
万个独立处理器组成。但它却使用商业系统,如通过高速连接来链接的一组单处理器或双
处理器 PC,并且在公共消息传递层上进行通信以运行并行应用程序。因此,您会常常听说
又有一种便宜的 Linux 超级计算机问世了。但它实际是一个计算机集群,其处理能力与真
的超级计算机相等,通常一套象样的集群配置开销要超过 $100,000。这对一般人来说似乎
是太贵了,但与价值上百万美元的专用超级计算机相比还算是便宜的。
负载均衡集群:负载均衡集群为企业需求提供了更实用的系统。如名称所暗示的,该系统
使负载可以在计算机集群中尽可能平均地分摊处理。该负载可能是需要均衡的应用程序处
理负载或网络流量负载。这样的系统非常适合于运行同一组应用程序的大量用户。每个节
点都可以处理一部分负载,并且可以在节点之间动态分配负载,以实现平衡。对于网络流
量也是如此。通常,网络服务器应用程序接受了太多入网流量,以致无法迅速处理,这就
需要将流量发送给在其它节点上运行的网络服务器应用。还可以根据每个节点上不同的可
用资源或网络的特殊环境来进行优化。
在集群的这三种基本类型之间,经常会发生混合与交杂。于是,可以发现高可用性集
群也可以在其节点之间均衡用户负载,同时仍试图维持高可用性程度。同样,可以从要编
入应用程序的集群中找到一个并行集群,它可以在节点之间执行负载均衡。尽管集群系统
本身独立于它在使用的软件或硬件,但要有效运行系统时,硬件连接将起关键作用。
目前,越来越多的网站采用 Linux 操作系统,提供邮件、Web、文件存储、数据库等
服务。也有非常多的公司在企业内部网中利用 Linux 服务器提供这些服务。随着人们对
1
Linux 服务器依赖的加深,对其可靠性、负载能力和计算能力也倍加关注。Linux 集群技术
应运而生,可以以低廉的成本,很好地满足人们的这些需要。
Linux 竞争力很强的原因之一,是它可以运行于极为普及的 PC 机上,不需要购买昂贵
的专用硬件设备。在几台运行 Linux 的 PC 机上,只要加入相应的集群软件,就可以组成具
有超强可靠性、负载能力和计算能力的 Linux 集群。集群中的每台服务器称为一个节点。
按照侧重点的不同,可以把 Linux 集群分为三类。一类是高可用性集群,运行于两个或多
个节点上,目的是在系统出现某些故障的情况下,仍能继续对外提供服务。高可用性集群
的设计思想就是要最大限度地减少服务中断时间。这类集群中比较著名的有 Turbolinux
TurboHA、Heartbeat、Kimberlite 等。第二类是负载均衡集群,目的是提供和节点个数成正
比的负载能力,这种集群很适合提供大访问量的 Web 服务。负载均衡集群往往也具有一定
的高可用性特点。Turbolinux Cluster Server、Linux Virtual Server 都属于负载均衡集群。另
一类是超级计算集群,按照计算关联程度的不同,又可以分为两种。一种是任务片方式,
要把计算任务分成任务片,再把任务片分配给各节点,在各节点上分别计算后再把结果汇
总,生成最终计算结果。另一种是并行计算方式,节点之间在计算过程中大量地交换数据
可以进行具有强耦合关系的计算。这两种超级计算集群分别适用于不同类型的数据处理工
作。有了超级计算集群软件,企业利用若干台 PC 机就可以完成通常只有超级计算机才能
完成的计算任务。这类软件有 Turbolinux EnFusion、SCore 等。
1.1 高可用性集群技术
1.1.1 高可用性集群技术概述
高可用性集群,英文原文为 简称 ,是指以
减少服务中断(宕机)时间为目的的服务器集群技术。
随着全球经济的增长,世界各地各种各样的组织对 系统的依赖都在不断增加,电子贸
易使得商务一周七天 小时不间断的进行成为了可能。新的强大的应用程序使得商业和
社会机构对日常操作的计算机化要求达到了空前的程度,趋势非常明显,我们无时无刻不
依赖于稳定的计算机系统。
这种需求极速的增长,使得对系统可用性的要求变得非常重要,许多公司和组织的业务
在很大程度上都依赖于计算机系统,任何的宕机都会造成严重的损失,关键 系统的故障
可能很快造成整个商业运作的瘫痪,每一分钟的宕机都意味着收入、生产和利润的损失,
甚至于市场地位的削弱。见表 。
表 1-1 宕机损失表
Industry BusinessOperation AverageCostperHour
ofDowntime
!"#"$"
经济人业务操作
%&'("
) )*""
信誉卡*销售授予权
%'&("
+)
,$-" 按次计
费电视
%'("
. 零售
"(/"$$012 %3'")
. "( " %4'")
2
应用系统 每分钟损失0美元2
呼叫中心02
5
企业资源计划06.,2系统
3
供应链管理0/+2系统
电子商务0"(( 2系统
客户服务0"(/ 2系统
5
根据 447 年 "$ 的统计我们可以看出,我们需要可以不间断使用的计算
机系统,并且这种对高可用性系统和技术的需求还会不断的增长。
可用性是指一个系统保持在线并且可供访问,有很多因素会造成系统宕机,包括为了
维护而有计划的宕机以及意外故障等,高可用性方案的目标就是使宕机时间以及故障恢复
时间最小化,可以容忍的宕机时间明确化,体现了方案的全面性、复杂性和成本。见表
。
表 1-2 宕机年时间与分级关系
PercentAvailable downtime/Year Classi#cation
44' 3'5) ""
44'4 7'7"
44'44 '&(
44'444 '3( .
44'4444 3 ") "
可用比例
0, 2
年停机时间
0)"-(*2
可用性分类
44'
3'5 天 常规系统0""2
44'4
7'7 小时 可用系统02
44'44
'& 分钟 高可用系统0
2
44'444
'3 分钟 .(故障自动恢
复能力)
44'4444
3 秒 " 故障容错
为了提高整个系统的可用性,除了提高计算机各个部件的可靠性以外,一般情况下都
会采用集群的方案。
所谓集群,就是共同为客户机提供网络资源的一组计算机系统。而其中的每一台提供
服务的计算机,我们称之为节点。当一个节点不可用或者不能处理客户的请求时,该请求
将会转到另外的可用节点来处理,而这些对于客户端来说,它根本不必关心这些要使用的
资源的具体位置,集群系统会自动完成。
集群中节点可以以不同的方式来运行,这要看它们是如何设置的。在一个理想的两个
节点的集群中,两个服务器都同时处于活动状态,也就是在两个节点上同时运行应用程序,
当一个节点出现故障时,运行在出故障的节点上的应用程序就会转移到另外的没有出现故
障的服务器上,这样一来,由于两个节点的工作现在由一个服务器来承担,自然会影响服
务器的性能。
3
针对这种情况的解决方案是,在正常操作时,另一个节点处于备用状态,只有当活动
的节点出现故障时该备用节点才会接管工作,但这并不是一个很经济的方案,因为你不得
不买两个服务器来做一个服务器的工作。虽然当出现故障时不会对性能产生任何影响,但
是在正常运行时的性能价格比并不太好。
从上面的工作方式出发,我们可以把高可用性集群分为下面几种(特别是两节点的集
群):
1.主/主 (Active/active)
这是最常用的集群模型,它提供了高可用性,并且在只有一个节点在线时提供可以接
受的性能,该模型允许最大程度的利用硬件资源。每个节点都通过网络对客户机提供资源,
每个节点的容量被定义好,使得性能达到最优,并且每个节点都可以在故障转移时临时接
管另一个节点的工作。所有的服务在故障转移后仍保持可用,但是性能通常都会下降。
2.主/从(Active/passive)
为了提供最大的可用性,以及对性能最小的影响, *$ 模型需要一个在正
常工作时处于备用状态,主节点处理客户机的请求,而备用节点处于空闲状态,当主节点
出现故障时,备用节点会接管主节点的工作,继续为客户机提供服务,并且不会有任何性
能上影响。
3.混合型(Hybrid)
混合是上面两种模型的结合,只针对关键应用进行故障转移,这样可以对这些应用实
现可用性的同时让非关键的应用在正常运作时也可以在服务器上运行。当出现故障时,出
现故障的服务器上的不太关键的应用就不可用了,但是那些关键应用会转移到另一个可用
的节点上,从而达到性能和容错两方面的平衡。
图 是高可用性集群管理器的示意图。
4
图 高可用性集群技术结构
在集群系统中为主 管理器建立一个备份机 ,主管理器和备份管理器上都运行着
程序,通过传送诸如8我活着8这样的信息来监测对方的运行状况。当备份机不
能在一定的时间内收到这样的信息时,它就激活 9# 程序,让备份管理器接管主管理器继
续提供服务;当备份管理器又从主管理器收到8我活着8这样的信息时,它就使 9# 程序无
效,从而释放 , 地址,这样主管理器就开始再次进行集群管理的工作了。
1.1.2 高可用性集群技术具体介绍
下面以 :; 企业集群为背景介绍高可用性集群技术中涉及的环境安装问题:
1.1.2.1 使用 rsync 和 SSH(安全外壳程序)同步服务器
此技术描述将数据和配置文件从一台服务器自动复制到另一台服务器的方法。即主服
务器崩溃时备份服务器可获得资源的所有权。体现高可用性。
⑴. 是个开源软件包,附带在 .)中,用于允许通过一个正常的网络连接
将数据从一台服务器复制到另一台。
⑵// 是当 把数据通过网络发送到备份服务器前,将数据全部加密,并使用一
个安全密钥来认证远程请求。
⑶ 双节点 // 客户端*服务器方案。涉及问题:创建有自己的数据文件的用户账户,
在 // 服务器上配置 // 主机密钥,为 // 客户机上的新账户创建一个用户密钥,将
用户密钥的公共部分从 // 客户端复制到 // 服务器,测试 // 客户端到 // 服务器
的连接。
5
剩余63页未读,继续阅读
资源评论
- guolu199105132012-06-13这是我们学校的讲义。但是我想要实验的。。。。
little_ellen
- 粉丝: 1
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功