LB01:

LB01:

我正在为我的两个 mysql 服务器 (db01 和 db02) 配置两个带有 keepalived 的负载均衡器 (lb01 和 lb02),标准端口为 3306。有一个虚拟 ip 地址 (192.168.205.10) 可以访问它,也可以充当故障转移,但不知何故,前面的 web 服务器无法使用 vip 访问这个 mysql 服务器。这是我的配置:

Keepalived:

我在这里只添加了 mysql 部分。

LB01:

virtual_server 192.168.205.10 3306 {
  delay_loop 6
  lb_algo rr
  lb_kind DR
  protocol TCP

  real_server 192.168.205.4 3306 {
    weight 10
    TCP_CHECK {
      connect_port    3306
      connect_timeout 2
    }
  }
}

LB02:

virtual_server 192.168.205.10 3306 {
  delay_loop 6
  lb_algo rr
  lb_kind DR
  protocol TCP

  real_server 192.168.205.6 3306 {
    weight 10
    TCP_CHECK {
      connect_port    3306
      connect_timeout 2
    }
  }
}

我已经注释掉了两个服务器 my.cnf 中的“bind-address=127.0.0.1”部分。此外,还从我的 ubuntu 服务器(ufw 或 iptables)中删除了所有防火墙程序。

有什么帮助吗?

谢谢。

答案1

您是否检查过是否忘记从配置文件中删除 mysql 选项 --skip-network?

找出是否是网络/防火墙问题的最简单方法是从 Web 服务器在 lb* mysql 服务器端口 3306 上建立 telnet 连接。如果可以连接,则不是网络问题 :)

或者使用tcpdump -i ethX port 3306

相关内容