AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 65702
Accepted
mrdenny
mrdenny
Asked: 2009-09-16 13:55:47 +0800 CST2009-09-16 13:55:47 +0800 CST 2009-09-16 13:55:47 +0800 CST

vrrp 路由 ping,但不是其他流量

  • 772

我有两个运行 BusyBox 的虚拟机(在 ESX 下)。这些机器仅用作负载平衡器。

我正在使用笔在每台工作正常的机器上进行负载平衡。但是当我启动 vrrpd ping 工作时,但没有其他工作。

每个负载均衡器有 3 个接口。管理 IP 在 eth0 上,eth1 用于第二个负载均衡器设置。

LBCO102A
10.3.16.96 - (eth0) Management IP
10.3.16.84 - (eth2) IP that pen uses

LBCO102B
10.3.16.94 - (eth0) Management IP
10.3.16.85 - (eth2) IP that pen uses

vrrpd 使用 10.3.16.58

在 LBCO102A 上,我使用以下命令启动 vrrpd:

vrrpd -i eth2 -v 58 -p 100 10.3.16.58

在 LBCO102B 上,我使用以下命令启动 vrrpd:

vrrpd -i eth2 -v 58 -p 50 10.3.16.58

我可以在端口 80 上毫无问题地连接到 IP 10.3.16.84 和 10.3.16.85。我可以毫无问题地连接到管理 IP 10.3.16.94 和 10.3.16.96。当我连接到 10.3.16.58 时,它会超时。/var/run/messages 文件中没有显示任何内容,除了一个是 master 而另一个不是。

有没有人知道为什么 vrrpd 除了 ping 之外没有推送流量?我有这三个设置。一个在 pop3 上,一个在 smtp 上,一个在 http 上。除了 ping,它们都不适用。

这是来自 LBCO102A 的 netstat -an

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 10.3.16.107:110         0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:9999            0.0.0.0:*               LISTEN
tcp        0      0 10.3.16.84:80           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:8888            0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:8889            0.0.0.0:*               LISTEN
tcp        0      0 10.3.16.107:110         10.3.17.30:53960        TIME_WAIT
tcp        0      0 10.3.16.96:22           10.3.30.154:1224        ESTABLISHED
tcp        0      0 10.3.16.107:110         10.3.17.30:54000        TIME_WAIT
tcp        0      0 10.3.16.107:110         10.3.17.30:54102        TIME_WAIT
tcp        0      0 10.3.16.107:110         10.3.17.30:54038        TIME_WAIT
tcp        0      0 10.3.16.107:110         10.3.17.30:53959        TIME_WAIT
tcp        0      0 10.3.16.107:110         10.3.17.30:54001        TIME_WAIT
tcp        0      0 10.3.16.107:110         10.3.17.30:54101        TIME_WAIT
tcp        0      0 10.3.16.96:22           10.3.30.154:1097        ESTABLISHED
tcp        0      0 10.3.16.107:110         10.3.17.30:54037        TIME_WAIT
raw        0      0 0.0.0.0:112             0.0.0.0:*               0
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node Path
unix  7      [ ]         DGRAM                    983    /tmp/log
unix  2      [ ]         DGRAM                    1156708
unix  2      [ ]         DGRAM                    1156657
unix  2      [ ]         DGRAM                    1156524
unix  2      [ ]         DGRAM                    192729
unix  2      [ ]         DGRAM                    994

这是来自 LBCO102B 的 netstat -an

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 0.0.0.0:9999            0.0.0.0:*               LISTEN
tcp        0      0 10.3.16.85:80           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:8888            0.0.0.0:*               LISTEN
tcp        0      0 10.3.16.94:22           10.3.30.154:1118        ESTABLISHED
raw        0      0 0.0.0.0:112             0.0.0.0:*               0
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node Path
unix  6      [ ]         DGRAM                    981    /tmp/log
unix  2      [ ]         DGRAM                    188253
unix  2      [ ]         DGRAM                    179316
unix  2      [ ]         DGRAM                    179306
unix  2      [ ]         DGRAM                    988

这是我的启动脚本中的内容。(脚本中有更多内容可检查启动/停止/重启)LBCO103A

echo -n "Starting eth2: "
ifconfig eth2 10.3.16.84 netmask 255.255.255.0 up
echo "OK"

echo -n "Starting vrrp-ascossrs101: "
vrrpd -i eth2 -v 58 -p 100 10.3.16.58
echo "OK"

echo -n "Starting pen-ascossrs101: "
/bin/pen -C 8888 -X -l /var/log/ascossrs101.log -p /var/log/ascossrs101.pid 10.3.16.84:80 10.3.16.56:80 10.3.16.57:80
echo "OK"

LBCO102B

echo -n "Starting eth2: "
ifconfig eth2 10.3.16.85 netmask 255.255.255.0 up
echo "OK"

