Keepalived配置报错Unicast peers are not supported in strict mode

Keepalived配置报错Unicast peers are not supported in strict mode

报错信息

Oct 14 19:18:45 ka1 Keepalived_vrrp[1306]: (Web_1) Strict mode does not support authentication. Ignoring.
Oct 14 19:18:45 ka1 Keepalived_vrrp[1306]: (Web_1) Unicast peers are not supported in strict mode
Oct 14 19:18:45 ka1 Keepalived_vrrp[1306]: Stopped - used 0.000000 user time, 0.001451 system time
Oct 14 19:18:45 ka1 Keepalived[1305]: Startup complete
Oct 14 19:18:45 ka1 Keepalived[1305]: pid 1306 exited with permanent error CONFIG. Terminating
Oct 14 19:18:45 ka1 Keepalived[1305]: CPU usage (self/children) user: 0.000000/0.000000 system: 0.001419/0.001747
Oct 14 19:18:45 ka1 Keepalived[1305]: Stopped Keepalived v2.2.4 (08/21,2021)

报错原因

vrrp_strict 严格模式和unicast_src_ip冲突,造成keepalived启动失败
此外vrrp_strict 还和nopreempt等配置冲突,建议直接删除或注释.

排除错误

vi /etc/keepalived/keepalived.conf

注释或删除下列行

#vrrp_strict

保存后重启keepalived

systemctl restart keepalived

在这里插入图片描述

题外话

排错过程中看到其他同学的Keepalived求助帖
https://ask.csdn.net/questions/771124?weChatOA=
虽然不知道最终的原因,但也对该问题做了下分析

问题分两步
一.抢占引起的vip自动切换
1.43为主,当43启动后虚拟ip切换到43,这个是抢占模式引起的.
解决方法:将keepalived设置成非枪战模式,这样你停了43,切到47后,再次启动43不会强制再把VIP切回43.
vrrp_instance中增加nopreempt
二.vip在43上无法访问.
vip无法访问,这里不是很理解描述的"无法访问"具体现象,揣测有3种可能.
1vip无法ping通
看下防火墙配置
systemctl stop firewalld && iptables -F (请再三确认防火墙配置,避免造成部分需要的配置丢失)
2keepalived的配置,理论上你没有配置vrrp_strict是不需要单独配置vrrp_iptables,但你没说具体keepalived版本,不排除小版本存在某些特殊的bug
global_defs 中加vrrp_iptables
3.某个服务比如nginx或者apache无法访问
3.1.检查对应配置文件的listen配置项,最粗暴的方式设置成0.0.0.0
3.2.ss -ntlp 查看对应端口的监听
3.3.利用curl之类的工具依次测试127.0.0.1,服务器ip,vip看是否正常返回.
3.4.数据库的话查看相关账号授权

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Keepalived是一种基于VRRP协议实现的高可用性解决方案,它可以用于保证网络服务的高可用性。下面是一个简单的Keepalived配置示例: 1. 安装KeepalivedLinux环境下,可以使用以下命令安装Keepalived: ``` sudo apt-get install keepalived ``` 2. 配置Keepalived Keepalived配置文件位于/etc/keepalived/keepalived.conf。以下是一个基本的Keepalived配置示例,其中包含了两个节点(192.168.1.10和192.168.1.11),它们将共享一个虚拟IP地址(192.168.1.100): ``` ! Configuration File for keepalived global_defs { router_id LVS_DEVEL } vrrp_script chk_nginx { script "/etc/keepalived/check_nginx.sh" interval 2 weight 2 } vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 101 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.1.100 } track_script { chk_nginx } } virtual_server 192.168.1.100 80 { delay_loop 6 lb_algo rr lb_kind NAT persistence_timeout 50 protocol TCP real_server 192.168.1.10 80 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } real_server 192.168.1.11 80 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } } ``` 在上面的配置中: - global_defs:定义全局变量,这里定义了路由器ID。 - vrrp_script:定义监控脚本,这里使用了一个名为check_nginx.sh的自定义脚本。 - vrrp_instance:定义VRRP实例,这里定义了一个名为VI_1的实例,它的状态为MASTER。 - virtual_ipaddress:定义虚拟IP地址。 - track_script:定义跟踪监控脚本。 - virtual_server:定义虚拟服务器,这里定义了一个IP地址为192.168.1.100,端口为80的虚拟服务器。 - real_server:定义实际服务器,这里定义了两个实际服务器,它们的IP地址分别为192.168.1.10和192.168.1.11。 3. 启动Keepalived 在完成配置后,可以使用以下命令启动Keepalived: ``` sudo systemctl start keepalived ``` 如果要在系统启动时自动启动Keepalived,可以使用以下命令: ``` sudo systemctl enable keepalived ``` 以上是一个简单的Keepalived配置示例,实际使用中可能需要根据实际情况进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值