LVS配置命令理解2

LVS配置命令理解2

使用ipvsadm安装LVS服务

#ipvsadm -A -t 192.168.31.173:http -s rr

其中ipvsadm的安装过程就略过。ipvsadm是LVS服务的配置接口工具。
-A:添加虚拟服务器
-t:表示TCP协议
192.168.31.108:http: 与-t一起组成虚拟服务器,IP地址、端口号、协议组成的三元组。
-s:表示调试器算法选项
rr:表示使用的调度器算法是Round Robin

这个命令执行完成后,就在当前的计算机上添加了LVS的虚拟服务器。

使用ipvsadm添加真实服务器

ipvsadm -a -t 192.168.31.173:http -r 192.168.31.172 -g -w 1

-a: 表示要向虚拟服务器添加一个真实服务器器。
-t 192.168.31.173:http 与前面提到的一样,是表示一个虚拟服务器。分别是协议,IP地址,端口。因为http默认的端口是80。所以也用http来表示了。
-r 192.168.31.172: 表示要添加一个真实物理地址为192.168.31.172的真实服务器,这个服务器上运行着http服务。即有服务器进程在监听着80端口。
-g: 表示要使用直接直接路由方式来转发请求。
-w 1: 表示分配给此真实服务器的权重。这个值默认就是1,而且前面设置的调度算法是round robin,是平等地把请求分发给后端服务器,所以这里的设置没有什么意义。

真实服务器上的设置

配置本地回环接口lo

#ifconfig lo:0 192.168.31.107 netmask255.255.255.255

同负载均衡器上配置类似,此处也为后端服务器上的本地回还口配置了一个相同的虚拟IP地址。至于为什么也要这样配置,后面细说。

原因:DR模式下只修改了链路层包的MAC地址,替换为real server的。但目的IP还是负载均衡IP地址,所以real server收到包之后,发现匹配不上自己的IP,会把包丢弃。所以需要在lo口上配置负载均衡IP,让包能正常收到。

为lo添加路由

#route add -host 192.168.31.107 dev lo:0

为192.168.31.107的虚拟服务器地址添加一条路由,发往这个IP地址的数据都要传送到本地的回环接口上去。
add:表示要添加一个跌幅条目。
-host:表明针对一个主机添加一个路由。
dev: 表明要发送往的接口。

开启IP数据包转发

这个同之前在负载均衡器上做的一样。

ARP隐藏

#echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore

#echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce

#echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore

#echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce

此处是进行ARP隐藏。有针对lo的接口设置,也有针对所有接口的设置。关于这里的设置,我还是不太明白,研究清楚之后,再写一篇。

LVS/DR工作过程的梳理

1、客户端向服务器发起请求,目标地址是前述的配置的集群对外的公网IP

到达负载均衡器之前会经过子网网关,是一个路由器。
路由器根据请求的公网IP地址和端口,进行映射,得到本地子网下的IP地址。这个本地的IP地址其实就是真正的虚拟IP地址。
路由器发出ARP请求广播,询问虚拟IP地址的MAC地址,由于真实服务器都进行了ARP隐藏,所以只有负载均衡器会响应这个ARP广播。
客户端的请求,被发往负载均衡器。

2、负载均衡器处理

收到请求后,根据真实服务器的配置信息,及统计信息,选择一个真实服务器,修改以太网数据包中的MAC地址为目标真实服务器的MAC地址。前提是也进行了一次ARP广播请求得到了此真实服务器的MAC地址。
将以太网数据帧发出。

3、真实服务器处理

真实服务器看到以太网数据帧中的MAC地址是自己的,就接收。
IP层解析过程中,会根据前述配置的路由信息,把目的地址为虚拟IP地址的数据包,发到回环上。
到此回环口接到信息,至此IP地址匹配,认为是发送给自己的数据包,真实服务器接收数据包。
完成处理后,服务器会把目的地址与源地址填写好,发出去。
此时数据包直接到达子网网关路由器,不经过负载均衡器。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值