问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

通过rpm包安装的ipvsadm怎么设置

发布网友 发布时间:2022-04-27 09:51

我来回答

1个回答

热心网友 时间:2023-09-23 22:57

检查是否支持
# modprobe -l|grep ipvs
或#lsmod |grep ip_vs
如果在/lib/moles/2.6.18-128.el5/kernel/net/ipv4/ipvs下有很多ip_vs*这样的文件说明,ipvs模块已经加入。
软件安装
一、RPM安装:
1、根据内核安装相应版本的lvs
下载地址http://www.linuxvirtualserver.org/software
我下载的是ipvsadm-1.24-6.src.rpm
2、修改打包文件
#rpmbuild -bb /usr/src/redhat/SPECS/ipvsadm.spec出现:
error: Legacy syntax is unsupported: copyright等错误信息时,修改ipvsadm.spec,
将其中的Copyright:标签改成License:即可。
3、创建链接文件
#ln -s /usr/src/kernels/2.6.18-128.el5-i686 /usr/src/linux
不创建链接会出现:libipvs.h:14:23: net/ip_vs.h: No such file or directory等编译错误。
4、#rpmbuild -bb /usr/src/redhat/SPECS/ipvsadm.spec
二、TAR安装:
#下载软件
#wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz
#解压缩
#tar -zxvf ipvsadm-1.24.tar.gz
#cd ipvsadm-1.24
#建立编译时必须的一个软链接
#ln -s /usr/src/kernels/2.6.9-42.EL-i686/ /usr/src/linux
#编译安装
#make && make install
#确认安装成功
#whereis ipvsadm
lvs-dr模式:
配置vip server
#vi /usr/local/vip.sh
#!/bin/bash
# description: start LVS of DirectorServer
GW=192.168.1.250
# website director vip.
SNS_VIP=192.168.1.244
SNS_RIP1=192.168.1.223
SNS_RIP2=192.168.1.224

. /etc/rc.d/init.d/functions

logger $0 called with $1

case "$1" in

start)
# set squid vip
#/sbin/ipvsadm --set 30 5 60
/sbin/ifconfig eth0:0 $SNS_VIP broadcast $SNS_VIP netmask 255.255.255.255 up
/sbin/route add -host $SNS_VIP dev eth0:0
/sbin/ipvsadm -C

/sbin/ipvsadm -A -t $SNS_VIP:80 -s wrr -p 1
#/sbin/ipvsadm -A -t $SNS_VIP:80 -s rr
/sbin/ipvsadm -a -t $SNS_VIP:80 -r $SNS_RIP1:80 -g -w 1
#/sbin/ipvsadm -a -t $SNS_VIP:80 -r $SNS_RIP1 -g
/sbin/ipvsadm -a -t $SNS_VIP:80 -r $SNS_RIP2:80 -g -w 1
#/sbin/ipvsadm -a -t $SNS_VIP:80 -r $SNS_RIP2 -g
/sbin/ipvsadm
touch /var/lock/subsys/ipvsadm >/dev/null 2>&1
;;
stop)
/sbin/ipvsadm -C
/sbin/ipvsadm -Z
ifconfig eth0:0 down
ifconfig eth0:1 down
route del $SNS_VIP
#route del $SS_VIP
rm -rf /var/lock/subsys/ipvsadm >/dev/null 2>&1
echo "ipvsadm stoped"
;;

status)

if [ ! -e /var/lock/subsys/ipvsadm ];then
echo "ipvsadm stoped"
exit 1
else
echo "ipvsadm OK"
fi
;;

*)
echo "Usage: $0 {start|stop|status}"
exit 1
esac

