听了老师课程之后,自己去搞了一下,从装虚拟机开始都是第一次。。。果然还是买云服务器买多了,手跟脚一样僵硬,踩了几个坑,写个文档记录一下自己的理解。。。
环境准备
系统版本:CentOS 7
虚拟机:
- 192.168.163.128
- 192.168.163.129
- 192.168.163.130
VIP,RIP,CIP,DIP
DIP:192.168.163.128 作为 Lvs 服务器,就是 Director IP (DIP)
VIP:LVS 服务器的作用就是搭载一块虚拟网卡,这个网卡就是 Virtual IP(VIP 即虚拟IP)
RIP:192.168.163.129,192.168.163.130 作为 Real Server (RIP 即真实服务器)
CIP:客户ip,Client IP(CIP)
模型搭建
首先,确定 192.168.163.128 作为 LVS 服务器,即 node01
负载的服务器 192.168.163.129,192.168.163.130 为 node02,node03
DR 模型
node01 服务器作为 DIP,LVS 服务器,它的作用是为客户端访问的连接去做 LB,而 DR模型,在 RIP 的服务器里,隐藏住他持有 VIP 路径
这样做的好处在于当 CIP 下一跳,跳进了 RIP 所在网段的时候,交换机将请求来的地址丢给了 LVS,因为只有 LVS 对外暴露它拥有 VIP 地址,所以交换机一定会把这个请求交给它,再由它去交给不同的服务器去完成请求
node01:
第一步:ifconfig 查看网卡
ifconfig ens33:1 192.168.163.100/24 给网卡配一个子接口1,地址 192.168.163.100 子网掩码255.255.255.0
/24 代表了255.255.255.0 如果不写 /24,需要写上 netmask 255.255.255.0
注意:如果配错网卡地址,或写错 ip,需要写 ifconfig ens33:1 down
[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.163.128 netmask 255.255.255.0 broadcast 192.168.163.255
inet6 fe80::73d5:393f:cb01:e22a prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:fb:89:c8 txqueuelen 1000 (Ethernet)
RX packets 1772 bytes 125204 (122.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 478 bytes 41353 (40.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@localhost ~]# ifconfig ens33:1 192.168.163.100/24
node02,node03
这两个服务器里,需要先调整 arp 协议,用以隐藏 VIP 地址
注意,调整协议时不要用 vi 命令去操作,用 vi 命令即使改掉了数值,保存时也会报错
另有一个点,在调整完协议后,给 lo (环回接口)增加子接口时,不能使用 /24,需要手写 255.255.255.255,这是因为子网掩码要和 ip 地址发生一次按位与的计算,来生成路由条目,如果写成 /24,那么就意味着从环回接口也能抵达配置的 VIP 的网络,如:192.168.163.100,这个地址就能访问 192.168.163.0 这个网段。这种情况就会造成如果访问这个网段的地址如:ping 192.168.163.1 ,那么环回接口就和网卡地址的路径一样,都可以对外访问到,而对于内核来说,物理网卡跟虚拟网卡对比,虚拟网卡一定比物理网卡离得近,所以这个访问一定会发给环回接口,但是由于环回接口的特性,会发回给自己,所以这个请求永远出不去了,所以为了规避这种情况,所以环回接口的子接口的子网掩码必须是 255.255.255.255
node02:
[root@localhost ~]# cd /proc/sys/net/ipv4/conf
[root@localhost conf]# ll
总用量 0
dr-xr-xr-x. 1 root root 0 12月 21 09:35 all
dr-xr-xr-x. 1 root root 0 12月 21 09:35 default
dr-xr-xr-x. 1 root root 0 12月 21 11:19 ens33
dr-xr-xr-x. 1 root root 0 12月 21 11:19 lo
[root@localhost conf]# cd ens33
[root@localhost ens33]# ls
accept_local arp_accept arp_ignore disable_policy forwarding medium_id proxy_arp_pvlan secure_redirects src_valid_mark
accept_redirects arp_announce arp_notify disable_xfrm log_martians promote_secondaries route_localnet send_redirects tag
accept_source_route arp_filter bootp_relay force_igmp_version mc_forwarding proxy_arp rp_filter shared_media
[root@localhost ens33]# cat arp_ignore
0
[root@localhost ens33]# echo 1 > arp_ignore
[root@localhost ens33]# cat arp_ignore
1
[root@localhost ens33]# echo 2 > arp_announce
[root@localhost ens33]# cat arp_announce
2
[root@localhost ens33]# pwd
/proc/sys/net/ipv4/conf/ens33
[root@localhost ens33]# cd ..
[root@localhost conf]# ll
总用量 0
dr-xr-xr-x. 1 root root 0 12月 21 09:35 all
dr-xr-xr-x. 1 root root 0 12月 21 09:35 default
dr-xr-xr-x. 1 root root 0 12月 21 11:19 ens33
dr-xr-xr-x. 1 root root 0 12月 21 11:19 lo
[root@localhost conf]# cd all
[root@localhost all]# ll
总用量 0
-rw-r--r--. 1 root root 0 12月 21 11:24 accept_local
-rw-r--r--. 1 root root 0 12月 21 11:24 accept_redirects
-rw-r--r--. 1 root root 0 12月 21 09:35 accept_source_route
-rw-r--r--. 1 root root 0 12月 21 11:24 arp_accept
-rw-r--r--. 1 root root 0 12月 21 11:24 arp_announce
-rw-r--r--. 1 root root 0 12月 21 11:24 arp_filter
-rw-r--r--. 1 root root 0 12月 21 11:24 arp_ignore
-rw-r--r--. 1 root root 0 12月 21 11:24 arp_notify
-rw-r--r--. 1 root root 0 12月 21 11:24 bootp_relay
-rw-r--r--. 1 root root 0 12月 21 11:24 disable_policy
-rw-r--r--. 1 root root 0 12月 21 11:24 disable_xfrm
-rw-r--r--. 1 root root 0 12月 21 11:24 force_igmp_version
-rw-r--r--. 1 root root 0 12月 21 11:24 forwarding
-rw-r--r--. 1 root root 0 12月 21 11:24 log_martians
-r--r--r--. 1 root root 0 12月 21 11:24 mc_forwarding
-rw-r--r--. 1 root root 0 12月 21 11:24 medium_id
-rw-r--r--. 1 root root 0 12月 21 09:35 promote_secondaries
-rw-r--r--. 1 root root 0 12月 21 11:24 proxy_arp
-rw-r--r--. 1 root root 0 12月 21 11:24 proxy_arp_pvlan
-rw-r--r--. 1 root root 0 12月 21 11:24 route_localnet
-rw-r--r--. 1 root root 0 12月 21 09:35 rp_filter
-rw-r--r--. 1 root root 0 12月 21 11:24 secure_redirects
-rw-r--r--. 1 root root 0 12月 21 11:24 send_redirects
-rw-r--r--. 1 root root 0 12月 21 11:24 shared_media
-rw-r--r--. 1 root root 0 12月 21 11:24 src_valid_mark
-rw-r--r--. 1 root root 0 12月 21 11:24 tag
[root@localhost all]# ls
accept_local arp_accept arp_ignore disable_policy forwarding medium_id proxy_arp_pvlan secure_redirects src_valid_mark
accept_redirects arp_announce arp_notify disable_xfrm log_martians promote_secondaries route_localnet send_redirects tag
accept_source_route arp_filter bootp_relay force_igmp_version mc_forwarding proxy_arp rp_filter shared_media
[root@localhost all]# echo 1 > arp_ignore
[root@localhost all]# echo 2 > arp_announce
[root@localhost all]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.163.129 netmask 255.255.255.0 broadcast 192.168.163.255
inet6 fe80::73d5:393f:cb01:e22a prefixlen 64 scopeid 0x20<link>
inet6 fe80::4d28:addf:e06f:7fad prefixlen 64 scopeid 0x20<link>
inet6 fe80::2009:45da:3193:99ed prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:eb:78:a8 txqueuelen 1000 (Ethernet)
RX packets 3098 bytes 216053 (210.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 848 bytes 78091 (76.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 64 bytes 5568 (5.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 64 bytes 5568 (5.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@localhost all]# ifconfig lo:1 192.168.163.100 netmask 255.255.255.255
node03:
[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/conf/ens33/arp_ignore
[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
[root@localhost ~]# echo 2 > /proc/sys/net/ipv4/conf/ens33/arp_announce
[root@localhost ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
[root@localhost ~]# ifconfig lo:1 192.168.163.100 netmask 255.255.255.255
这样,RIP 的协议就准备好了,然后需要准备一个对外的服务以供 CIP 访问,这一步同样在 node02 与 node03 两台服务器中准备
首先,需要先去阿里巴巴的镜像站去换源
https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11gBoOgL
换完源之后,执行
yum clean all *# 清除系统所有的yum缓存*
yum makecache *# 生成yum缓存*
注意,因为是本地测试环境,需要先关掉防火墙,以供 CIP 访问
[root@localhost html]# systemctl stop firewalld.service
[root@localhost html]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
关闭完防火墙之后,下载一个 httpd,并写一个默认页面
yum install httpd -y #下载httpd
service httpd start #启动 httpd
vi /var/www/html/index.html #创建并编写页面
hello from 192.168.163.129 #页面内容
http80 准备完毕!
回到 node01,准备 ipvsadm
LVS 被内置进了 Linux 内核,所以不需要下载,但是要下载一个使用程序来操作它
下载完之后,操作命令是 ipvsadm
- -A 表示入站规则
- -t 表示 TCP 连接
- 192.168.163.100:80 表示 ip + 端口号,即 VIP
- -s 配置负载均衡算法
- rr 轮询算法
具体操作命令:https://blog.csdn.net/developerof/article/details/90214977
在加入入站规则后,要再添加负载的命令,将129,130两台服务器负载
[root@localhost ~]# yum install ipvsadm
[root@localhost ~]# ipvsadm -A -t 192.168.163.100:80 -s rr
[root@localhost ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.163.100:80 rr
[root@localhost ~]# ipvsadm -a -t 192.168.163.100:80 -r 192.168.163.129 -g -w 1
[root@localhost ~]# ipvsadm -a -t 192.168.163.100:80 -r 192.168.163.130 -g -w 1
[root@localhost ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.163.100:80 rr
-> 192.168.163.129:80 Route 1 0 0
-> 192.168.163.130:80 Route 1 0 0
```# Lvs 四层负载均衡
## 环境准备
系统版本:CentOS 7
虚拟机:
- 192.168.163.128
- 192.168.163.129
- 192.168.163.130
- 192.168.163.131
## VIP,RIP,CIP,DIP
***DIP***:192.168.163.128 作为 Lvs 服务器,就是 Director IP (DIP)
***VIP***:LVS 服务器的作用就是搭载一块虚拟网卡,这个网卡就是 Virtual IP(VIP 即虚拟IP)
***RIP***:192.168.163.129,192.168.163.130 作为 Real Server (RIP 即真实服务器)
***CIP***:客户ip,Client IP(CIP)
## 模型搭建
首先,确定 192.168.163.128 作为 LVS 服务器,即 node01
负载的服务器 192.168.163.129,192.168.163.130 为 node02,node03
### DR 模型
![](./img/LVS 模型.png)
node01 服务器作为 DIP,LVS 服务器,它的作用是为客户端访问的连接去做 LB,而 DR模型,在 RIP 的服务器里,隐藏住他持有 VIP 路径
这样做的好处在于当 CIP 下一跳,跳进了 RIP 所在网段的时候,交换机将请求来的地址丢给了 LVS,因为只有 LVS 对外暴露它拥有 VIP 地址,所以交换机一定会把这个请求交给它,再由它去交给不同的服务器去完成请求
而 RIP 隐藏 VIP,
#### node01:
第一步:**ifconfig** 查看网卡
**ifconfig ens33:1 192.168.163.100/24** 给网卡配一个子接口1,地址 192.168.163.100 子网掩码255.255.255.0
/24 代表了255.255.255.0 如果不写 /24,需要写上 netmask 255.255.255.0
注意:如果配错网卡地址,或写错 ip,需要写 **ifconfig ens33:1 down**
```shell
[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.163.128 netmask 255.255.255.0 broadcast 192.168.163.255
inet6 fe80::73d5:393f:cb01:e22a prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:fb:89:c8 txqueuelen 1000 (Ethernet)
RX packets 1772 bytes 125204 (122.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 478 bytes 41353 (40.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@localhost ~]# ifconfig ens33:1 192.168.163.100/24
node02,node03
这两个服务器里,需要先调整 arp 协议,用以隐藏 VIP 地址
注意,调整协议时不要用 vi 命令去操作,用 vi 命令即使改掉了数值,保存时也会报错
另有一个点,在调整完协议后,给 lo (环回接口)增加子接口时,不能使用 /24,需要手写 255.255.255.255,这是因为子网掩码要和 ip 地址发生一次按位与的计算,来生成路由条目,如果写成 /24,那么就意味着从环回接口也能抵达配置的 VIP 的网络,如:192.168.163.100,这个地址就能访问 192.168.163.0 这个网段。这种情况就会造成如果访问这个网段的地址如:ping 192.168.163.1 ,那么环回接口就和网卡地址的路径一样,都可以对外访问到,而对于内核来说,物理网卡跟虚拟网卡对比,虚拟网卡一定比物理网卡离得近,所以这个访问一定会发给环回接口,但是由于环回接口的特性,会发回给自己,所以这个请求永远出不去了,所以为了规避这种情况,所以环回接口的子接口的子网掩码必须是 255.255.255.255
node02:
[root@localhost ~]# cd /proc/sys/net/ipv4/conf
[root@localhost conf]# ll
总用量 0
dr-xr-xr-x. 1 root root 0 12月 21 09:35 all
dr-xr-xr-x. 1 root root 0 12月 21 09:35 default
dr-xr-xr-x. 1 root root 0 12月 21 11:19 ens33
dr-xr-xr-x. 1 root root 0 12月 21 11:19 lo
[root@localhost conf]# cd ens33
[root@localhost ens33]# ls
accept_local arp_accept arp_ignore disable_policy forwarding medium_id proxy_arp_pvlan secure_redirects src_valid_mark
accept_redirects arp_announce arp_notify disable_xfrm log_martians promote_secondaries route_localnet send_redirects tag
accept_source_route arp_filter bootp_relay force_igmp_version mc_forwarding proxy_arp rp_filter shared_media
[root@localhost ens33]# cat arp_ignore
0
[root@localhost ens33]# echo 1 > arp_ignore
[root@localhost ens33]# cat arp_ignore
1
[root@localhost ens33]# echo 2 > arp_announce
[root@localhost ens33]# cat arp_announce
2
[root@localhost ens33]# pwd
/proc/sys/net/ipv4/conf/ens33
[root@localhost ens33]# cd ..
[root@localhost conf]# ll
总用量 0
dr-xr-xr-x. 1 root root 0 12月 21 09:35 all
dr-xr-xr-x. 1 root root 0 12月 21 09:35 default
dr-xr-xr-x. 1 root root 0 12月 21 11:19 ens33
dr-xr-xr-x. 1 root root 0 12月 21 11:19 lo
[root@localhost conf]# cd all
[root@localhost all]# ll
总用量 0
-rw-r--r--. 1 root root 0 12月 21 11:24 accept_local
-rw-r--r--. 1 root root 0 12月 21 11:24 accept_redirects
-rw-r--r--. 1 root root 0 12月 21 09:35 accept_source_route
-rw-r--r--. 1 root root 0 12月 21 11:24 arp_accept
-rw-r--r--. 1 root root 0 12月 21 11:24 arp_announce
-rw-r--r--. 1 root root 0 12月 21 11:24 arp_filter
-rw-r--r--. 1 root root 0 12月 21 11:24 arp_ignore
-rw-r--r--. 1 root root 0 12月 21 11:24 arp_notify
-rw-r--r--. 1 root root 0 12月 21 11:24 bootp_relay
-rw-r--r--. 1 root root 0 12月 21 11:24 disable_policy
-rw-r--r--. 1 root root 0 12月 21 11:24 disable_xfrm
-rw-r--r--. 1 root root 0 12月 21 11:24 force_igmp_version
-rw-r--r--. 1 root root 0 12月 21 11:24 forwarding
-rw-r--r--. 1 root root 0 12月 21 11:24 log_martians
-r--r--r--. 1 root root 0 12月 21 11:24 mc_forwarding
-rw-r--r--. 1 root root 0 12月 21 11:24 medium_id
-rw-r--r--. 1 root root 0 12月 21 09:35 promote_secondaries
-rw-r--r--. 1 root root 0 12月 21 11:24 proxy_arp
-rw-r--r--. 1 root root 0 12月 21 11:24 proxy_arp_pvlan
-rw-r--r--. 1 root root 0 12月 21 11:24 route_localnet
-rw-r--r--. 1 root root 0 12月 21 09:35 rp_filter
-rw-r--r--. 1 root root 0 12月 21 11:24 secure_redirects
-rw-r--r--. 1 root root 0 12月 21 11:24 send_redirects
-rw-r--r--. 1 root root 0 12月 21 11:24 shared_media
-rw-r--r--. 1 root root 0 12月 21 11:24 src_valid_mark
-rw-r--r--. 1 root root 0 12月 21 11:24 tag
[root@localhost all]# ls
accept_local arp_accept arp_ignore disable_policy forwarding medium_id proxy_arp_pvlan secure_redirects src_valid_mark
accept_redirects arp_announce arp_notify disable_xfrm log_martians promote_secondaries route_localnet send_redirects tag
accept_source_route arp_filter bootp_relay force_igmp_version mc_forwarding proxy_arp rp_filter shared_media
[root@localhost all]# echo 1 > arp_ignore
[root@localhost all]# echo 2 > arp_announce
[root@localhost all]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.163.129 netmask 255.255.255.0 broadcast 192.168.163.255
inet6 fe80::73d5:393f:cb01:e22a prefixlen 64 scopeid 0x20<link>
inet6 fe80::4d28:addf:e06f:7fad prefixlen 64 scopeid 0x20<link>
inet6 fe80::2009:45da:3193:99ed prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:eb:78:a8 txqueuelen 1000 (Ethernet)
RX packets 3098 bytes 216053 (210.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 848 bytes 78091 (76.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 64 bytes 5568 (5.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 64 bytes 5568 (5.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@localhost all]# ifconfig lo:1 192.168.163.100 netmask 255.255.255.255
node03:
[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/conf/ens33/arp_ignore
[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
[root@localhost ~]# echo 2 > /proc/sys/net/ipv4/conf/ens33/arp_announce
[root@localhost ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
[root@localhost ~]# ifconfig lo:1 192.168.163.100 netmask 255.255.255.255
这样,RIP 的协议就准备好了,然后需要准备一个对外的服务以供 CIP 访问,这一步同样在 node02 与 node03 两台服务器中准备
首先,需要先去阿里巴巴的镜像站去换源
https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11gBoOgL
换完源之后,执行
yum clean all *# 清除系统所有的yum缓存*
yum makecache *# 生成yum缓存*
注意,因为是本地测试环境,需要先关掉防火墙,以供 CIP 访问
[root@localhost html]# systemctl stop firewalld.service
[root@localhost html]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
关闭完防火墙之后,下载一个 httpd,并写一个默认页面
yum install httpd -y #下载httpd
service httpd start #启动 httpd
vi /var/www/html/index.html #创建并编写页面
hello from 192.168.163.129 #页面内容
http80 准备完毕!
回到 node01,准备 ipvsadm
LVS 被内置进了 Linux 内核,所以不需要下载,但是要下载一个使用程序来操作它
下载完之后,操作命令是 ipvsadm
- -A 表示入站规则
- -t 表示 TCP 连接
- 192.168.163.100:80 表示 ip + 端口号,即 VIP
- -s 配置负载均衡算法
- rr 轮询算法
具体操作命令:https://blog.csdn.net/developerof/article/details/90214977
在加入入站规则后,要再添加负载的命令,将129,130两台服务器负载
[root@localhost ~]# yum install ipvsadm
[root@localhost ~]# ipvsadm -A -t 192.168.163.100:80 -s rr
[root@localhost ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.163.100:80 rr
[root@localhost ~]# ipvsadm -a -t 192.168.163.100:80 -r 192.168.163.129 -g -w 1
[root@localhost ~]# ipvsadm -a -t 192.168.163.100:80 -r 192.168.163.130 -g -w 1
[root@localhost ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.163.100:80 rr
-> 192.168.163.129:80 Route 1 0 0
-> 192.168.163.130:80 Route 1 0 0