集群软件都有哪些_cpu集群

集群软件都有哪些_cpu集群TableofContents一、集群简介二、集群的七大优点三、集群的分类四、常用的集群软硬件及选型介绍一、集群简介集群就是一组(若干个)相互独立的计算机,利用高速通信网络组成的一个较大的计算机服务系统,每个集群节点(即集群中的每台计算机)都是运行各自服务的独立服务器。这些服务器之间可以彼此通信,协同向用户提供应用程序、系统资源和数据。二、集群的七大…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

Table of Contents

 

一、集群简介

二、集群的七大优点

三、集群的分类

四、常用的集群软硬件及选型介绍


一、集群简介

     集群就是一组(若干个)相互独立的计算机,利用高速通信网络组成的一个较大的计算机服务系统,每个集群节点(即集群中的每台计算机)都是运行各自服务的独立服务器。这些服务器之间可以彼此通信,协同向用户提供应用程序、系统资源和数据。

二、集群的七大优点

1、高性能

    我们大家都知道淘宝的双11,双11的零点,用户并发量相当恐怖,以全世界现有的技术,即使是大型机,其计算能力也是有限的,很难单独处理完双11零点的用户并发,还可能因为,并发量太大,造成计算机宕机,因此对于这类复杂的计算业务,便需要使用计算机集群技术。集中成千上万台计算机进行处理。

2、价格有效性

    达到同样的性能需求的条件下,计算机集群架构比采用同等运算能力的大型计算机具有更高的性价比

    举例:早期的淘宝、支付宝数据库等核心系统就是使用上百万元的小型机服务器,后面因为维护成本太高,扩展设备费用成几何级数翻倍,就采用了PC服务器集群替换,把数据库从小机和oracle结合迁移到了MySQL开源数据库与PC服务器结合上来。成本下降了,扩展和维护也容易许多。

3、可伸缩性

    当服务负载、压力增长时,针对集群系统进行较简单的扩展即可满足需求,且不会降低服务质量。

4、高可用性

    单一的计算机系统总会面临设备损毁的问题,而在集群系统中,尽管部分硬件和软件也还是会发生故障,但整个系统的服务还是可以实现7*24可用的。

5、透明性

    多个独立计算机组成的松耦合集群系统构成一个虚拟的服务器,客户端访问集群系统时,就像访问一台高性能、高可用的服务器一样,集群中一部分服务器的上线和下线不会中断整个系统服务,这对用户也是透明的。

6、可管理性

    整个系统可能再物理上很大,但其实管理很容易

7、可编程性

    容易开发及修改各类应用程序

三、集群的分类

    计算机集群按功能和结构可以分为以下几类:

1、负载均衡集群(Load balancing cluters)

    负载均衡集群为企业提供了更为实用、性价比更高的系统架构解决方案。负载均衡集群可以把很多客户集中的访问请求负载压力尽可能平均的分摊在计算机集群中进行处理。每个节点都可以承担一定的访问请求负载压力,并且可以实现访问请求在各节点之间的动态分配,以实现负载均衡。

   负载均衡集群运行时,一般是通过一个或多个前端负载均衡器将客户请求分发到后端的一组服务器上,从而达到整个系统的高可用和高性能。

   负载均衡集群的作用:

                                       (1)分担用户访问请求及数据流量(负载均衡)

                                       (2)保持业务的连续性,即7*24小时的服务(高可用)

                                       (3)应用于Web业务及数据库从库等服务器的业务

下图便为负载均衡集群的图解:

集群软件都有哪些_cpu集群

负载均衡集群的典型的开源软件包括LVS、Nginx、Haproxy等,这些都可以充当上图的负载均衡器

2、高可用集群(High-availablility clusters)

    一般是指在集群中任意一个节点失效的情况下,该节点上的所有任务会自动转移到其他正常节点上,此过程不影响整个集群的运行。

    当集群中的一个节点故障之后,运行的集群系统会马上作出反应,将该系统的服务分配到集群中其他正在工作的系统上运行,高可用集群的主要的目的是使集群整体尽可能的可用。如果高可用集群中的主节点发生了故障,那么这段时间将由备用节点代替它,备节点通常是主节点的镜像,它可以完全接管主节点(包括IP地址及其他资源)提供服务,因此这对于用户是无感的,不会影响用户的访问。

    高可用集群的作用:

                                    (1)当一台机器宕机时,另外一台机器接管宕机的机器的IP资源和服务资源,提供服务。

                                    (2)常用于不易实现负载均衡的应用,比如负载均衡器,主数据库,主存储对之间。

下图便是实现了高可用的负载均衡集群,并且做了动静分离的:

集群软件都有哪些_cpu集群

