通过KeepalivedLVS搭建DR模式的高可用集群系统保姆级教程
通过Keepalived+LVS搭建DR模式的高可用集群系统保姆级教程
Keepalived+LVS DR模式高可用集群搭建
一、ipvs与ipvsadm
1.1、ipvs与ipvsadm是什么
LVS 由2部分程序组成【ipvs】 和【 ipvsadm】:
《1》ipvs(ip virtual server):是一段代码工作在内核空间netfilter的PREROUTING后面,INPUT前面的框架,叫ipvs,是真正生效实现调度的代码。
《2》 ipvsadm:是工作在用户空间,负责为ipvs内核框架编写规则,定义谁是集群服务,而谁是后端真实的服务器(Real Server)
简单的说:ipvsadm是Linux下的LVS虚拟服务器的管理工具,LVS工作于内核空间,而ipvsadm则提供了用户空间的接口。
1.2、安装部署ipvsadm
IPVS的官方网站为【http://www.linuxvirtualserver.org/software/ipvs.html】, 提供的软件包有源码方式的也有rpm方式的,这里介绍通过yum方式安装IPVS,这里采用的操作系统为Almalinux9.3版本,因此,在服务器上直接执行如下操作进行安装:
#使用yum安装IPVS
yum install ipvsadm -y
#验证IPVS是否安装成功(若执行该命令后会显示一长串的语法提示则表示成功,否则失败)
ipvsadm --help
#使用IPVS源码进行安装
#1-下载IPVS的源码包到/data目录下
wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.26.tar.gz -c 0 -P /data
#2-进入/data目录下解压IPVS源码压缩包,并进入IPVS的源码目录内
cd /data
tar -zxvf ipvsadm-1.26.tar.gz
cd ipvsadm-1.26/
#3-编译IPVS源码
make
#3.1-当编译IPVS源码时出现错误,是由于当前系统环境缺少了编译IPVS的依赖包,需要安装这些依赖包
yum install -y gcc-c++ libnl* libpopt* popt-static
#4-安装IPVS
make install
#5-验证IPVS是否安装成功(若执行该命令后可以显示一大串使用语法内容则表示IPVS安装成功,否则失败)
ipvsadm -h
注意:在使用源码进行安装IPVS的时候可能会出现的错误有:
《1》“ip_vs.h:15:29: 致命错误:netlink/netlink.h:没有那个文件或目录”。
《2》“ake[1]: gcc:命令未找到 make[1]: *** [libipvs.o] 错误 127”。
当出现这些类似的编译错误时,是由于当前系统缺失了编译IPVS源码所需的依赖包导致的,此时只需要执行【yum install -y gcc-c++ libnl libpopt popt-static**】命令将所需依赖包全部安装上后再次编译就可以正常编译成功了。
二、使用Keepalived搭建LVS高可用性集群系统
2.1、应用环境准备
准备四台物理机或虚拟机,使⽤RHEL9/Almalinux9.3及其更高系统(192.168.1.9、192.168.1.36、192.168.1.37、192.168.1.38)。
应用环境准备
序号 | 节点类型 | IP地址规划 | 类型 |
1 | 主Director Server (即LVS) | ens33:192.168.1.9 | Public IP |
VIP: 192.168.1.226 | Virtual IP | ||
2 | 备Director Server | ens33:192.168.1.36 | Public IP |
3 | Real Server 1 | ens33:192.168.1.37 | Public IP |
lo: 192.168.1.226 | Virtual IP | ||
4 | Real Server 2 | ens33:192.168.1.38 | Public IP |
lo: 192.168.1.226 | Virtual IP |
,可以对WWW服务、FTP服务、MAIL服务等进行负载均衡。下面通过3个实例详细讲述如何搭建WWW服务的高可用LVS集群系统,以及基于DR模式的LVS集群配置。地址规划如下表所示。
2.2、在Real Server服务器上安装部署Apache的Web服务
现在两台Real Server服务器(192.168.1.37、192.168.1.38)上安装部署最基础的Apache的Web服务,详细操作流程如下:
#在Real Server服务器上安装部署Apache的Web流程
#1-快捷安装Apache Web服务
yum install httpd -y
#2-启动Apache Web服务
systemctl start httpd
systemctl status httpd
#3-进入httpd的默认网站目录(/var/www/html/)创建一个名为index.html的文件
#(且直接将该文件的内容设置为该服务器的IP地址)
#【Apache的默认配置路径是(/etc/httpd);默认配置文件是(/etc/httpd/conf/httpd.conf)】
cd /var/www/html/
ip addr
echo "192.168.1.38" >> index.html
#4-永久放开服务器的80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-port
#5-在浏览器中分别输入Real Server服务器的IP地址查看是否可以显示自己服务器的IP地址内容(建议使用浏览器的无痕标签,防止有缓存影响)
192.168.1.37
192.168.1.38
2.3、在Director Server服务器上安装Keepalived
我们先在【192.168.1.9】服务器上配置,让后再将配置好的内容复制一份传输到另外一台服务器【192.168.1.36】上修改即可,详细的操作流程如下:
2.4、在Director Server服务器上解析Keepalived配置内容
Keepalived的配置非常简单,仅需要一个配置文件即可完成对HA cluster和LVS服务节点监控。在通过Keepalived搭建高可用的LVS集群实例中(主、备Director Server都需要安Keepalived软件),安装成功后,默认的配置文件路径为/etc/Keepalived/Keepalived.conf。一个完整的keepalived配置文件由三个部分组成,分别是全局定义部分、vrrp实例定义部分以及虚拟服务器定义部分,下面详细介绍这个配置文件中每个选项的详细含义和用法。
2.4.1、Keepalived【全局配置】模块及其说明
#Keepalived的全局配置内容
global_defs {
notification_email {
#设置报警邮件地址,可以设置多个;每行设置一个邮件地址(注意,如果要开启邮件报警,需要开启本机的Sendmail服务)
dba.ck@gmail.com
ck@163.com
}
notification_email_from Keepalived@localhost #设置邮件的发送地址
smtp_server 192.168.200.1 #设置smtp server地址
smtp_connect_timeout 30 #设置连接smtp server的超时时间
router_id LVS_DEVEL #表示运行Keepalived服务器的一个
#标识。发邮件时显示在邮件主题中的信息
}
2.4.2、Keepalived【vrrp实例配置】模块及其说明
#Keepalived的vrrp实例配置内容
vrrp_instance VI_1 {
state MASTER #指定Keepalived的角色,MASTER表示此主机是主服务器,BACKUP表示此主机是备用服务器
interface eth0 #指定HA监测网络的接口(可通过ip addr查看服务器的物理网卡名称)
virtual_router_id 51 #虚拟路由标识,这个标识是一个数字(同一个vrrp实例使用唯一的标识)即同一个vrrp_instance下,MASTER和BACKUP必须是一致的
priority 100 #定义优先级,数字越大,优先级越高。在一个vrrp_instance下,MASTER的优先级必须大于BACKUP的优先级
advert_int 1 #设定MASTER与BACKUP负载均衡器之间同步检查的时间间隔(单位是:秒)
authentication { #设定验证类型和密码(MASTER与BACKUP必须使用相同的密码,才能正常通信)
auth_type PASS #设置验证类型,主要有PASS和AH两种
auth_pass 1111 #设置验证密码,在一个vrrp_instance下,
}
virtual_ipaddress { #设置虚拟IP地址,可以设置多个虚拟IP地址,每行一个。
192.168.1.226
}
}
2.4.3、Keepalived【虚拟服务器配置】模块及其说明
#Keepalived的虚拟服务器配置内容及其说明
virtual_server 192.168.1.226 80 { #设置虚拟服务器,需要指定虚拟IP地址和服务端口,IP与端口之间用空格隔开
delay_loop 6 #设置运行情况检查时间(单位是:秒)
lb_algo rr #设置负载调度算法,这里设置为rr(即轮询算法)
lb_kind DR #设置LVS实现负载均衡的机制,有NAT、TUN、和DR三个模式可选
persistence_timeout 50 #会话保持时间(单位是:秒)这个选项对动态网页是非常有用的,为集群系统中的session共享提供了一个很好的解决方案。有了这个会话保持功能,用户的请求会被一直分发到某个服务节点,直到超过这个会话的保持时间【需要注意的是,这个会话保持时间是最大无响应超时时间(也就是说,用户在操作动态页面时,如果在50秒内没有执行任何操作,那么接下来的操作会被分发到另外节点,但是如果用户一直在操作动态页面,则不受50秒的时间限制)】。
protocol TCP #指定转发协议类型,有TCP和UDP两种
real_server 192.168.1.37 80 { #配置服务节点1,需要指定real server的真实IP地址和端口,IP与端口之间用空格隔开
weight 3 #配置服务节点的权值,权值大小用数字表示,数字越大,权值越高,设置权值的大小可以为不同性能的服务器分配不同的负载,可以为性能高的服务器设置较高的权值,而为性能较低的服务器设置相对较低的权值,这样才能合理地利用和分配了系统资源
TCP_CHECK { #real server的状态检测设置部分(单位是:秒)
connect_timeout 3 #表示3秒无响应超时
retry 3 #表示重试次数
delay_before_retry 3 #表示重试间隔
}
}
real_server 192.168.1.38 80 { #配置服务节点2
weight 1
TCP_CHECK {
connect_timeout 3
retry 3
delay_before_retry 3
}
}
}
2.4.4、在Director Server服务器上配置Keepalived内容
在配置Keepalived.conf时,需要特别注意配置文件的语法格式,因为Keepalived在启动时并不检测配置文件的正确性,即使没有配置文件,Keepalived也照样能够启动,所以一定要保证配置文件正确。在默认情况下,Keepalived在启动时会查找【/etc/Keepalived/Keepalived.conf】配置文件,如果配置文件放在了其他路径下,可以通过【Keepalived -f】参数指定配置文件的路径即可。
#一、先在Direcotr Server主服务器(192.168.1.9)上配置Keepalived内容
#1-进入keepalived的默认配置路径
cd /etc/keepalived/
vi keepalived.conf
#2-主节点keepalived的配置文件【/etc/keepalived/keepalived.conf】内容
global_defs {
notification_email {
dba.ck@gmail.com
ck@163.com
}
notification_email_from keepalived@localhost
smtp_server 192.168.200.1
smtp_connect_timeout 30
router_id LVS_DEVEL
}
vrrp_instance HA_1 {
state MASTER
interface ens33
virtual_router_id 151
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass qwer1234
}
virtual_ipaddress {
192.168.1.226
}
}
virtual_server 192.168.1.226 80 {
delay_loop 6
lb_algo rr
lb_kind DR
#persistence_timeout 50
protocol TCP
real_server 192.168.1.37 80 {
weight 2
TCP_CHECK {
connect_timeout 3
retry 3
delay_before_retry 3
}
}
real_server 192.168.1.38 80 {
weight 1
TCP_CHECK {
connect_timeout 3
retry 3
delay_before_retry 3
}
}
}
#二、后在Direcotr Server备用服务器(192.168.1.36)上配置Keepalived内容
#1-将主服务器上配置好的keepalived.conf配置文件复制传输一份给备用服务器
scp keepalived.conf root@192.168.1.36:/etc/keepalived/
#2-进入备用服务器的keepalived的默认配置文件路径编辑配置文件(即:修改keepalived.conf配置文件中的【state MASTER】更改为【state BACKUP】;【priority 100】更改为一个较小的值,这里改为【priority 80】)后保存;
cd /etc/keepalived/
vi keepalived.conf
#三、验证测试
#1-先分别打开Director Server的新终端,并且监测日志方便观察
tail -f /var/log/message
#2-先启动Dirictor Server的主节点服务器(192.168.1.9)的keepalived服务,并且查看是否绑定了vip【192.168.1.226】
systemctl status keepalived.service
systemctl start keepalived.service
ip addr
#3-查看Director Server主服务器的负载均衡状态(若提示没有ipvsadm命令则需要执行【yum install ipvsadm -y】命令安装即可)
ipvsadm -L -n
#4-建议在浏览器的无痕标签页中输入VIP地址(192.168.1.226)查看(此时会长时间转圈,无法显示此页内容,192.168.1.226响应时间太长)
192.168.1.226
《1》先在Direcotr Server主服务器(192.168.1.9)上配置Keepalived内容如下图所示:
《2》后在Direcotr Server备用服务器(192.168.1.36)上配置Keepalived内容如下图所示:
《3》验证测试keepalived的主节点和备用节点
2.4.5、在Real Server服务器上配置VIP节点
在LVS的DR和Tun模式下,用户的访问请求到达真实服务器后,是真实服务器直接返回给用户的,而不再经过前端的Director Server,因此,就需要在每个Real server节点上增加虚拟的VIP地址,这样数据才能直接返回给用户,增加VIP地址的操作可以通过创建脚本的方式来实现,创建文件/etc/init.d/lvsrs。
由于虚拟IP,也就是VIP地址,是Director Server和所有的Real server共享的,如果有ARP请求VIP地址时,Director Server与所有Real server都做应答的话,就出现问题了,因此,需要禁止Real server响应ARP请求。而lvsrs脚本的作用就是使Real Server不响应arp请求。
#在回环设备【lo】上绑定了一个虚拟IP地址【192.168.1.226】,并设定其子网掩码为255.255.255.255,与Director Server上的虚拟IP保持互通,然后禁止了本机的ARP请求的脚本内容:
#!/bin/bash
VIP=192.168.1.226
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
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
sysctl -p
#end
#真正实现在Real Server服务器上配置VIP节点脚本操作流程
#1-先安装脚本运行包
yum install chkconfig -y
#2-进入脚本运行环境目录
cd /etc/init.d/
mkdir functions
#3-创建实现【Real Server】服务器上配置VIP节点的脚本文件
cd /etc/init.d/functions
vi lvsrs
#3.1-lvsrs文件实现配置VIP节点的脚本内容:
#!/bin/bash
#description : Start Real Server
VIP=192.168.1.226
. /etc/rc.d/init.d/functions
case "$1" in
start)
echo " Start LVS of Real Server"
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev lo:0
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
;;
stop)
/sbin/ifconfig lo:0 down
echo "close LVS Director server"
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
#4-修改lvsrs文件的权限并启动
chmod 755 /etc/init.d/functions/lvsrs
/etc/init.d/functions/lvsrs start
#5-查看本机的路由信息
ip route
等Real Server服务器否配置上VIP节点后再到浏览器中输入VIP地址查看httpd网站是否可以正常显示:
三、测试高可用LVS负载均衡集群系统
3.1、运行高可用LVS负载均衡集群系统
#运行高可用LVS负载均衡集群系统流程(DR模式)
#1-检查Director Server的主备服务器(192.168.1.9、192.168.1.36)的keepalived服务是否运行(若未运行则启动)
systemctl status keepalived.service
systemctl start keepalived.service
#2-检查Real Server真实网站等服务器((192.168.1.37、192.168.1.38))的回环设备lo是否绑定上VIP(192.168.1.226)(若没有绑定上则运行【/etc/init.d/functions/lvsrs start】命令绑定)
ip addr
/etc/init.d/functions/lvsrs start
3.2、安装压力测试工具Siege并压测集群
#安装部署压力测试工具Siege流程
#0-安装源码编译所需的常用依赖包
yum install -y gcc gcc-c++ wget popt-devel openssl openssl-devel
#1-下载压力测试工具Siege源码包并解压
wget https://download.joedog.org/siege/siege-4.1.7.tar.gz -c 0 -P /data
cd /data
tar -zxvf siege-4.1.7.tar.gz
#2-检查当前系统是否满足Siege的编译环境,且指定编译后的路径
cd /data/siege-4.1.7/
./configure --prefix=/usr/local/siege --with-ssl=/usr/local/openssl
#3-编译安装Siege
make
make install
#4-将压力测试工具Siege设置为全局可用
ln -s /usr/local/siege/bin/siege /usr/bin/siege
#5-查看压力测试工具Siege的帮助
siege -h
#压力测试工具Siege的常用示例
#1-实现200个并发对【http://192.168.1.226】发送1000次请求示例
siege -c 200 -r 1000 http://192.168.1.226
#2-实现200个并发对【urls.txt】文件中的所有网址发送1000次请求示例
siege -c 200 -r 1000 -f urls.txt
#3-实现200个并发对【urls.txt】文件中的随机选取的网址发送1000次请求示例
siege -c 200 -r 1000 -f urls.txt -i
#4-实现0延迟200个并发对【urls.txt】文件中的随机选取的网址发送1000次请求示例
siege -c 200 -r 1000 -f urls.txt -i -b
#5-发送post请求,在网址后添加POST地址,且POST后这是参数
siege -c 200 -r 1000 http://www.baidu.com/ POST k1=v1&k2=v2
压力测试工具Siege的常用参数说明
序号 | 压力测试工具Siege常用参数 | 说明 |
1 | -V | 显示版本号 |
2 | -h | 显示帮助信息 |
3 | -C | 显示当前配置信息 |
4 | -g | 获取http头信息 |
5 | -p | 显示整个页面内容 |
6 | -c NUM | 并发用户数量(默认10个) |
7 | -r NUM | 运行的次数 |
8 | -d NUM | 随机延迟秒数 |
9 | -b | 请求没有延迟(即:0延迟) |
10 | -i | 模拟网络用户随机点击URL |
11 | -f | 选择指定的URL文件 |
12 | -t NUM | 持续测试的时间(秒(如10S),分钟(10M),小时(10H)) |
13 | -l –log | 运行结束,将统计数据保存到日志文件中siege .log, 默认位于【/usr/local/var/siege .log】中,也可在.siegerc中自定义 |
14 | -H | 给请求添加头信息,支持添加多个请求头信息 |
15 | -T | 给请求设置Content-Type |
16 | -A | 给请求设置User-Agent |
压力测试工具结果参数说明
序号 | 压力测试工具Siege结果说明 | 说明 |
1 | Transactions | 命中的总次数 |
2 | Availability | 命中率 |
3 | Elapsed time | 整个压测花费的总时间(即:从第一个开始到最后一个结束的时间总合) |
4 | Data transferred | 整个压测数据传输的总大小 |
5 | Response time | 响应时间(即:响应每个模拟用户请求所花费的平均时间) |
6 | Transaction rate | 事务速率(即:服务器每秒能够处理的平均事务数量;事务除以经过的时间) |
7 | Throughput | 吞吐量(从服务器到所有模拟用户每秒传输的平均字节数) |
8 | Concurrency | 并发(同时连接的平均数量) |
9 | Successful transactions | 成功事务次数 |
10 | Failed transactions | 失败事务次数 |
11 | Longest transaction | 最长事务时间 |
12 | Shortest transaction | 最短事务时间 |
压测高可用LVS负载均衡集群系统(使用新的Linux服务器【192.168.1.11】对集群进行压测)
#在同一网络内用一台新的服务器(192.168.1.11)来压测我们搭建好的高可用LVS负载均衡集群系统示例
#(如:模拟200个用户都发起1000次请求到【http://192.168.1.226】链接)
siege -c 200 -r 1000 http://192.168.1.226
#2-在压测的同时可以到Director Server的服务器上查看LVS的负载均衡连接情况
#2.1-查看集群LVS的统计情况
ipvsadm -L -n
#2.2-查看集群LVS的详细情况
ipvsadm -L -nc
3.3、高可用LVS负载均衡集群功能测试
高可用的LVS负载均衡系统能够实现LVS的高可用性、负载均衡特性和故障自动切换特性,因此,对其进行的测试也针对这三个方面进行,这里对Keepalived+LVS实例进行测试。
3.3.1、高可用性功能测试
高可用性是通过LVS的两个Director Server完成的,为了模拟故障,先将主Director Server(192.168.1.9)上面的Keepalived服务停止,然后观察备用Director Server(192.168.1.36)上Keepalived的运行日志。
#高可用性功能测试流程1——停止Director Server1的keepalived服务
#1-先分别打开Director Server(192.168.1.9、192.168.1.36)的新终端,并且监测日志方便观察
tail -f /var/log/message
#2-先停止Director Server1(192.168.1.9)的keepalived服务后查看其对应的通用日志
systemctl stop keepalived.service
#3-查看Director Server2(192.168.1.36)的上LVS负载均衡信息和VIP绑定情况;然后在浏览器访问(192.168.1.226)看是否可以访问到Apache的Web服务httpd内容
ipvsadm -L -n
ip addr
此时虽然Director Server1(192.168.1.9)主节点的服务器的keepalived的服务已经停止,但是仍然可以正常使用VIP(192.168.1.226)访问Real Server的Apache的Web的httpd服务,如下图所示:
#高可用性功能测试流程2——启动Director Server1的keepalived服务
#1-先分别打开Director Server(192.168.1.9、192.168.1.36)的新终端,并且监测日志方便观察
tail -f /var/log/message
#2-先启用Director Server1(192.168.1.9)的keepalived配置文件的【persistence_timeout 50】,然后在启动keepalived服务后查看其对应的通用日志
vi /etc/keepalived/keepalived.conf
systemctl start keepalived.service
#3-查看Director Server2(192.168.1.36)的上LVS负载均衡信息和VIP绑定情况;然后在浏览器访问(192.168.1.226)看是否可以访问到Apache的Web服务httpd内容(此时我们可以在局域网内的一台新Linux服务器上执行压力测试VIP,可以看到所有连接都集中在备用服务器(192.168.1.36)上)
ipvsadm -L -n
ip addr
3.3.2、负载均衡测试
我们这里两个Real Server节点上配置WWW服务的网页文件的根目录均为【/var/www/html/】目录,然后分别执行如下操作:
《1》在real server1 (192.168.1.37)执行:
echo "192.168.1.37" /var/www/html/index.html
《2》在real server2(192.168.1.38) 执行:
echo "192.168.1.38" /var/www/html/index.html
接着打开浏览器,使用无痕模式打开标签页,访问【http://192.168.1.226】这个地址,然后不断刷新此页面,如果能分别看到“192.168.1.37”和“192.168.1.38”就表明LVS已经在进行负载均衡了。
3.3.3、故障切换测试
故障切换是测试在某个节点出现故障后,Keepalived监控模块是否能及时发现,然后屏蔽故障节点,同时将服务转移到正常节点上执行。
这里将real server 1节点(192.168.1.37)上的Apache的Web服务httpd停掉,若这个节点出现故障,然后查看主、备机日志信息。
#故障测试流程1——先停止Real Server的httpd服务
#1-先分别打开Director Server(192.168.1.9、192.168.1.36)的新终端,并且监测日志方便观察
tail -f /var/log/message
#2-到Real Server(192.168.1.37)服务器上将Apache的Web服务httpd停止
systemctl stop httpd
#3-再次打开Director Server(192.168.1.9)的新终端,并且查看LVS的负载均衡情况(此时VIP【192.168.1.226:80】对应的就只有【192.168.1.38:80】了;我们再打开浏览器访问VIP地址界面也只显示192.168.1.38了)
ipvsadm -L -n
#故障测试流程2——恢复上面停止的Real Server的httpd服务
#1-先分别打开Director Server(192.168.1.9、192.168.1.36)的新终端,并且监测日志方便观察
tail -f /var/log/message
#2-到Real Server(192.168.1.37)服务器上将Apache的Web服务httpd启动
systemctl start httpd
#3-再次打开Director Server(192.168.1.9)的新终端,并且查看LVS的负载均衡情况(此时VIP【192.168.1.226:80】对应的就两个【192.168.1.37:80、192.168.1.38:80】都存在了;我们再打开浏览器访问VIP地址界面也可以分别显示192.168.1.37、192.168.1.38了)
ipvsadm -L -n