问题标签 [keepalived]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1016 浏览

monitoring - 如何检测网络级别的所有keepalived virtual_router_id?

我们有不同的机器开启了keepalived实例,我正在寻找一种方法来检查(在网络段级别)所有的virtual_router_id。(为了避免重复。)

因此,1 个工具在网络上侦听 virtual_router_id 并打印它们。

善良的 Rgds,卢克

0 投票
1 回答
812 浏览

kubernetes - 如何添加防火墙规则以允许通过 kubernetes 中的虚拟 ip 访问节点端口

我有一个 kubernetes 集群,其中控制平面通过其中配置的 keepalived 的 VIP 在 HA 中工作(仅安装在控制节点上)。禁用防火墙后,一切都按预期工作。启用防火墙时,所有内部通信和节点端口的行为不一致。作为一个基本的启动,我已经启用了 kubernetes 所需的某些强制端口,但这对应用程序通信没有帮助。有什么方法或添加任何防火墙规则可以帮助我访问 nodePorts/应用程序服务?

如果我不清楚,这是一个小总结

控制平面 1:172.16.23.110

控制平面 2:172.16.23.111

控制平面 3:172.16.23.112

保活贵宾:172.16.23.116

工作节点:172.16.23.120-23.125

我正在尝试通过 nodePort 访问服务,例如https://172.16.23.116:30443

我在所有节点上添加了防火墙案例(所有节点都是centos7.6)

请帮助

0 投票
0 回答
552 浏览

docker - 如何在没有 Docker Swarm 上的 Ingress 路由网格的情况下为一个 HAProxy 容器配置 keepalived

我尝试按照这篇文在 Docker Swarm 上设置“一个没有入口路由网格的 HAProxy 容器”。除了我有 3 个 VPS 节点而不是 3 个虚拟机之外,每个节点都有自己的静态公共 IP 地址。

我不熟悉keepalived,也不明白如何配置它以使其在我的vps节点之间工作。

以下是此博客中 keepalived 配置的示例:

如何使keepalived将流量重定向到正确的节点?这个配置 ( vrrp_instance) 甚至意味着什么?

0 投票
1 回答
232 浏览

ldap - 需要有关使用 Ldap 高可用性杂项检查脚本的 keepalived 的帮助

我需要有关使用 Ldap 高可用性杂项检查脚本的 keepalived 的帮助。

我们遇到了一个 LDAP 问题,突然用户无法通过应用程序和 su – ldapuser 登录系统,这种情况发生了两次。

在此期间,主 LDAP 服务器的连接数为 600,辅助 LDAP 服务器的连接数为 1000。

所有应用程序服务器都将通过 keepalived(负载平衡器)服务器进行联系,目前,我们有 2 个 lb 节点和 2 个 LDAP 节点。

LDAP 设计是主动和主动的,如果主要关闭,则请求转到辅助。

所以找到根本原因是非常困难的,我们尝试了很多,所以如果连接数很高,比如 600 或更多,我们就想在 LB 级别实现,然后切换到辅助服务器

我在这里寻求有关如何在 misc 中实施检查的建议,检查连接数检查是否合适或用于检查 LDAP 相关内容以切换到辅助服务器的任何其他参数。即使我不想这样做来自 lb 的 ssh 来检查 ldap 内容,我需要直接逻辑来检查和切换

目前,我们有如下的杂项检查脚本:

LB监控脚本:

猫监视器.sh

谢谢, Subhash Kumar.D

0 投票
0 回答
57 浏览

high-availability - 我使用 2 个网络,keepalived 不起作用

有 2 个服务器,每个服务器有 2 个以太网(一个是主要的,一个是辅助的)

keepalived.conf(服务器 1)

keepalived.conf(服务器 2)

IP 列表(Server1) 正常

IP 列表(Server2)很奇怪。
Q1) 为什么Server2上打印的是192.168.0.4?

journalctl 日志(服务器 2)

Q2) 为什么 Server2 中的 MASTER 和 BACKUP 会不断变化?

