技术
成就梦想!

Linux部署Keepalived高可用软件

一、keepalived介绍

keepalived观察其名可知,保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,它集群管理中保证集群高可用的一个服务软件,其功能类似于heartbeat,用来防止单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发生。

二、keepalived工作原理

keepalived可提供vrrp以及health-check功能,可以只用它提供双机浮动的vip(vrrp虚拟路由功能),这样可以简单实现一个双机热备高可用功能;keepalived是以VRRP虚拟路由冗余协议为基础实现高可用的,可以认为是实现路由器高可用的协议,即将N台提供相同功能的路由器组成一个路由器组,这个组里面有一个master和多个backup,master上面有一个对外提供服务的vip(该路由器所在局域网内其他机器的默认路由为该vip),master会发组播,当backup收不到VRRP包时就认为master宕掉了,这时就需要根据VRRP的优先级来选举一个backup当master。这样的话就可以保证路由器的高可用了。

三、keepalived与Heartbeat高可用软件对比

1)Keepalived使用更简单:从安装、配置、使用、维护等角度上对比,Keepalived都比Heartbeat要简单得多,尤其是Heartbeat2.1.4后拆分成3个子项目,安装、配置、使用都比较复杂,尤其是出问题的时候,都不知道具体是哪个子系统出问题了;而Keepalived只有1个安装文件、1个配置文件,配置文件也简单很多;
2)Heartbeat功能更强大:Heartbeat虽然复杂,但功能更强大,配套工具更全,适合做大型集群管理,而Keepalived主要用于集群倒换,基本没有管理功能;
3)协议不同:Keepalived使用VRRP协议进行通信和选举,Heartbeat使用心跳进行通信和选举;Heartbeat除了走网络外,还可以通过串口通信,貌似更可靠;
Keepalived使用的vrrp协议方式,虚拟路由冗余协议 ;Heartbeat是基于主机或网络的服务的高可用方式;
Keepalived的目的是模拟路由器的双机;Heartbeat的目的是用户service的双机
4)使用方式基本类似:如果要基于两者设计高可用方案,最终都要根据业务需要写自定义的脚本,Keepalived的脚本没有任何约束,随便怎么写都可以;Heartbeat的脚本有约束,即要支持service start/stop/restart这种方式,而且Heartbeart提供了很多默认脚本,简单的绑定ip,启动apache等操作都已经有了;

使用建议:
优先使用Keepalived,当Keepalived不够用的时候才选择Heartbeat
lvs的高可用建议用Keepavlived
业务的高可用用Heartbeat

四、keepalived部署

下面的配置教程仅仅部署keepalived,如何还需要其他高可用工具后续继续部署。
部署环境
Linux版本:
[root@linux01 ~]# uname -r
3.10.0-957.el7.x86_64
[root@linux01 ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

双节点集群IP地址信息:
节点01:keep_01 172.16.0.211
节点02:keep_02 172.16.0.212
虚拟IP:172.16.0.210

1、下载并编译安装

2、注册为系统服务

3、编辑keepalived配置文件

仅修改后面带注释的参数即可

配置文件修改好后通scp命令将配置文件复制到备服务器上,备服务器仅修改“state MASTER ”与“router_id keep_01”即可

4、启动并配置开机启动

5、检查项

1)检查服务状态为active

2)能够ping通虚拟IP,通过“ip a”可以看到虚拟机IP

image

参考文章:https://www.cnblogs.com/kevingrace/p/6248941.html

未经允许不得转载:未来往事的博客 » Linux部署Keepalived高可用软件

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址