带来一篇CentOS下LVS DR形式具体搭建历程
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!目次媒介...1
1、LVS情况组网...2
2、ipvsadm装置前筹办...2
3、httpd与ipvsadm下载...3
4、LVS负载平衡设置...4
5、实在WEB办事器设置及arp克制...5
6、LVS负载平衡测试...6
7、附:arp克制参数...7
媒介
本文次要解说centos5.xLVSDR形式,情况搭建,实际常识请参考LVS中文官网
http://www.linuxvirtualserver.org/zh/index.html
该页面大概显现乱码,假如有乱码,在IE上右键勾上形态栏,然后在页面栏下拉选项当选择编码,有(GB2312和UTF-8),假如UTF-8显现乱码,则选GB2312。假如GB2312显现乱码,则选UTF-8.
1、LVS情况组网
因为是利用的VM情况,本人PC看成客户机(即公网地点),调剂器与办事器都是VM中假造机,以是客户和一切办事器之间都是物理间接相连收集,逻辑拓扑图以下:
2、ipvsadm装置前筹办
内部IP地点
外部IP地点
脚色
10.0.0.30/24
192.168.1.1/24
LVS调剂器(假造机)
10.0.0.237/24
192.168.1.2/24
RS1(假造机)
10.0.0.238/24
192.168.1.3/24
RS2(假造机)
10.0.0.130/24
无
客户机(本人电脑)
注:实践使用中RS1RS2没有内部地点,以后情况中,没有物理双网卡情况,都接纳一个网卡设置多个IP地点。
3、httpd与ipvsadm下载
1)在各办事器上修正主机名:
#hostnameLVS1
#hostnameRS1
#hostnameRS2
2)在RS1RS2上装置httpd办事
#yuminstallhttpd–y
#/etc/init.d/httpdstart
ps-ef|grephttpd
#yuminstallhttpd–y
#/etc/init.d/httpdstart
ps-ef|grephttpd<==检察httpd办事是不是起来
#cat/etc/httpd/conf/httpd.conf|grepDocumentRoot<==查找体系站点目次路径
#DocumentRoot:Thedirectoryoutofwhichyouwillserveyour
DocumentRoot"/var/www/html"
#ThisshouldbechangedtowhateveryousetDocumentRootto.
#DocumentRoot/www/docs/dummy-host.example.com
#echo"RS1">/var/www/html/index.html
#echo"RS2">/var/www/html/index.html
Httpd办事测试:
测试乐成!
3)下载ipvsadm
wgethttp://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz
wgethttp://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.26.tar.gz
我所利用的源包下载目次/usr/local/src
我的LVS情况:
#cat/etc/redhat-release
CentOSrelease5.8(Final)
#uname-rm
2.6.18-308.el5x86_64
ipvsadm-1.26对内核有请求,请求内核版本在2.6.28及今后的版本,假如切合了体系情况,还要装置依附包yuminstalllibnl*popt*-y。
我的内核版本不满意,利用ipvsadm-1.24。
#tar-zxfipvsadm-1.24.tar.gz
#ln-s/usr/src/kernels/2.6.18-348.12.1.el5-x86_64/usr/src/linux<==编译有利用的路径为/usr/src/linux,可在Makefile中检察,假如不做链接,会编译失利
#ll/usr/src/
total16
drwxr-xr-x2rootroot4096May112011debug
drwxr-xr-x3rootroot4096Aug503:53kernels
lrwxrwxrwx1rootroot43Aug503:56linux->/usr/src/kernels/2.6.18-348.12.1.el5-x86_64<==要利用ll/usr/src/检察,假如软链接一闪一闪的,代表链接失利
#cdipvsadm-1.24
#make&&makeinstall<==假如编译失利,请按下面步调一步一步排错。
#lsmod|grepip_vs<==检察内核模块是不是有ipvsadm
#ipvsadm
IPVirtualServerversion1.2.1(size=4096)
ProtLocalAddress:PortSchedulerFlags
->RemoteAddress:PortForwardWeightActiveConnInActConn
#另有一种加载ipvsadm***,用modprobeip_vs
#lsmod|grepip_vs<==检察内核模块,有代表ipvsadm加载进内核傍边,此时LVS装置终了
ip_vs1221130
4、LVS负载平衡设置
1)设置VIP和DIP
IP设置参考步调2装置筹办
#ifconfigeth010.0.0.30netmask255.255.255.0#VIP
#ifconfigeth0:1192.168.1.1netmask255.255.255.0#DIP
2)增加实在办事器
#ipvsadm–C<==手工清空本来表内容
#ipvsadm--set30560<==设置毗连超时价
#ipvsadm-A-t10.0.0.30:80-swrr-p20<==-A增加地点,-t指定VIPTCP端口,-s指定调剂算法–p会话坚持工夫
#ipvsadm-L–n<==检察表内容,增加了一组VIP地点和端口
IPVirtualServerversion1.2.1(size=4096)
ProtLocalAddress:PortSchedulerFlags
->RemoteAddress:PortForwardWeightActiveConnInActConn
TCP10.0.0.30:80wrrpersistent20
#ipvsadm-a-t10.0.0.30:80-r192.168.1.2:80-g-w1<==-a指定实在办事器,-tlvs上VIP,-r实在办事器ip及端口,-w权重值,-g先择DR形式(-m为NAT形式)
#ipvsadm-a-t10.0.0.30:80-r192.168.1.3:80-g-w1
#ipvsadm-L–n<==检察表内容,增加了两台负载转发的实在办事器
IPVirtualServerversion1.2.1(size=4096)
ProtLocalAddress:PortSchedulerFlags
->RemoteAddress:PortForwardWeightActiveConnInActConn
TCP10.0.0.30:80wrrpersistent20
->192.168.1.2:80Route100
->192.168.1.3:80Route100
假如增加办事器地点写错了,可用以下下令删除,即年夜A增加改成年夜D删除,小a增加改成小d删除
ipvsadm–D–t10.0.0.30:80–swrr
ipvsadm–d–t10.0.0.30:80–r192.168.1.2:80
5、实在WEB办事器设置及arp克制
#ifconfigeth0|grep"inetaddr"<==此地点用来本人电脑用CRT软件上岸装备,同时也用来发送arp哀求客户机MAC(由于是间接前往页面给客户机,而以后收集是统一物理网段,必需同网段才一般)。
inetaddr:10.0.0.237Bcast:10.0.0.255Mask:255.255.255.0
#ifconfigeth0:1192.168.1.2netmask255.255.255.0<==设置外部IP地点
#ifconfiglo10.0.0.30netmask255.255.255.255<==每台实在办事器都必要设置VIP
为何要绑定VIP呢?由于DR形式道理是LVS调剂器修正mac地点为实在办事器地点,报文的目标IP仍是VIP没修正,,网卡只会把目标MAC和目标IP都是本人的报文上送CPU,以是实在办事器上必需设置VIP!
为何利用lo口呢?由于lo口为当地环回口,避免当地局域网IP地点抵触!
#ifconfigeth0|grep"inetaddr"<==此地点用来本人电脑用CRT软件上岸装备,同时也用来发送arp哀求客户机MAC(由于是间接前往页面给客户机,而以后收集是统一物理网段,必需同网段才一般)。
inetaddr:10.0.0.238Bcast:10.0.0.255Mask:255.255.255.0
#ifconfigeth0:1192.168.1.3netmask255.255.255.0<==设置外部IP地点
#ifconfiglo10.0.0.30netmask255.255.255.255
此时设置完成,只是测试时呈现一个成绩,再次上岸CRT中10.0.0.30地点时,上岸到RS1上往了,再革新,上岸到RS2上往了。怎样办理呢?
经由过程剖析,得出,会见10.0.0.30时,会发送arp哀求10.0.0.30的mac,而这个收集中有3个10.0.0.30地点,此时,那谁给的arp回应到客户机,会见的就是谁了。假如RS1的arp回应先到,就会见的RS1了
办理***:
克制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
#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
12都代表甚么内容,可在最初附录中检察,也可本人网上搜刮
6、LVS负载平衡测试
显现的值是RS1,则此时该链接是分派到192.168.1.2上
我们利用的是wrr调剂算法,该算法中,谁的权重值高,会优先分派给谁
检察设置,发明权重值一样
#ipvsadm-L-n
IPVirtualServerversion1.2.1(size=4096)
ProtLocalAddress:PortSchedulerFlags
->RemoteAddress:PortForwardWeightActiveConnInActConn
TCP10.0.0.30:80wrrpersistent20
->192.168.1.2:80Route100
->192.168.1.3:80Route100
因为有会话坚持功效,接上去修正权重值
#ipvsadm-d-t10.0.0.30:80-r192.168.1.3:80<==删除本来设置
#ipvsadm-a-t10.0.0.30:80-r192.168.1.3:80-g-w2<==从头设置权重值为2
#ipvsadm-L-n
IPVirtualServerversion1.2.1(size=4096)
ProtLocalAddress:PortSchedulerFlags
->RemoteAddress:PortForwardWeightActiveConnInActConn
TCP10.0.0.30:80wrrpersistent20
->192.168.1.3:80Route200
->192.168.1.2:80Route100
再次举行测试:
7、附:arp克制参数
arp呼应限定
1)arp_ignore:
界说对方针地点为当地IP的ARP扣问分歧的应对形式0
0-(默许值):回应任何收集接口上对任何当地IP地点的arp查询哀求
1-只回覆方针IP地点是来访收集接口当地地点的ARP查询哀求
2-只回覆方针IP地点是来访收集接口当地地点的ARP查询哀求,且来访IP必需在该收集接口的子网段内
3-不回应当收集界面的arp哀求,而只对设置的独一和毗连地点做出回应
4-7-保存未利用
8-不回应一切(当地地点)的arp查询
2)arp_announce:
对收集接口上,当地IP地点的收回的,ARP回应,作出响应级其余限定:断定分歧水平的限定,公布对来自当地源IP地点收回Arp哀求的接口
0-(默许)在恣意收集接口(eth0,eth1,lo)上的任何当地地点
1-只管制止不在该收集接口儿网段的当地地点做出arp回应.当倡议ARP哀求的源IP地点是被设置应当经过路由到达此收集接口的时分很有效.此时会反省来访IP是不是为一切接口上的子网段内ip之一.假如改来访IP不属于各个收集接口上的子网段内,那末将接纳级别2的体例来举行处置.
2-对查询方针利用最得当的当地地点.在此形式下将疏忽这个IP数据包的源地点并实验选择与能与该地点通讯的当地地点.主要是选择一切的收集接口的子网中外出会见子网中包括该方针IP地点的当地地点.假如没有符合的地点被发明,将选择以后的发送收集接口或其他的有大概承受到该ARP回应的收集接口来举行发送.
本文出自“此心安处是吾乡”博客,请务必保存此出处http://yangrong.blog.51cto.com/6945369/1287534
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!
带来一篇CentOS下LVS DR形式具体搭建历程
不同于Windows?系统需要花钱购买,因为Linux的核心是免费的,自由使用的,核心源代码是开放的。 在学习的过程中,我们用的是VM虚拟机,开始时真的不真的该怎么去做,特别是我的是命令窗口界面,别人的是图形界面,我都不知道怎么调过来。 目前全球有超过一百多个Linux发行版本,在国内也能找到十几个常见版本。如何选择请根据你的需求和能力,RedhatLinux和DebianLinux是网络管理员的理想选择。 用户下达的命令解释给系统去执行,并将系统传回的信息再次解释给用户,估shell也称为命令解释器,有关命令的学习可参考论坛相关文章,精通英文也是学习Linux的关键。 放手去搞。尽量不要提问,运用搜索找答案,或者看wiki,从原理上理解操作系统的本质,而不是满足于使用几个技巧。尽量看英文资料。 掌握硬件配置,如显卡,声卡,网卡等,硬件只要不是太老或太新一般都能被支持,作为一名Linux系统管理员建议多阅读有关硬件配置文章,对各种不支持或支持不太好的硬件有深刻的了解。 对于英语不是很好的读者红旗 Linux、中标Linux这些中文版本比较适合。现在一些Linux网站有一些Linux版本的免费下载,这里要说的是并不适合Linux初学者。 主流Linux发行版都自带非常详细的文档(包括手册页和FAQ),从系统安装到系统安全,针对不同层次的人的详尽文档,仔细阅读文档后40%问题都可在此解决。
页:
[1]