背景:最近在搭建LVS+keepalived的高可用架构,中间遇到了一些坑比较让人头疼,此处重要就安装部署的步骤进行记录,特别是遇到坑进行说明,希望能对有需要的同学提供给帮助!
坑点1:
在部署LVS+keepalived并且使用DR模式时要确认lvs部署的节点需要跟后端的real server在同一二级网络中,lvs节点跟后端real server通过交换机完成通信;一般在同一网段中的虚拟机会在同一二级网络中。
-
MAC 地址修改:在 DR 模式中,LVS 仅修改请求包的目标 MAC 地址为选定的 Real Server 的 MAC 地址,而不修改目标 IP 地址(仍为 VIP)。因此,LVS 必须与 RS 处于同一二层网络,才能通过 ARP 协议直接获取 RS 的 MAC 地址,并通过二层交换将请求转发给 RS。
-
避免跨网段路由:若 LVS 和 RS 不在同一二层网络,请求包需经过路由器或三层设备,此时目标 MAC 地址会被修改为网关 MAC,导致 RS 无法直接接收该数据包。
lvs节点跟real server不在同一二级网络中会导致部署完成后请求一直不通,主要表现形式就是:
(1)在开通对应的网络策略后,不启用lvs+keepalived是,客户端telnet VIP port或者curl http://VIP:port都是提示connection refused,表明网络是通的,只是服务端没有监听对应的端口;
(2)在启用lvs+keepalived后,客户端再telnet VIP port或者curl http://VIP:port都是提示connection time out。
以上问题在排查是花费了很多时间,一度以为是服务端的问题,最后通过 tcp

最低0.47元/天 解锁文章
1821

被折叠的 条评论
为什么被折叠?



