集群Cluster介绍

Posted 代码如诗

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了集群Cluster介绍相关的知识,希望对你有一定的参考价值。

来源:http://www.ibm.com/developerworks/cn/linux/cluster/lw-clustering.html
简单的说,集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源。这些单个的计算机系统就是集群的节点(node)。一个理想的集群是,用户从来不会意识到集群系统底层的节点,在他/她们看来,集群是一个系统,而非多个计算机系统。并且集群系统的管理员可以随意增加和删改集群系统的节点。
集群并不是一个全新的概念,其实早在七十年代计算机厂商和研究机构就开始了对集群系统的研究和开发。由于主要用于科学工程计算,所以这些系统并不为大家所熟知。直到Linux集群的出现,集群的概念才得以广为传播。集群系统主要分为高可用(High Availability)集群,简称 HA 集群,和高性能计算(High Perfermance Computing)集群,简称 HPC 集群。
集群系统(Cluster)主要解决下面几个问题:
   1. 高可靠性(HA)。利用集群管理软件,当主服务器故障时,备份服务器能够自动接管主服务器的工作,并及时切换过去,以实现对用户的不间断服务。
   2. 高性能计算(HP)。即充分利用集群中的每一台计算机的资源,实现复杂运算的并行处理,通常用于科学计算领域,比如基因分析,化学分析等。
   3. 负载平衡。即把负载压力根据某种算法合理分配到集群中的每一台计算机上,以减轻主服务器的压力,降低对主服务器的硬件和软件要求。
科学群集
通常,第一种涉及为群集开发并行编程应用程序,以解决复杂的科学问题。这是并行计算的基础,尽管它不使用专门的并行超级计算机,这种超级计算机内部由十至上万个独立处理器组成。但它却使用商业系统,如通过高速连接来链接的一组单处理器或双处理器 PC,并且在公共消息传递层上进行通信以运行并行应用程序。因此,您会常常听说又有一种便宜的 Linux 超级计算机问世了。但它实际是一个计算机群集,其处理能力与真的超级计算机相等,通常一套象样的群集配置开销要超过 $100,000。这对一般人来说似乎是太贵了,但与价值上百万美元的专用超级计算机相比还算是便宜的。
负载均衡群集
负载均衡群集为企业需求提供了更实用的系统。如名称所暗示的,该系统使负载可以在计算机群集中尽可能平均地分摊处理。该负载可能是需要均衡的应用程序处理负载或网络流量负载。这样的系统非常适合于运行同一组应用程序的大量用户。每个节点都可以处理一部分负载,并且可以在节点之间动态分配负载,以实现平衡。对于网络流量也是如此。通常,网络服务器应用程序接受了太多入网流量,以致无法迅速处理,这就需要将流量发送给在其它节点上运行的网络服务器应用。还可以根据每个节点上不同的可用资源或网络的特殊环境来进行优化。
高可用性群集
高可用性群集的出现是为了使群集的整体服务尽可能可用,以便考虑计算硬件和软件的易错性。如果高可用性群集中的主节点发生了故障,那么这段时间内将由次节点代替它。次节点通常是主节点的镜像,所以当它代替主节点时,它可以完全接管其身份,并且因此使系统环境对于用户是一致的。
在群集的这三种基本类型之间,经常会发生混合与交杂。于是,可以发现高可用性群集也可以在其节点之间均衡用户负载,同时仍试图维持高可用性程度。同样,可以从要编入应用程序的群集中找到一个并行群集,它可以在节点之间执行负载均衡。尽管集群系统本身独立于它在使用的软件或硬件,但要有效运行系统时,硬件连接将起关键作用。
Microsoft Windows 2003集群介绍
    服务器群集是一组协同工作并运行Microsoft群集服务(Microsoft Cluster Service,MSCS)的独立服务器。服务器群集为资源和应用程序提供高可用性、故障恢复、可伸缩性和可管理性。
    服务器群集允许客户端在出现故障和计划中的暂停时,依然能够访问应用程序和资源。如果群集中的某一台服务器由于故障或维护需要而无法使用,资源和应用程序将转移到可用的群集节点上。
    Windows群集(Windows Clustering)解决方案使用了名词“高可用性”而非“容错”。容错技术提供更高层次的弹性和恢复能力。容错服务器通常使用深层硬件冗余,加上专门的软件,几乎可以即时地恢复任何单一的硬件或软件错误。这些解决方案要比Windows群集(Windows Clustering)解决方案昂贵得多,因为组织必须为处于空闲状态等待错误的冗余硬件支付费用。
    服务器群集无法保证无间断运作,但是确实能够为多数关键任务应用程序提供足够的可用性。群集服务可以对应用程序和资源进行监控,并能够自动识别和恢复众多故障状况。这为在群集中管理工作负荷提供了灵活性。另外,还提高了整个系统的可用性。
群集服务(Cluster service)的优点包括:
    • 高可用性:通过服务器群集,资源(例如:磁盘驱动器和Internet协议(IP)地址)的所有权会自动从故障服务器转移到可用的服务器。当群集中的某个系统或应用程序发生故障时,群集软件会在可用的服务器上重新启动故障应用程序,或者将工作从故障节点分散到剩下的节点上。由此,用户只在瞬间感觉到服务的暂停。
    • 故障恢复:当故障服务器重新回到其预定的首选所有者的联机状态时,群集服务将自动在群集中重新分配工作负荷。该特性可配置,但默认禁用。
    • 可管理性:您可以使用“群集管理器”工具(CluAdmin.exe),将群集作为一个单一的系统进行管理,并对犹如运行于一个单一服务器的应用程序实施管理。您可以将应用程序转移到群集中的其它服务器。“群集管理器”可用于手动平衡服务器的工作负荷,并针对计划维护释放服务器。您还可以监控群集的状态、所有节点以及来自网络任何地方的资源。
    • 可伸缩性:群集服务可扩展以满足需求的增长。当群集监督应用程序的总体负荷超出了群集的能力范围时,可以添加附加的节点。 

以上是关于集群Cluster介绍的主要内容,如果未能解决你的问题,请参考以下文章

redis集群介绍与搭建(主从哨兵cluster集群)!

redis集群介绍与搭建(主从哨兵cluster集群)!

mariadb gelera cluster集群参数介绍

Redis Cluster集群搭建Cluster集群扩缩容底层原理

mysql 8.0.11 innodb cluster 高可用集群手册系列之一 ------集群介绍

Redis高可用架构之Cluster集群和分⽚