web负载均衡(ipvsadm)(未成)

ipvsadm用于实现web多台主机负载均衡,当访问者访问时第一次访问的是一个ip,第二次就是另一个,第三次又是第一个ip,这样循环访问,减轻负担,起到负载均衡的效果


环境:1台主机有2个ip(内网、外网),另1台主机只需要内网就行了,网关指向有外网的主机的内网ip


有外网主机(192.168.1.10,202.100.100.100):

http://down1.chinaunix.net/distfiles/ipvsadm-1.24.tar.gz

# tar zxf ipvsadm-1.24.tar.gz

# cd ipvsadm-1.24

# ln -s /usr/src/kernels/2.6.9-22.EL-i686/ /usr/src/linux      (32位系统i686)(64位为X86_64)# make && make install

# ipvsadm --version         (查看ipvsadm版本号,显示版本号就说明安装成功)

# echo "1" >/proc/sys/net/ipv4/ip_forward       (开启IP转发功能)

# ipvsadm -C                                      (清除路由表)

# ipvsadm -A -t 202.100.100.100:80 -s rr               (定义虚拟服务器IP即外网ip)

# ipvsadm -a -t 202.100.100.100:80 -r 192.168.1.10:80 -g  (定义真实服务器IP内网ip)

# ipvsadm -a -t 202.100.100.100:80 -r 192.168.1.12:80 -g  (定义真实服务器IP内网ip)

# ipvsadm -l                             (查看集群信息字母l)

# /etc/rc.d/init.d/ipvsadm save      (将IPVS Table保存到/etc/sysconfig/ipvsadm)
 
# chkconfig --add ipvsadm

# service ipvsadm start  (启动ipvsadm)

或者
 
# /etc/rc.d/init.d/ipvsadm start
 
开机自启动
 
# chkconfig --level 35 ipvsadm on
 
# vi /usr/local/apache/htdocs/1.html

192.168.1.10

:wq


无外网主机(192.168.1.12):

# route add default gw 192.168.1.10

# vi /usr/local/apache/htdocs/1.html

192.168.1.12

:wq

 

验证:


http://202.100.100.100/1.html

 

附:

 

ipvsadm -C 
-C 清除表中所有的记录

ipvsadm -A -t 192.168.3.187:80 -s rr
-A  --add-service在服务器列表中新添加一条新的虚拟服务器记录
-t 表示为tcp服务
-u 表示为udp服务
-s --scheduler 使用的调度算法, rr | wrr | lc | wlc | lblb | lblcr | dh | sh | sed | nq 默认调度算法是 wlc

ipvsadm -a -t 192.168.3.187:80 -r 192.168.200.10:80 -m -w 1
-a --add-server 在服务器表中添加一条新的真实主机记录
-t --tcp-service  说明虚拟服务器提供tcp服务
-u --udp-service 说明虚拟服务器提供udp服务
-r --real-server  真实服务器地址
-m --masquerading 指定LVS工作模式为NAT模式
-w --weight 真实服务器的权值

-g --gatewaying 指定LVS工作模式为直接路由器模式(也是LVS默认的模式)
-i --ipip 指定LVS的工作模式为隧道模式
-p 会话保持时间,定义流量呗转到同一个realserver的会话存留时间