服务器集群技术.ppt
《服务器集群技术.ppt》由会员分享,可在线阅读,更多相关《服务器集群技术.ppt(64页珍藏版)》请在冰豆网上搜索。
![服务器集群技术.ppt](https://file1.bdocx.com/fileroot1/2022-10/9/9f9224e4-c5de-429b-80f0-00890923d7c1/9f9224e4-c5de-429b-80f0-00890923d7c11.gif)
服务器集群技术简介FrankHe背背景景长期以来,科学计算、数据中心等领域一长期以来,科学计算、数据中心等领域一直是高端直是高端RISCRISC服务器的天下,用户只能选择服务器的天下,用户只能选择IBMIBM、SGISGI、SUNSUN、HPHP等公司的产品,不但价格等公司的产品,不但价格昂贵,而且运行、维护成本高。
昂贵,而且运行、维护成本高。
随着随着InternetInternet服务和电子商务的迅速发展,服务和电子商务的迅速发展,计算机系统的重要性日益上升,对服务器可伸计算机系统的重要性日益上升,对服务器可伸缩性和高可用性的要求也变得越来越高。
缩性和高可用性的要求也变得越来越高。
RISCRISC系统高昂的代价和社会旺盛的需求形成强烈的系统高昂的代价和社会旺盛的需求形成强烈的反差。
反差。
集群技术的出现和集群技术的出现和IAIA架构服务器的快速发架构服务器的快速发展为社会的需求提供了新的选择。
它价格低廉,展为社会的需求提供了新的选择。
它价格低廉,易于使用和维护,而且采用集群技术可以构造易于使用和维护,而且采用集群技术可以构造超级计算机,其超强的处理能力可以取代价格超级计算机,其超强的处理能力可以取代价格昂贵的中大型机,为行业的高端应用开辟了新昂贵的中大型机,为行业的高端应用开辟了新的方向。
的方向。
集群技术是一种相对较新的技术,通过集集群技术是一种相对较新的技术,通过集群技术,可以在付出较低成本的情况下获得在群技术,可以在付出较低成本的情况下获得在性能、可靠性、灵活性方面的相对较高的收益。
性能、可靠性、灵活性方面的相对较高的收益。
目前,在世界各地正在运行的超级计算机目前,在世界各地正在运行的超级计算机中,有许多都是采用集群技术来实现的。
中,有许多都是采用集群技术来实现的。
集群是由一些互相连接在一起的计算机构集群是由一些互相连接在一起的计算机构成的一个并行或分布式系统。
这些计算机一起成的一个并行或分布式系统。
这些计算机一起工作并运行一系列共同的应用程序,同时,为工作并运行一系列共同的应用程序,同时,为用户和应用程序提供单一的系统映射。
从外部用户和应用程序提供单一的系统映射。
从外部来看,它们仅仅是一个系统,对外提供统一的来看,它们仅仅是一个系统,对外提供统一的服务。
集群内的计算机物理上通过电缆连接,服务。
集群内的计算机物理上通过电缆连接,程序上则通过集群软件连接。
这些连接允许计程序上则通过集群软件连接。
这些连接允许计算机使用故障应急与负载平衡功能,而故障应算机使用故障应急与负载平衡功能,而故障应急与负载平衡功能在单机上是不可能实现的。
急与负载平衡功能在单机上是不可能实现的。
服务器集群系统通俗地讲就是把多台服务器通过快速通信链路连接起来,从外部看来,这些服务器就像一台服务器在工作,而对内来说,外面来的负载通过一定的机制动态地分配到这些节点机中去,从而达到超级服务器才有的高性能、高可用。
集群的优点集群的优点nn高可伸缩性:
高可伸缩性:
服务器集群具有很强的可伸缩性。
服务器集群具有很强的可伸缩性。
随着需求和负荷的增长,可以向集群系统添加更随着需求和负荷的增长,可以向集群系统添加更多的服务器。
多的服务器。
在在这样这样的配置中,可以有多台服的配置中,可以有多台服务务器器执执行行相同相同的的应应用和数据用和数据库库操作。
操作。
nn高可用性:
高可用性:
高可用性是指,在不需要操作者干高可用性是指,在不需要操作者干预预的情况下,防止的情况下,防止系统发生系统发生故障或从故障中故障或从故障中自动自动恢恢复的复的能力能力。
通过把故障服务器上的应用程序转移通过把故障服务器上的应用程序转移到备份服务器上运行,集群系统能够把正常运行到备份服务器上运行,集群系统能够把正常运行时间提高到大于时间提高到大于99.9%99.9%,大大减少服务器和应用,大大减少服务器和应用程序的停机时间。
程序的停机时间。
nn高可管理性:
高可管理性:
系统管理员可以从远程管理一个、系统管理员可以从远程管理一个、甚至一组集群,就好象在单机系统中一样。
甚至一组集群,就好象在单机系统中一样。
集群与管理集群与管理构构建建集集群群系系统统必必须须包包含含对对系系统统及及网网络络管管理理的的两两方方面面的的考考虑虑。
服服务务器器集集群群十十分分复复杂杂,而而复复杂杂的的技技术术又又往往往往会会引引入入许许多多人人为为的的错错误误,因因此此系系统统应应有有网网络络资资源源管管理理、系系统统监监测测管管理理,并并具具有有可可以以简简化管理化管理过过程的工具。
程的工具。
如如果果仅仅仅仅把把集集群群视视为为单单一一系系统统或或把把它它视视为为分分立立的的服服务务器器,那那么么这这种种管管理理软软件件是是不不能能胜胜任任集集群群管管理理工工作作的的。
当当我我们们观观察察集集群群上上运运行行的的一一个个应应用用程程序序时时,需需要要站站在在单单一一系系统统角角度度;当当我我们们试试图图区区分分、定定位位一一个个出出错错部部件件时时,又又需需要要站站在在分分立立服服务务器器角角度度。
如如果果管管理理系系统统不不能能提提供供必必需需的的监监测测及及管管理理能能力力,那那么么该该集集群群是是不不能能在在重重要要的的应应用用环环境境中中投入使用的。
投入使用的。
集群与成本集群与成本并不是所有的服务器都需要采用系统级的冗余。
因此,我们需要对比一下是系统发生故障所造成的损失大,还是购买及管理一个集群系统的费用高,从中找出一个较好的选择。
为什么采用集群技术?
对于信息化时代的高等院校来讲,数据中心的建立对于信息化时代的高等院校来讲,数据中心的建立是非常必要的(对于某些大学来讲,建立高性能计算中是非常必要的(对于某些大学来讲,建立高性能计算中心也是非常重要的)。
那么,我们到底需要什么样的服心也是非常重要的)。
那么,我们到底需要什么样的服务器才能满足目前和未来发展的需要呢?
务器才能满足目前和未来发展的需要呢?
首先要有超强的计算能力,可以承受长时间、大量首先要有超强的计算能力,可以承受长时间、大量用户的并发访问。
用户的并发访问。
其次,服务器系统的高可用性、易用性和易管理性其次,服务器系统的高可用性、易用性和易管理性对于用户也是极为重要的,如果系统出现故障,造成服对于用户也是极为重要的,如果系统出现故障,造成服务中断或者重要资料丢失,会给学校造成重大的损失。
务中断或者重要资料丢失,会给学校造成重大的损失。
第三,随着业务的增加、访问量的提高和数据的不第三,随着业务的增加、访问量的提高和数据的不断堆积,系统会变得越来越慢,所以硬件设备的更新换断堆积,系统会变得越来越慢,所以硬件设备的更新换代是一个必不可少的工作。
代是一个必不可少的工作。
从以上三点出发,可以考虑采用集群技术来实现。
从以上三点出发,可以考虑采用集群技术来实现。
采用集群技术的好处1111、提提提提高高高高性性性性能能能能:
一一些些计计算算密密集集型型应应用用,需需要要计计算算机机要要有有很很强强的的运运算算处处理理能能力力。
这这时时,可可以以采采用用计算机集群技术来满足计算要求。
计算机集群技术来满足计算要求。
2222、降降降降低低低低成成成成本本本本:
在在达达到到同同等等性性能能的的条条件件下下,采采用用计计算算机机集集群群比比采采用用同同等等能能力力的的计计算算机机所所花花的的代代价要小很多。
价要小很多。
3333、提提提提高高高高扩扩扩扩展展展展性性性性:
采采用用传传统统服服务务器器的的用用户户如如果果需需要要大大幅幅度度扩扩展展系系统统的的能能力力,就就必必须须购购买买昂昂贵贵的的最最新新的的服服务务器器。
如如果果该该服服务务系系统统采采用用集集群群技技术术,则只需要将新的服务器加入集群中即可。
则只需要将新的服务器加入集群中即可。
4444、增增增增强强强强可可可可靠靠靠靠性性性性:
集集群群技技术术可可以以使使系系统统在在故故障障发发生生时时仍仍继继续续工工作作,将将系系统统停停运运时时间间减减到到最最小小,大大提高了系统的可靠性。
大大提高了系统的可靠性。
集群的类型集群的类型集群系集群系统统(ClusterCluster),有),有时时也称也称为为机群机群或群集系或群集系统统。
集群技集群技术术本身有很多种分本身有很多种分类类,市,市场场上的上的产产品很多,也没有很品很多,也没有很标标准的定准的定义义,较为较为常常见见的主的主要分要分为为三种三种类类型。
型。
nn高可用性集群高可用性集群(HighHighAvailabilityAvailabilityAvailabilityAvailabilityCluster)Cluster)/容容错错集群集群(Fail-overCluster)Fail-overCluster)nn负载负载均衡集群均衡集群(LoadbalancingCluster)LoadbalancingCluster)nn高性能高性能计计算集群算集群(HighPerformanceHighPerformanceComputingCluster)ComputingCluster)高可用性集群高可用性集群当当集集群群中中的的一一个个系系统统发发生生故故障障时时,集集群群软软件件迅迅速速做做出出反反应应,将将该该系系统统的的任任务务切切换换到到集集群群中其它正在工作的系统上执行。
中其它正在工作的系统上执行。
考考虑虑到到计计算算机机硬硬件件和和软软件件的的易易错错性性,高高可可用用性性集集群群的的目目的的主主要要是是为为了了使使集集群群的的整整体体服服务务尽尽可可能能可可用用。
如如果果高高可可用用性性集集群群中中的的主主节节点点发发生生了了故故障障,那那么么这这段段时时间间内内将将由由次次节节点点代代替替它它。
次次节节点点通通常常是是主主节节点点的的镜镜像像,所所以以当当它它代代替替主主节点时,它可以完全接管其身份。
节点时,它可以完全接管其身份。
高可用性高可用性(HA)HA)集群致力于使服集群致力于使服务务器系器系统统的的运行速度和响运行速度和响应应速度尽可能快。
它速度尽可能快。
它们们通常利用通常利用在多台机器上运行的冗余在多台机器上运行的冗余节节点和服点和服务进务进行相互行相互跟踪。
如果某个跟踪。
如果某个节节点失点失败败,它的替,它的替补补将在几秒将在几秒钟钟或更短或更短时间时间内接管它的内接管它的职责职责。
因此,。
因此,对对于用于用户户而言,群集永而言,群集永远远不会停机。
不会停机。
有些有些HAHA集群集群还还可以可以实现节实现节点点间间冗余冗余应应用程用程序。
即使用序。
即使用户户使用的使用的节节点出了故障,他所打开点出了故障,他所打开的的应应用程序仍将用程序仍将继续继续运行,运行,该该程序会在几秒之程序会在几秒之内迁移到另一个内迁移到另一个节节点,而用点,而用户户只会感只会感觉觉到响到响应应稍微慢了一点。
但是,稍微慢了一点。
但是,这这种种应应用程序用程序级级冗余要冗余要求将求将软软件件设计设计成具有集群意成具有集群意识识的,并且知道的,并且知道节节点失点失败时应该败时应该做什么。
做什么。
高可用性集群拓扑结构高可用性集群拓扑结构有两种典型的拓扑结构可以实现高可用性:
主从服务器和活动第二服务器。
主从服主从服务器器通常把一个服通常把一个服务务器安器安排排为为“主主”服服务务器,一个服器,一个服务务器器为为“第二第二”服服务务器;由主服器;由主服务务器器为为用用户户提供服提供服务务,第,第二服二服务务器除了在主服器除了在主服务务器器出出错时错时接管工作外,没有接管工作外,没有其它用其它用处处。
两台服务器通过两台服务器通过一种被称一种被称为为“心跳心跳”(heartbeatheartbeat)的机的机制制进行连接,用于监控主服务器的状态,一旦发现主服务进行连接,用于监控主服务器的状态,一旦发现主服务器宕机或出现不能正常工作的情况,心跳会通知第二服务器宕机或出现不能正常工作的情况,心跳会通知第二服务器,接替出问题的主服务器。
器,接替出问题的主服务器。
“心跳心跳”可以通可以通过过专用专用