实现LVS简单配置- duanjiangong - JavaEye技术网站

2、运行环境:linux as 4

服务器都使用2个网络地址,一个公网地址和一个私有网络地址。设置为公网ip的网络接口连接在一个交换机,设置为私有网络ip的网络接另外一个交换机,处于安全和网络带宽考虑,网络存储设备和数据库只使用私有网络地址。


用户----LVS-DR---->WEB1---- MYSQL
????????????? ---->WEB2----

真实ip地址(RIP):LVS-DR 220.202.254.2?
?????????? WEB1?? 220.202.254.20?? xx:192.168.88.1
?????????? WEB2?? 220.202.254.21?? xx:192.168.88.2
?????????? MYSQL?????????????????? xx:192.168.88.3

虚拟ip地址(VIP) WEB虚拟地址(vip1) 220.202.254.1

我的系统都是linux as4 u6? (2.6.9-5.EL)
1、????检查内核模块,看ipvs?模块是否被加载
[root@TestAs4 ~]# lsmod |grep ip_vs
ip_vs_wlc?????????????? 1857? 1?
ip_vs????????????????? 86433? 3 ip_vs_wlc
2、安装ipvsadm。Ipvsadm的官方下载地址为??,解压后先做一个链接文件,把目录/usr/src/kernels/2.6.18-8.el5-i686/ 链接为/usr/src/linux,不这样做的话,运行命令?ln –s /usr/src/kernels/2.6.9-5.EL-i686 /usr/src/linux?做好链接,再运行不带参数的脚本?./configure,然后执行”make;make install”完成安装
[root@TestAs4 ipvsadm-1.24]# modprobe ip_vs? #加载ip_vs

[root@TestAs4 bin]# more lvsdr?
#!/bin/bash
RIP1=220.202.254.20
RIP2=220.202.254.21
?
VIP1=220.202.254.1
?
/etc/rc.d/init.d/functions
?
case "$1" in
?
start)
echo " start LVS of DirectorServer"
?
# set the Virtual IP Address and sysctl parameter
/sbin/ifconfig eth0:0 $VIP1 broadcast $VIP1 netmask 255.255.255.255 up
#/sbin/ifconfig eth0:1 $VIP2 broadcast $VIP2 netmask 255.255.255.255 up
/sbin/route add -host $VIP1 dev eth0:0
#/sbin/route add -host $VIP2 dev eth0:1
echo "1" >/proc/sys/net/ipv4/ip_forward
?
#Clear IPVS table
/sbin/ipvsadm -C
?
#set LVS
#Web Apache
/sbin/ipvsadm -A -t $VIP1:80 -s wlc -p 120
/sbin/ipvsadm -a -t $VIP1:80 -r $RIP1:80 -g
/sbin/ipvsadm -a -t $VIP1:80 -r $RIP2:80 -g
?
?
#Run LVS
/sbin/ipvsadm
;;
stop)
echo "close LVS Directorserver"
echo "0" >/proc/sys/net/ipv4/ip_forward
/sbin/ipvsadm -C
/sbin/ifconfig eth0:0 down
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac


ifconfig eth0:0 $VIP1 broadcast $VIP1 netmask 255.255.255.255 up把web服务所需的ip地址(虚拟地址)绑定在辅助接口eth0:0。在LVS方案中,虚拟ip地址与普通网络接口大大不同,这点需要特别注意。虚拟ip地址的广播地址是它本,子网掩码255.255.255.255
为什么要这样呢?因为有若干机器要使用同一个ip地址,用本身做广播地址和把子网掩码设成4个255就不会造成ip地址冲突了,否则lvs将不能正常转发访问请求。
ipvsadm -A -t $VIP1:80 -s wlc -p 120?添加一个虚拟服务,服务协议是tcp(-t);服务类型是web($VIP1:80);-s 表示采用wlc这种调度算法转发数据包(调度算法包括:rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq);-p表示连接的持续时间为120秒,这个会话时间是根据实际情况调整的,如果这个值设置得不合理,用户将得到非常糟糕的访问效果。

2个方法检验LVS/DR是否正常运行了:(1)查看内核是否列出ip_vs模块;(2)直接运行ipvsadm –l看输出是否有转发规则。

真实服务器配置虚拟
ip地址。LVS可以把服务请求转发到各种各样的操作系统.
[root@cwmtest1 bin]# more lvs
#!/bin/bash
#description:start realserver
#chkconfig?
VIP1=220.202.254.1
/etc/rc.d/init.d/functions
case "$1" in
start)
echo " start LVS of REALServer"
/sbin/ifconfig lo:0 $VIP1 broadcast $VIP1 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
;;
stop)
/sbin/ifconfig lo:0 down
echo "close LVS Directorserver"
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

{zx1}评论

  • 呵呵。这个问题我也没有见过,好像是跟硬盘有关系吧?看看硬盘容量什么的。至于1W条数 ...
    -- by

  • 你好,请教一个问题,我是初次使用lucene,在索引1W多数据时就会非常耗内存,我 ...
    -- by

  • 看来大家还是没有认真阅读啊,看看lucene在排序的时候它是如何得到排序字段的值的 ...
    -- by

  • 研究了半天,今天偶然发现了个新东西,bobo-browser(bobo-brows ...
    -- by

  • 引用读取Document这个是不太现实,建议阅读TopDocCollector这个 ...
    -- by
郑重声明:资讯 【实现LVS简单配置- duanjiangong - JavaEye技术网站】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——