标签: keepalived

xen domU 上的 keepalived 问题

我无法在 xen domU 上正确运行 keepalived。

我正在关注此链接进行配置,它在某些本地 VM(与 KVM 一起运行)上运行良好。如果我设置了完全相同的配置,但在 xen domU 上,它不起作用:两台服务器看不到对方并决定成为主服务器(10.10.0.200 是虚拟 IP)

$ sudo ip addr sh eth0 # host1
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:16:3e:73:b0:78 brd ff:ff:ff:ff:ff:ff
inet 10.10.0.100/24 brd 10.10.0.255 scope global eth0
inet 10.10.0.200/32 scope global eth0
inet6 fe80::216:3eff:fe73:b078/64 scope link 
   valid_lft forever preferred_lft forever

$ sudo ip addr sh eth0 # host2
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:16:3e:ee:5e:fd …
Run Code Online (Sandbox Code Playgroud)

xen keepalived

6
推荐指数
1
解决办法
2545
查看次数

Keepalived 不发送多播广告

我有两个系统,两个都是虚拟机。配置为使用桥接网络。我正在尝试使用 keepalived 来管理 VIP 的所有权 - 10.190.1.230。我尝试了从源代码构建的两个版本的 keepalived-1.2.2 和 keepalived-1.2.1。

ServerA - RHEL5.2 x64 - 10.190.1.228 - PRIORITY 50
ServerB - RHEL6 x64 - 10.190.1.229 - PRIORITY 101
VIP - 10.190.1.230
Run Code Online (Sandbox Code Playgroud)

我的问题似乎是在 ServerB 上 keepalived 没有发送多播广告。它正在看到多播广告。来自服务器A:

[root@ServerB~]# tcpdump -vv -c 3 -i eth0 vrrp
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
10:18:10.760577 IP (tos 0x0, ttl 255, id 856, offset 0, flags [none], proto VRRP (112), length 40)
10.190.1.228 > 224.0.0.18: VRRPv2, Advertisement, vrid 151, …
Run Code Online (Sandbox Code Playgroud)

linux haproxy fault-tolerance keepalived

6
推荐指数
1
解决办法
6158
查看次数

UCARP:防止原来的master在失败回来后接管VIP?

Keepalived可以通过组合两个节点上的nopreempt选项和BACKUP状态来做到这一点:

怎么样UCARP

Name       : ucarp
Arch       : x86_64
Version    : 1.5.2
Release    : 1.el5.rf
Size       : 81 k
Repo       : installed
Summary    : Common Address Redundancy Protocol (CARP) for Unix
URL        : http://www.ucarp.org/
License    : BSD
Description: UCARP allows a couple of hosts to share common virtual IP addresses in order
           : to provide automatic failover. It is a portable userland implementation of the
           : secure and …
Run Code Online (Sandbox Code Playgroud)

centos carp keepalived ucarp virtual-ip

6
推荐指数
1
解决办法
4305
查看次数

Keepalived 的 virtual_router_id - 每个节点应该是唯一的吗?

我有两个运行 keepalived 的节点和两个 VIP,例如

Node 1      Node 2
VIP1        VIP2
Run Code Online (Sandbox Code Playgroud)

因此,在每一个节点,我有两个定义vrrp_instance,所以我假定这两个vrrp_instance在我的keepalived.conf假设是唯一的,但也可以是另一个节点上相同的值,对不对?

high-availability keepalived

6
推荐指数
1
解决办法
2万
查看次数

恢复后keepalived master无法回收虚拟IP