高可用集群常用的开源软件包括keepalived,heartbeat等。

3、高性能计算集群(High-performance clusters)

也称并行计算。高性能集群对外就好比一个超级计算机,内部由数十上万个独立服务器组成。把任务分成多个小任务,发到集群节点进行计算,计算后返回结果,继续领新任务进行计算,如此往复。

4、网格计算集群(Grid computing)

不常用,略。

四、常用的集群软硬件及选型介绍

1、常用的集群软硬件

软件:Nginx、LVS、Haproxy、Keepalived、Heartbeat

硬件:F5、Netscaler、Radware、A10等,工作模式相当于Haproxy。

2、选型

(1)企业业务重要时,技术力量薄弱,可选择硬件负载均衡产品,此类公司多为传统的大型非互联网企业,如:银行、证券、金融业、宝马及奔驰公司等。

(2)对于门户网站来说:大多会并用软硬件来分担单一产品的风险,如:淘宝、腾讯、新浪等。

(3)中小型互联网企业,会使用开源免费的方案来解决问题,因此会雇佣专门的运维人员进行维护。如:51CTO等。

目前的互联网行业更倾向于使用开源免费的负载均衡软件

3、如何选择开源集群软件产品

    网站并发量和总访问量不是很大建议选用Nginx负载均衡,另外一个实现负载均衡的类似产品为Haproxy(支持L4和L7负载,同样优秀,但社区不如Nginx活跃)。

    如果要考虑Nginx的负载均衡的高可用功能,建议首选Keepalived软件。

 

如果是大型企业互联网公司,负载均衡产品可以使用LVS+Keepalived在前端做四层转发(一般是主备或主主,如果需要扩展可以使用DNS或前端使用OSPF),后端使用Nginx或者Haproxy做七层转发,再后面是应用服务器。

如果是数据库与存储的负载均衡和高可用,建议选择LVS+Heartbeat,LVS支持TCP转发且DR模式效率很高,Heartbeat可以配合drbd,不但可以进行VIP切换,还可以支持块设备级别的数据同步(drbd),以及资源服务管理。

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/181719.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • java StringBuffer和StringBuilder

    java StringBuffer和StringBuilder一、前言我们在实际的开发中,如果需要进行字符串的频繁拼接,会出现以下问题:java中的字符串是不可变的,每一次拼接都会产生新字符串。这样会占用大量的方法区内存。造成内存空间的浪费。eg.Strings=”abc”;s+=”hello”;就以上两行代码,就导致在方法区字符串常量池当中创建了3个对象:”abc””hello””abchello”因此引出StringBuffer和StringBuilder可变字符串!二、如何优化StringBuffer和StringBuild

  • php连接ldap服务器,使用PHP连接LDAP服务器[通俗易懂]

    php连接ldap服务器,使用PHP连接LDAP服务器[通俗易懂]LDAP是一个用来发布目录信息到许多不同资源的协议。通常它都作为一个集中的地址本使用。LDAP最基本的形式是一个连接数据库的标准方式。该数据库为读查询作了优化。因此它可以很快地得到查询结果,不过在其它方面,例如更新,就慢得多。要特别注意的是,LDAP通常作为一个hierarchal数据库使用,而不是一个关系数据库。因此,它的结构用树来表示比用表格好。正因为这样,就不能用SQL语句了。简单说来,LD…

  • c语言 银行家算法(完整代码实现)

    c语言 银行家算法(完整代码实现)银行家算法例子:T0时刻进程P1提出需要(1、0、2)个资源的请求T0时刻进程P4提出需要(3、3、0)个资源的请求T0时刻进程P0提出需要(0、2、0)个资源的请求全局变量:intMax[5][3]={7,5,3,3,2,2,9,0,2,2,2,2,4,3,3};//五个进程对各种资源的最大需求intAllocation[5][3]={0,1,0,2,0,0,3,0,2,2,1,1,0,0,2};//五个进程已分配的各种资源数目intNeed[5][3]={7,4,3

  • Java审计之命令执行篇

    Java审计之命令执行篇0x00前言在Java中能执行命令的类其实并不多,不像php那样各种的命令执行函数。在Java中目前所知的能执行命令的类也就两种,分别是Runtime和ProcessB

    2021年12月12日
  • [推荐]动态加载类(在程序中调用DLL文件)

    [推荐]动态加载类(在程序中调用DLL文件)

  • charles(2)MAC Charles关闭后无法上网「建议收藏」

    charles(2)MAC Charles关闭后无法上网「建议收藏」前言charles关闭后,发现网页突然打开了,那大概率是设置了代理,但明明已经关闭了charles,这是由于mac网络偏好设置中,使用的是手动代理,将其改为自动即可解决方法1打开网络偏好设置,

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号