正常的时候Server1是MASTER,Server2是BACKUP Keepalived版本是1.4.3,我测试的是最新版本(2.xx),但是症状都是一样的。

0 投票
0 回答
570 浏览

linux - 用于心跳和 vrrp_sync_group 的 Keepalived 专用网络

我需要 Keepalived 在具有 2 个接口的 2 个负载平衡器 (NGINX) 上运行 VRRP - eth0(外部)和 eth1(内部)。我正在尝试配置一个设置,其中所有 VRRP 流量(最好是单播)都通过专用的内部 eth1 接口运行,以降低出现脑裂情况的风险。但是,浮动 IP 地址 (VRRP IP) 将位于 eth0(外部)网络上。

我正在查看 [https://github.com/acassen/keepalived/issues/637] 并尝试做类似的事情。我的配置如下:

到目前为止,我在此设置中遇到的问题:

  1. 在master上,我强行关闭了eth1(内部接口)。这随后触发了 keepalived 的故障转移,并且状态转换为故障。这并不是我所期待的行为,因为我认为这个想法是让它在这种情况下“使用”外部 eth0 进行通信(它仍然启动并运行外部 VRRP),因此这将提供弹性。是否有可能,当检测到 eth1 关闭时,不触发故障转移,而是等待 eth1 也失败,以便它进行故障转移?

  2. check_nginx我收到未使用我的 track_script 的警告。是否track_scripts仍然不允许在内部使用vrrp_sync_group?因为在 NGINX 失败的情况下我仍然需要它来工作。

  3. 我可以在内部使用抢占vrrc_sync_group吗?因为我想在它移动后防止故障回复。

  4. 有没有更好的方法来做到这一点?我想要实现的是:a。确保 VRRP 流量用于内部(专用)接口eth1和浮动 VRRP IP 驻留eth0。这样我们就不需要依赖外部网络来进行心跳。湾。如果 eth0 发生故障,如果 eth1 仍然存在,则不要故障转移到 BACKUP 节点。只有当那个也关闭时才进行故障转移(应该如此)。
    C。但是,如果check_nginx失败,这将触发故障转移。d。一旦故障转移,它就不会故障恢复——除非发生相同的故障情况(例如 NGINX 宕机)

想知道我想要实现的目标是否可行?

谢谢J

0 投票
1 回答
35 浏览

python - 当 Python 脚本运行并以 sys.exit(0) 结束时出现错误:以状态 2 退出

我正在尝试进行keepalived配置,而我使用并直接以 sys.exit(0) 结束的脚本会给出该错误:

我能做些什么来纠正它?

我的脚本代码:

我的 Keepalived 配置文件:

0 投票
2 回答
175 浏览

database - Redis主从问题

我们在 prod 环境中使用 keepalived 设置了 master 和 slave,所以问题是我的 master 变成 slave,slave 变成 master 那么这个问题的原因是什么,如果有网络波动或任何其他原因,我该如何找到。

0 投票
0 回答
16 浏览

failover - 仅在经过很长时间 Keepalived 时才跳过 IP

我有 2 台服务器(A 和 B),其中 A 是主服务器。如果重要的话,这是 haproxy 服务器。只有当 A 停机超过 15 秒时,我才希望 keepalived 将 VIP 从 A 跳过到 B。我看到了该advert_int选项,但除非我使用不正确,否则它不起作用。还尝试调整块的fallriseintervalvrrp_script。这是我的配置:

0 投票
1 回答
478 浏览

ip - 无法使用 keepalived 和 VRRP 设置浮动 IP

我有一台托管两个虚拟机的 ubuntu 机器,每个虚拟机都运行一个应用程序,我需要为其提供高可用性,所以我使用 keepalived 和 VRRP 实现了一个浮动 IP,但我无法使用虚拟 IP ping 主虚拟机主机,它说目标主机不可达。

VM1 的 keepalived.conf:

当我启动 keepalived 服务时,它显示以下消息: