Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1744693
  • 博文数量: 391
  • 博客积分: 8464
  • 博客等级: 中将
  • 技术积分: 4589
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-13 15:12
个人简介

狮子的雄心,骆驼的耐力,孩子的执著!

文章分类

全部博文(391)

文章存档

2023年(4)

2018年(9)

2017年(13)

2016年(18)

2014年(7)

2013年(29)

2012年(61)

2011年(49)

2010年(84)

2009年(95)

2008年(22)

分类: LINUX

2009-09-06 16:09:58

有192.168.0.34,192.168.0.35,192.168.0.36,192.168.0.37四台服务器
192.168.0.37是nas 34,35,36 运行得email 服务。
在37上做了一个调度器来分配服务 80,25,110 端口的服务到34,35,36 上。
 
 
具体配置:
在37 服务器上,首先装了一个ipvsadm的rpm 包
yum install ipvsadm #获得ipvsadm软件,负责负载均衡,轮循请求到后台服务

然后些这个教本
参考别人写的。采用的是直接路由的模式。
#!/bin/bash
VIP=192.168.0.38
RIP1=192.168.0.34
RIP2=192.168.0.35
RIP3=192.168.0.36
GW=192.168.0.33
#Clear IPVS table
/sbin/ipvsadm -C
/sbin/ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev eth0:0
#set LVS
/sbin/ipvsadm -A -t $VIP:80 -s rr
/sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g
/sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
/sbin/ipvsadm -a -t $VIP:80 -r $RIP3:80 -g
/sbin/ipvsadm -A -t $VIP:25 -s rr
/sbin/ipvsadm -a -t $VIP:25 -r $RIP1:25 -g
/sbin/ipvsadm -a -t $VIP:25 -r $RIP2:25 -g
/sbin/ipvsadm -a -t $VIP:25 -r $RIP3:25 -g
/sbin/ipvsadm -A -t $VIP:110 -s rr
/sbin/ipvsadm -a -t $VIP:110 -r $RIP1:110 -g
/sbin/ipvsadm -a -t $VIP:110 -r $RIP2:110 -g
/sbin/ipvsadm -a -t $VIP:110 -r $RIP3:110 -g
#Run LVS
/sbin/ipvsadm
#end
内容是192.168.0.38 是虚拟地址 192.168.0.34,35,36 为真正服务器。做80,25,110 端口的负载。
34,35,36 分别了/home/test.sh 教本

#!/bin/bash
VIP=192.168.0.38
/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/all/arp_filter
echo 1 > /proc/sys/net/ipv4/conf/lo/arp_filter
sysctl -p
#end

这个脚本的作用是过滤arp 包的,或者编辑/etc/sysctl.conf修改系统变量

net.ipv4.conf.eth0.arp_ignore = 1
net.ipv4.conf.eth0.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2

#net.ipv4.ip_forward = 1

sysctl –p   #配置生效
 
下载lddirectord 这个软件是个监控软件。
 
07年前,可以使用以下方式下载,目前已经失效
{cvs -d:pserver:guest@cvs.linux-ha.org:/home/cvs/linux-ha login
cvs -z3 -d:pserver:guest@cvs.linux-ha.org:/home/cvs/linux-ha co linux-ha/}
 
当前(20090906)可用链接

 

然后写了一个配置文件
ldirectord.cf

checktimeout=3
checkinterval=1
#fck=127.0.0.1:80allback=127.0.0.1:80
autoreload=yes
#logfile="/var/log/ldirectord.log"
#logfile="local0"
quiescent=yes
# A sample virual with a fallback that will override the gobal setting
virtual=192.168.0.38:80
        real=192.168.0.34:80 gate
        real=192.168.0.35:80 gate
        real=192.168.0.36:80 gate
        fallback=127.0.0.1:80
        service=http
        request="test.html"
        receive="Test Page"
        virtualhost=
        scheduler=rr
        persistent=600
        netmask=255.255.255.255
        protocol=tcp
virtual=192.168.0.38:25
        real=192.168.0.34:25 gate
        real=192.168.0.35:25 gate
        real=192.168.0.36:25  gate
        fallback=127.0.0.1:25
         service=smtp
         scheduler=rr
         persistent=600
        protocol=tcp
virtual=192.168.0.38:110
         real=192.168.0.34:110 gate
        real=192.168.0.35:110 gate
        real=192.168.0.36:110  gate
        fallback=127.0.0.1:110
       service=pop
       scheduler=rr
       login="testemail"
       passwd="emailtest"
       persistent=600
       protocol=tcp
 
这就是监控得东西。
ldirectord  /etc/ldirectord.cf start
 ldirectord  /etc/ldirectord.cf stop
 tail -f /var/log/ldirectord.log 这个是log
 
查看lvs服务是否正常
watch ipvsadm -l -n
 
Every 2.0s: ipvsadm -l -n                                Sun Sep  6 19:39:51 2009
 
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.0.105:80 rr
  -> 192.168.0.104:80             Route   1      0          0
  -> 192.168.0.103:80             Route   1      0          0
TCP  192.168.0.105:3306 rr
  -> 192.168.0.104:3306           Route   1      0          0
  -> 192.168.0.103:3306           Route   1      0          0
 

参考:

 
LVS+Keepalived实现高可用集群:
 
 
 
 
 
 
 
 
 
阅读(851) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~