服务器集群:将很多服务器集中起来一起进行同一种服务,在客户端看来就像是只有一个服务器。集群可以利用多个计算机进行并行计算从而获得很高的计算速度,也可以用多个计算机做备份,从而使得任何一个机器坏了整个系统还是能正常运行。

服务器集群(松耦合结构)系统优点:

  1. 性能:网络服务的工作负载通常是大量相互独立的任务,通过一组服务器分而治之,可以获得很高的整体性能。
  2. 性能/价格比:组成集群系统的PC服务器或RISC服务器和标准网络设备因为大规模生产降低成本,价格低,具有最高的性能/价格比。若整体性能随着结点数的增长而接近线性增加,该系统的性能/价格比接近于PC服务器。所以,这种松耦合结构比紧耦合的多处理器系统具有更好的性能/价格比。
  3. 可伸缩性:集群系统中的结点数目可以增长到几千个,乃至上万个,其伸缩性远超过单台超级计算机。
  4. 高可用性:在硬件和软件上都有冗余,通过检测软硬件的故障,将故障屏蔽,由存活结点提供服务,可实现高可用性

服务器集群主要分类:

  • 负载均衡集群(Loadbalancing clusters)简称LBC
  • 负载均衡集群是由两台或者两台以上的服务器组成。
  • 分为前端负载调度和后端服务两个部分。负载调度部分负载把客户端的请求按照不同的策略分配给后端服务节点,而后端节点是真正提供应用程序服务的部分。与HAC不同的是,负载均衡集群中,所有的后端节点都处于活动动态,它们都对外提供服务,分摊系统的工作负载。
  • 负载均衡集群可以把一个高负荷的应用分散到多个节点共同完成,适用于业务繁忙、大负荷访问的应用系统。但是它也有不足的地方;当一个节点出现故障时,前端调度系统并不知道此节点已经不能提供服务,仍然会把客户端的请求调度到故障节点上来,这样访问会失败。为了解决这个问题,负载调度系统一般都引入了节点监控系统。
  • 节点监控系统位于前端负载调度机上,负责监控下面的服务节点。当某个节点出现故障后,节点监控系统会自动将故障节点从集群中剔除;当此节点恢复正常后,节点监控系统又会自动将其加入集群中,而这一切,对用户来说是完全透明。
  • 负载均衡分类:硬件和软件(软件根据OSI七层参考模型,通常分为四层和七层负载均衡软件):
  • 硬件:F5
  • 软件:LVS(四层负载);Nginx(七层负载);Haproxy(四层或七层负载)
  • 监控软件: ldirectord(是一个守护程序,用于监视和管理负载平衡虚拟服务器的LVS群集中的真实 服务器)
  • 高可用性集群(High-availability clusters)简称HAC
  • 高可用性集群一般都由两台或者两台以上的服务器组成。
  • 高可用的含义是最高限度地可以使用。高可用性型集群通过消除单点故障提供高可用性服务,并在一个节点停止运作时将服务从一个集群节点切换到另外一个节点,此类集群实现的功能是保障用户的应用程序持久、不间断地提供服务。
  • 常说的双机热备、双机互备等都属于高可用集群的范畴:
  • 【双机热备】是最简单的应用模式,即经常说的active/standby方式。它使用两台服务器,一台作为主服务器,运行应用程序对外提供服务;另一台作为备机,安装和主服务器一样的应用程序,但是并不启动服务,处于待机状态。主机和备机之间通过心跳技术互相检查,监控的资源可以是网络、操作系统,也可以是服务,用户可以根据自己的需要,选择需要监控的资源。当备份监控到主机的某个资源出现故障时,根据预先设定好的策略,首先将IP切换过来,然后将应用程序服务也接过过来,接着由备机对外提供服务。切换过程时间非常短,用户根本感觉不到程序出了问题,而且还进行了切换,从而保障了应用程序持久、不间断地服务。
  • 【双击互备】是在双机热备的基础上,两个相互独立的应用在两个机器上同时运行,互为主备,即两台服务器是主机也是备机。当任何一个应用出现故障,另一台服务器都能在短时间内将故障机器的应用接过过来,从而保障了服务的持续、无间断运行。双机互备的好处是节省了设备资源,两个应用的双机热备至少需要4台服务器,而双机互备仅需要两台服务器即可完成高可用集群功能。但双机互备也有自身的缺点:在某个节点故障切换后,另一个节点上同时运行了两个应用的服务,有可能出现负载过大的情况。多机互备是双机热备的技术升级,通过多台及其组成一个集群,可以在多台机器之间设置灵活地接管策略。
  • 高可用集群一般是通过高可用软件来实现的。在Linux下常用的高可用软件有Hearbeat,RHCS,keepalived。
  • 高性能计算集群(High-perfomance clusters)简称HPC
  • 高性能计算集群,致力于提供单个计算机所不能提供的强大计算能力,包括数值计算和数据处理,并且倾向于追求综合性能。HPG与超级计算类似,但是又有不同,计算速度是超级计算追求的目标。的速度、的存储、最庞大的体积、最昂贵的价格代表了超级计算的特点。随着人们对计算速度需求的提高,超级计算也应用到各个领域,对超级计算追求单一计算速度指标转变为追求高性能的综合指标,即高性能计算。