当前位置:首页 > 编程笔记 > 正文
已解决

使用Keepalived实现双机热备,实现服务高可用

来自网友在路上 192892提问 提问时间:2023-11-07 20:43:18阅读次数: 92

最佳答案 问答题库928位专家为你答疑解惑

安装(所有节点)

yum -y install keepalived

修改配置

vi /etc/keepalived/keepalived.conf
:set nu   //显示行号
:35 dG  // 删除35行以后的所有行

在这里插入图片描述
在这里插入图片描述

ip a

在这里插入图片描述
将master1虚拟机挂起,再次执行ip a 看vip是否漂移到另一台虚拟机worker1
在这里插入图片描述

漂移了,表示keepalived配置启动成功了!

Nginx整合keepalived

让keepalived除了监控网络之外,还要监控Nginx服务是否挂掉,两种情况都要进行VIP(虚拟ip)漂移
主备服务器都要实现此脚本

1、编写测试脚本 赋予执行权限

shell > cd /etc/keepalived
shell > vim check_nginx.sh

脚本内容:

#!/bin/bash
nginx_status=`ps -C nginx --no-header | wc -l`
if [ $nginx_status -eq 0 ];thenservice keepalived stop
fi

脚本说明:
在这里插入图片描述
赋予脚本执行权限 方便之后其他软件调用执行

shell > chmod +x check_nginx.sh

2、测试脚本可用性

启动nginx和keepalived

关闭nginx 执行脚本 查看keepalived是否也关闭

3、在多台服务器中配置keepalived定时触发检测nginx的脚本模块

#在vrrp_instance外上面定义
vrrp_script check_nginx {#调用脚本地址script  /etc/keepalived/check_nginx.sh#检测间隔时间interval 3
}
#在vrrp_instance里调用
track_script {#上线定义的名称check_nginx
}

在这里插入图片描述

非抢占模式

①nopreempt

在主备服务器的配置文件,vrrp_instance段中

②设置state工作模式为BACKUP
两个keepalived节点都启动后,默认都是BACKUP状态,双方在发送组播信息后,会根据优先级来选举一个MASTER出来。由于两者都配置了nopreempt,所以MASTER从故障中恢复后,不会抢占vip。这样会避免VIP切换可能造成的服务延迟。

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"使用Keepalived实现双机热备,实现服务高可用":http://eshow365.cn/6-34723-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!