exit 0
启动ipvsadm服务
#chmod 777 /usr/local/vip.sh
#/usr/local/vip.sh start
出现:
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP localhost:http wrr persistent 1
-> localhost:http Route 1 0 0
-> localhost:http Route 1 0 0
表明ipvsadm已经启动并正常工作,用#ipvsadm -L也可查询ipvsadm状态。
配置两个realserver,配置相同
#vi /usr/local/realserver.sh
#!/bin/bash
# description: Config realserver lo and apply noarp
SNS_VIP=192.168.1.244
. /etc/rc.d/init.d/functions
case "$1" in
start)
ifconfig lo:0 $SNS_VIP netmask 255.255.255.255 broadcast $SNS_VIP up
/sbin/route add -host $SNS_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
sysctl -p >/dev/null 2>&1
echo "RealServer Start OK"
;;
stop)
ifconfig lo:0 down
route del $SNS_VIP >/dev/null 2>&1
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 "RealServer Stoped"
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
exit 0
启动realserver
#chmod 777 /usr/local/realserver.sh
#/usr/local/realserver.sh start
出现:
RealServer Start OK

apache配置:
在两个realserver服务器的apache首页设置分别为:11111111111、2222222222
测试
用浏览器打开:http://192.168.1.244,即可看到1111111111或22222222222
#ipvsadm -lcn
查看负载链接状况,在测试中发现:
设置tcp超时时间#ipvsadm --set 200 200 20
查看tcp超时时间#ipvsadm -L --timeout
Timeout (tcp tcpfin udp): 200 200 20
但实际在轮叫时,timeout时间总为60秒,一直不明白为什么,郁闷。
--------------------------------------------------------------------------
ipvsadm 的命令参考:
1,virtual-service-address:是指虚拟服务器的ip 地址
2,real-service-address:是指真实服务器的ip 地址
3,scheler:调度方法
(lna@networksbase.com 翻译 ipvsadm v1.21 2004 年4 月)
ipvsadm 的用法和格式如下:
ipvsadm -A|E -t|u|f virutal-service-address:port [-s scheler] [-p
[timeout]] [-M netmask]
ipvsadm -D -t|u|f virtual-service-address
ipvsadm -C
ipvsadm -R
ipvsadm -S [-n]
ipvsadm -a|e -t|u|f service-address:port -r real-server-address:port
[-g|i|m] [-w weight]
ipvsadm -d -t|u|f service-address -r server-address
ipvsadm -L|l [options]
ipvsadm -Z [-t|u|f service-address]
ipvsadm --set tcp tcpfin udp
ipvsadm --start-daemon state [--mcast-interface interface]
ipvsadm --stop-daemon
ipvsadm -h
命令选项解释:
有两种命令选项格式,长的和短的,具有相同的意思。在实际使用时,两种都可
以。
-A --add-service 在内核的虚拟服务器表中添加一条新的虚拟服务器记录。也
就是增加一台新的虚拟服务器。
-E --edit-service 编辑内核虚拟服务器表中的一条虚拟服务器记录。
-D --delete-service 删除内核虚拟服务器表中的一条虚拟服务器记录。
-C --clear 清除内核虚拟服务器表中的所有记录。
-R --restore 恢复虚拟服务器规则
-S --save 保存虚拟服务器规则,输出为-R 选项可读的格式
-a --add-server 在内核虚拟服务器表的一条记录里添加一条新的真实服务器
记录。也就是在一个虚拟服务器中增加一台新的真实服务器
-e --edit-server 编辑一条虚拟服务器记录中的某条真实服务器记录
-d --delete-server 删除一条虚拟服务器记录中的某条真实服务器记录
-L|-l --list 显示内核虚拟服务器表
-Z --zero 虚拟服务表计数器清零(清空当前的连接数量等)
--set tcp tcpfin udp 设置连接超时值
--start-daemon 启动同步守护进程。他后面可以是master 或backup,用来说
明LVS Router 是master 或是backup。在这个功能上也可以采用keepalived 的
VRRP 功能。
--stop-daemon 停止同步守护进程
-h --help 显示帮助信息
其他的选项:
-t --tcp-service service-address 说明虚拟服务器提供的是tcp 的服务
[vip:port] or [real-server-ip:port]
-u --udp-service service-address 说明虚拟服务器提供的是udp 的服务
[vip:port] or [real-server-ip:port]
-f --fwmark-service fwmark 说明是经过iptables 标记过的服务类型。
-s --scheler scheler 使用的调度算法,有这样几个选项
rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq,
默认的调度算法是: wlc.
-p --persistent [timeout] 持久稳固的服务。这个选项的意思是来自同一个客
户的多次请求,将被同一台真实的服务器处理。timeout 的默认值为300 秒。
-M --netmask netmask persistent granularity mask
-r --real-server server-address 真实的服务器[Real-Server:port]
-g --gatewaying 指定LVS 的工作模式为直接路由模式(也是LVS 默认的模式)
-i --ipip 指定LVS 的工作模式为隧道模式
-m --masquerading 指定LVS 的工作模式为NAT 模式
-w --weight weight 真实服务器的权值
--mcast-interface interface 指定组播的同步接口
-c --connection 显示LVS 目前的连接 如:ipvsadm -L -c
--timeout 显示tcp tcpfin udp 的timeout 值 如:ipvsadm -L --timeout
--daemon 显示同步守护进程状态
--stats 显示统计信息
--rate 显示速率信息
--sort 对虚拟服务器和真实服务器排序输出
--numeric -n 输出IP 地址和端口的数字形式
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
宝贝摔跤腿上有淤青,天气不好的时候会看见淤青怎么回事啊? 小孩腿上磕了就有淤青怎么回事 小孩小腿上有淤青是怎么回事 研究生金属矿好还是煤矿方向好 AMD的处理器怎么样? 私家车辆报废补贴多少钱?2022车辆报废补贴怎么领 山海经之再见怪兽中的那个男孩叫什么名字 再见葫芦娃MV里面的小男孩是谁 再见,男孩主演介绍 高中化学教师资格证通过率高吗 求助,html5前端头部问题 长期食盐过量对人体有哪些危害? python 截取两个单词中间内容 蚂蚁庄园摄入过量食盐怎么办? AK2I怎么用金手指? 激光NC程序中的E001表示什么 python sns.pointplot如何添加文本信息 盐食用过量,对身体的影响都有哪些呢? 外研教版英语必修一单词 MediaRecorder start failed,该怎么解决 过量摄入食盐会如何危害我们的健康? 什么是Ultrabook? 在线等人帮助翻译下论文摘要,不要翻译软件翻译的,希望高人能帮下,明天就要交了 在ThinkSNS安装过程中这个错误如何解决 摄入食盐过多怎么办? ThinkSNS成功安装后,进入网站显示以下内容,是怎么回事? 食盐食用过多有什么危害 食盐摄取过量会怎么样? 数字媒体艺术设计这个专业理科生可以报吗 理科生可以报考中国传媒大学的哪些专业 一次性吃盐过多会怎么样 cmd start命令 路径含空格 android使用qq登录后怎么获取数据 ofo回应"已还清蚂蚁金服欠款"是不实消息,那它究竟还需要还多久? ofo如何回应被收购传闻? 请帮忙解决一下,详细一点 FILE: D:\Site\wwwroot\sns37\ThinkPHP\Lib\Core\App.class.php 如何用PS做出一张宣传单?? ofo如何回应涨价问题的? IDT不能打开,怎么办?(Cannot find,startup file) (插上耳麦,但还是电脑在放声音,耳麦没反应) ofo挪用押金具体情况是什么? 网传ofo滴滴谈判进入尾声滴滴方面有回应吗? ofo失联,数百万人的押金还有希望退吗? 我想用PS做个宣传单,请问尺寸要怎么设置啊 ofo是如何回应少年骑小黄车被割伤股动脉的? 朱啸虎回应“在ofo败局中全身而退”,从中你受到了哪些启发? 面对消费者要求退押金ofo为何迟迟没有回应? 用PS做A4纸一半大小的传单,长宽像素分别怎么设置 ofo创始人如何回应单车堆积? 干货,使用ps制作简单的食品宣传单页,你会吗 清华两学生回应接力状告ofo,ofo退押金的问题处理结果怎么样了?