echo -n "Starting vrrp-ascossrs101: "
vrrpd -i eth2 -v 58 -p 100 10.3.16.58
echo "OK"

echo -n "Starting pen-ascossrs101: "
/bin/pen -C 8888 -X -l /var/log/ascossrs101.log -p /var/log/ascossrs101.pid 10.3.16.85:80 10.3.16.56:80 10.3.16.57:80
echo "OK"
linux
  • 3 3 个回答
  • 1416 Views

3 个回答

  • Voted
  1. Best Answer
    Kevin Nisbet
    2009-10-21T00:09:55+08:002009-10-21T00:09:55+08:00

    我没有用过笔,所以我不太确定它是如何工作的,但也许可以提供帮助。

    你能运行 netstat -an 并提供输出吗?我的猜测是 pen 绑定到 eth2 IP,而不是盒子上的所有地址。它应该配置为 0.0.0.0 以便它会获取盒子拥有的任何地址,或者你应该运行 vrrpd masterscript 以使 pen 绑定到你是 VIP。可能必须发生的事情是 masterscript 必须启动已经配置为期望 vip 绑定到您的 eth2 接口的笔本身。

    现在使用 netstat 输出进行编辑:好的,这就是问题所在:LBCO102A tcp 0 0 10.3.16.84:80 0.0.0.0:* LISTEN

    10.3.16.84:80 表示你只绑定到 10.3.16.84 的 80 端口,因此即使服务器有 VIP,它也不会监听 10.3.16.58 的 80 端口。

    同样,我对 pen 不是很熟悉,但假设传递的第一个 IP 地址是绑定:/bin/pen -C 8888 -X -l /var/log/ascossrs101.log -p /var/log/ascossrs101 .pid 10.3.16.84:80 10.3.16.56:80 10.3.16.57:80 可能是 /bin/pen -C 8888 -X -l /var/log/ascossrs101.log -p /var/log/ascossrs101.pid 0.0。 0.0:80 10.3.16.56:80 10.3.16.57:80

    0.0.0.0:80 意味着绑定到盒子上的所有地址和所有接口。

    另一种选择可能是使用: /bin/pen -C 8888 -X -l /var/log/ascossrs101.log -p /var/log/ascossrs101.pid 10.3.16.58:80 10.3.16.56:80 10.3.16.57 :80

    但是,我怀疑这是否会按原样工作,因为当程序启动时,VM 将没有该 IP 地址,因此 pen 将无法显式绑定到它。我试图查看 vrrpd 的文档,我不确定它是否可以做到这一点,但 freevrrp 有一个 masterscript 选项,它基本上会在接管 VIP 时运行一个脚本。因此,您只需将启动笔的命令添加为主脚本的一部分,这样当盒子获得 VIP 的所有权时,它将启动笔并将其绑定到 VIP IP 地址。

    • 2
  2. mrdenny
    2009-10-23T18:41:50+08:002009-10-23T18:41:50+08:00

    好的,我想我现在一切正常。这是我从@Kevin 那里得到的东西加上我在网上找到的一些东西的组合(关于 vrrpd 的内容很少)。

    似乎 vrrpd fires 告诉服务器侦听 IP,因此您不想使用 IP 启动接口。该接口确实需要有一个 IP,而不是 vrrp 将使用的 IP。

    我的下一个问题是我的笔在与 vrrpd 使用的 IP 不同的 IP 上工作。我最终列出了所有 IP 上端口 80 上的所有连接的笔。如果你不这样做,那么如果笔启动并且机器不是主负载均衡器,那么笔就会死掉,因为它正在寻找的 IP 不存在。

    我用笔在另一个 IP 地址上进行了设置,并假设 vrrpd 是前面的另一个负载平衡器。原来 vrrpd 只是启动 IP 并关闭它。

    因此,回顾一下我最终得到的结果。

    LBCO102A
    10.3.16.96 - eth0 (Management IP)
    10.3.16.148 - eth1
    
    LBCO102B
    10.3.16.94 - eth0 (Management IP)
    10.3.16.149 - eth1
    

    然后两台机器上的vrrpd都配置了10.3.16.58地址,两台机器上的pen都配置了0.0.0.0。

    还有更多测试要做,但我一直在调试模式下运行 pen 并密切关注 /var/run/messages 文件,如果我在活动节点上重新启动 vrrpd,它会变为被动,新的活动节点开始显示流量. 时间会证明一切,但它看起来很有希望。

    • 1
  3. Roy
    2009-10-21T00:05:36+08:002009-10-21T00:05:36+08:00

    这里只是猜测。您可能会将其与在同一子网上有两个接口混淆。您可以尝试为管理网络创建一个单独的子网。

    • 0

相关问题

  • Linux 主机到主机迁移

  • 如何在 Linux 机器上找到有关硬件的详细信息?

  • 如何在 Linux 下监控每个进程的网络 I/O 使用情况?

  • 在 RHEL4 上修改 CUPS 中的现有打印机设置

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve