理论
我是内部服务,代替我访问外部网络,这是正向代理;代替外部网络访问我,这是反向代理
槽位
sh根据源地址。调度到某个节点,dh,根据目标地址,调度到某个节点,
实战演练
默认策略以及修改策略
查看
[root@mcw04 ~]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 10.0.0.14:80 wlc -> 172.168.1.15:80 Masq 1 0 0 -> 172.168.1.16:80 Masq 1 0 0 TCP 10.0.0.14:443 wlc -> 172.168.1.16:443 Masq 1 0 0 -> 172.168.1.25:443 Masq 1 0 0 [root@mcw04 ~]#
清除后添加,默认是wlc
[root@mcw04 ~]# ipvsadm -C [root@mcw04 ~]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn [root@mcw04 ~]# ipvsadm -A -t 10.0.0.14:80 [root@mcw04 ~]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 10.0.0.14:80 wlc [root@mcw04 ~]#
wrr理论
wrr实践演练
清空以前的,然后添加wrr的lvs集群
[root@mcw04 ~]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 10.0.0.14:80 wlc [root@mcw04 ~]# ipvsadm -C [root@mcw04 ~]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn [root@mcw04 ~]# ipvsadm -A -t 10.0.0.14:80 -s wrr [root@mcw04 ~]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 10.0.0.14:80 wrr [root@mcw04 ~]#
添加rs 1 2 3 ,权重分别是1 2 3 。并且是nat模式
[root@mcw04 ~]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 10.0.0.14:80 wrr [root@mcw04 ~]# ipvsadm -a -t 10.0.0.14:80 -r 172.168.1.15 -m -w 1 [root@mcw04 ~]# ipvsadm -a -t 10.0.0.14:80 -r 172.168.1.16 -m -w 2 [root@mcw04 ~]# ipvsadm -a -t 10.0.0.14:80 -r 172.168.1.25 -m -w 3 [root@mcw04 ~]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 10.0.0.14:80 wrr -> 172.168.1.15:80 Masq 1 0 0 -> 172.168.1.16:80 Masq 2 0 0 -> 172.168.1.25:80 Masq 3 0 0 [root@mcw04 ~]#
我们在客户端mcw03上访问,可以看到,的确是 1 2 3 的比例,被调度到
[root@mcw03 ~]# [root@mcw03 ~]# for i in {1..6} > do > curl 10.0.0.14 > done hello rs3 machangwei06 rs2 machangwei05 rs1 hello rs3 hello rs3 machangwei06 rs2 [root@mcw03 ~]#
如果是访问12次呢,我们可以看到,的确还是1:2:3的概率
[root@mcw03 ~]# for i in {1..12}; do curl 10.0.0.14; done hello rs3 machangwei06 rs2 machangwei05 rs1 hello rs3 hello rs3 machangwei06 rs2 hello rs3 machangwei06 rs2 machangwei05 rs1 hello rs3 hello rs3 machangwei06 rs2 [root@mcw03 ~]#