脚步

  1. 启动主从
  2. 继续ping虚拟IP(即192.168.10.100
  3. 关机主机
  4. 从机进入 MASTER 状态
  5. 重启主
  6. Slave 进入 BACKUP 状态 Master 进入 MASTER 状态

在第 6 步之后 Ping 不起作用。没有服务器获得虚拟 ip。(我检查过ip addr show eth1

直到我重新启动keepalived服务,Master才能取回虚拟IP。

如何让master在不重启服务的情况下获得虚拟ip?

保活配置:

主机 1(主)

vrrp_instance VI_1 {
    state MASTER
    interface eth1
    virtual_router_id 51
    priority 101
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass secret
    }
    virtual_ipaddress {
        192.168.10.100
    }
}
Run Code Online (Sandbox Code Playgroud)

主机 2(从机)

vrrp_instance VI_1 {
    state BACKUP
    interface eth1
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass secret …
Run Code Online (Sandbox Code Playgroud)

keepalived

6
推荐指数
1
解决办法
2229
查看次数

使用 HAproxy 和 keepalived 的连接同步建议

我设法使用 keepalived 使 HAproxy 在故障转移配置中工作,如Architecture.txt文档中的建议。

我使用了 CentOS 5.5、来自 epel 存储库的 HAproxy rpm (haproxy-1.3.25-1.el5) 和来自 CentOS 测试存储库的 keepalived rpm (keepalived-1.1.15-0.el5.centos)。

这是我的 keepalived 配置

vrrp_script chk_haproxy {           # Requires keepalived-1.1.13
    script "killall -0 haproxy"     # cheaper than pidof
    interval 2                      # check every 2 seconds
    weight 2                        # add 2 points of prio if OK
}

vrrp_instance VI_1 {
    interface eth0
    state MASTER
    virtual_router_id 51
    priority 101                    # 101 on master, 100 on backup
    virtual_ipaddress {
    10.0.0.30            
    10.0.0.31            
    }
    track_script …
Run Code Online (Sandbox Code Playgroud)

centos connection haproxy keepalived

5
推荐指数
1
解决办法
2093
查看次数

Amazon EC2 上的 haproxy 和 keepalived

新的 Amazon Opsworks 服务使用 haproxy 而不是 Amazon 自己非常有限的弹性负载平衡器,所以我开始研究 haproxy 作为对我们的 Web 应用程序服务器进行负载平衡、提供会话故障转移等的更好选择。 我让 haproxy 顺利工作使用一台 haproxy 服务器和几台 Web 应用服务器,但我想避免 SPOF。

我的问题是,我是否需要在每个可能具有相同内部 IP 地址 10.0.0.x 的 haproxy 服务器上设置第二个 NIC?由于分配外部地址(弹性 IP)并将流量转发到内部 IP 是由亚马逊完成的,我不确定如何配置它。

我想我想通了,我现在正在测试 - 您使用主服务器的内部 IP 在两台服务器上进行 keepalived。

domain-name-system haproxy amazon-ec2 amazon-elastic-ip keepalived

5
推荐指数
1
解决办法
3122
查看次数

keepalived 配置无法与 virtualbox 虚拟机一起正常工作

我的 keepalived 配置无法正常工作。

我有两台虚拟测试机(virtualbox)来尝试使用 keepalived/vrrp 进行一些操作。机器人可以完美地互相 ping 通(内部 virtualbox 网络)。

虚拟机 1(主):

eth0: Management
eth1: 192.168.2.1/24
eth2: 192.168.2.2/24

keepalived.conf:

vrrp_instance test {
state MASTER
interface eth1
track_interface {
        eth2
}
virtual_router_id 1
priority 101
advert_int 1
authentication {
        auth_type PASS
        auth_pass 1111
}
virtual_ipaddress {
        192.168.3.1/24 dev eth1
        192.168.3.2/24 dev eth2
}
}

tcpdump on eth1:

12:44:54.720119 IP 192.168.2.1 > vrrp.mcast.net: VRRPv2, Advertisement, vrid 1, prio 101, authtype simple, intvl 1s, length 24
12:44:55.049465 IP 192.168.2.3 > vrrp.mcast.net: VRRPv2, Advertisement, …
Run Code Online (Sandbox Code Playgroud)

networking linux virtualbox vrrp keepalived

5
推荐指数
1
解决办法
2115
查看次数

keepalived配置中virtual_ipaddress_excluded的含义

我的 keepalived 配置遇到了一些问题,并在这篇文章中找到了答案:Keepalived for more 20 virtual paths

但我不确定 virtual_ipaddress 和 virtual_ipaddress_excluded 之间的区别?谁能向我解释一下吗?医生说:

virtual_ipaddress_excluded { # 从 VRRP 数据包中排除的 VRRP IP

load-balancing vrrp keepalived

5
推荐指数
1
解决办法
3532
查看次数

UDP 的每包循环负载平衡

我需要在多个“真实服务器”之间对 UDP 流量进行负载平衡,并以真正的循环方式进行。我已经开始使用 keepalived,但意外地发现,LVS 将 UDP 流量视为“连接”(无论 UDP 是什么......)。实际上,这意味着来自特定客户端的所有流量始终都流向同一个“真实服务器”(这是一个大问题,因为某些客户端可能会产生如此大的流量,以至于单个后端将不堪重负) .

显然,这是预期的行为,但是最近的 LVS 版本有一个“--ops”标志,这使 LVS 绕过其上述行为,以便独立处理每个 UDP 数据报(这就是我想要的!)。但是(总是有一个但是……)这个功能没有从 keepalived.conf 中暴露出来。

有什么解决方案可以让我

  • 在 UDP 的后端之间进行循环分配
  • 检测“死”后端并将它们从循环中删除(当它们“活着”时将它们添加回来也很有用)

显然应该是基于 Linux 的。任何形式的 DNS 轮询在这里都不起作用,因为客户端不知道 DNS。

PS我将尝试脉冲/食人鱼,但从阅读我收集的文档来看,它也没有公开“--ops”标志。我还将尝试mon(通过直接调用 ipvsadm使mon检查后端并添加/删除真实服务器)。

high-availability load-balancing udp lvs keepalived

4
推荐指数
1
解决办法
6587
查看次数