AI智能
改变未来

高可用集群概念及工作原理详解

高可用集群到底是个啥?工作原理又是怎样的?下面将和大家说说。建议收藏或者分享了再慢慢看,不然刷着刷着又不见了。但是答应我不要让文章在收藏夹吃灰好吗?

1、什么是高可用集群?

所谓高可用集群(High Availability Cluster,简称HA Cluster),即当前服务器出现故障时,可以将该服务器中的服务、资源、IP等转移到另外一台服务器上,从而满足业务的持续性;这两台或多台服务器构成了服务器高可用集群。

简单地说就是保证服务不间断地运行,比如淘宝网24小时都可以买买买,微信随时可以发消息斗图。

 

2、高可用集群的衡量标准

要保证集群服务100%时间完全可用,几乎是不可能的。举个栗子,淘宝是互联网巨佬了吧?但这几年双十一刚开抢的时候,一下子涌进淘宝买东西的人很多,访问量大,都出现了一些问题,比如下单后却支付不了(双十一的优衣库是我永远的痛,几年了我就没成功下过单)。所以说只能保证服务尽可能地可用,当然有些场景相信还是可能做到100%可用的。

具体的HA衡量标准可以看下面这张表:

 

3、高可用集群部分名词解释

(1)集群节点

集群存在所有主机都称为节点,每个HA集群最低要求需有2个节点;正常来说,节点数最好为奇数。在生产环境中,HA集群的节点数至少为3个,可以降低发生脑裂的概率。

(2)集群服务与资源

集群服务通常包括多个资源,多个资源组成某种集群服务。如mysql高可用服务,其资源包括vip、mysqld、共享存储等。资源是启动一个服务需要的子项目。例如启动一个httpd服务,需要ip,也需要服务脚本,还需要文件系统(用来存储数据的),这些我们都可以统称为资源。对于集群服务的管理,实际上就是对资源的管理。

 

(3)脑裂

脑裂是指因某种特殊原因造成集群分裂成两个小集群,而这两个小集群互相不能正常通信,此时,就会发生脑裂(Brain Split)现象。

(4)共享存储

高可用集群多节点都需要访问数据,如果各节点访问同一个数据文件都是在同一个存储空间内的,就是说数据共享的就一份,而这个存储空间就共享存储。如Web或Mysql高可用集群,他们的数据一般需要放在共享存储中,主节点能访问,从节点也能访问。

4、实现高可用集群的三种方式

(1)主从方式(非对称)

这种方式组建的高可用集群通常包含2个节点和一个或多个服务器,其中一台作为主节点(active),另一台作为备份节点(standy)。备份节点随时都在检测主节点的健康状况,当主节点发生故障时,服务会自动切换到备份节点上以保证服务正常运行。

这种方式下的高可用集群其中的备份节点平时不会启动服务,只有发生故障时才会有用,因此会造成一定浪费。

 

(2)对称方式

这种方式一般包含2个节点和一个或多个服务,其中每一个节点都运行着不同的服务且相互作为备份,两个节点互相检测对方的健康状况,这样当其中一个节点发生故障时,该节点上的服务会自动切换到另一个节点上去。这样可以保证服务正常运行。

(3)多机方式

这种集群包含多个节点和多个服务。每一个节点都可能运行和不运行服务,每台服务器都监视着几个指定的服务,当其中的一个节点发生故障时,会自动切换到这组服务器中的一个节点上去。

5、高可用集群的逻辑架构

 

6、高可用集群软件介绍

随着技术的发展,市面上的高可用集群软件越来越多。在国外做得比较好的有RoseHA,在国内也有不少,其中又以中兴新支点Newstart HA最成熟、最具代表性。

 

据了解,NewStart HA可实现数据实时同步 (RPO=0) ,切换时间为秒级 (RTO<min) ,为容灾标准的最高级别产品;还可以自动监控服务器、网卡、浮动 IP 、存储和业务,生产中心失效可以自动切换到灾备中心。此外安装部署简单,安全可靠,提供电信级,高达 99.999% 的高可用性。可以说,国内的高可用集群软件也已经具备不错的水平。

好了,文章篇幅有限,先讲这么多啦!后面还会继续更新更多的技术文章,敬请留意啦~

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » 高可用集群概念及工作原理详解