知识储备:

ipvsadm:

    管理集群服务

        添加:-A -t|u|f  service-address [-s scheduler]

                -t: TCP协议的集群

                -u: UDP协议的集群

                -f: FWM: 防火墙标记

                service-address:     IP:PORT

        修改:-E

        删除:-D -t|u|f service-address

 

    管理集群服务中的RS

        添加:-a -t|u|f service-address -r server-address [-g|i|m] [-w weight]

            -t|u|f service-address:事先定义好的某集群服务

            -r server-address: 某RS的地址,在NAT模型中,可使用IPPORT实现端口映射;

            [-g|i|m]: LVS类型

            -g: DR

            -i: TUN

            -m: NAT

            [-w weight]: 定义服务器权重

    修改:-e

    删除:-d -t|u|f service-address -r server-address

 

    查看

    -L|l

    -n: 数字格式显示主机地址和端口

    --stats:统计数据

    --rate: 速率

    --timeout: 显示tcptcpfinudp的会话超时时长

    -c: 显示当前的ipvs连接状况

 

    删除所有集群服务

        -C:清空ipvs规则

    保存规则

        service ipvsadm save

        或:

        -S

        # ipvsadm -S > /path/to/somefile

    载入此前的规则:

        -R

        # ipvsadm -R < /path/form/somefile

准备

三台linux虚拟机:RS1RS2DR,可以上互联网并配置好yun源,RS1RS2安装web服务(yum install         -y httpd),DR 安装ipvsadm 这一管理集群服务的命令行工具

yum install -y ipvsadm)。

IP地址规划:RS1192.168.10.8 255.255.255.0 网关 192.168.10.7

  RS2:192.168.10.9 255.255.255.0 网关 192.168.10.7

  DR:eth0:192.168.10.7 255.255.255.0

                    eth1:192.168.0.2 255.255.255.0 192.168.0.1

做法

1.将三台主机的eth0网卡连接模式改为仅主机模式,DReth1改为桥接模式,根据地址规划配置对应IP,    使三台虚机网络互通

2.为了显示效果,我们在两个RS上分别提供不同的web页面

    RS1echo fsy.RS1 > /var/www/html/index.html

    RS1echo fsy.RS2 > /var/www/html/index.html

3.在RS1RS2上启动web服务并测试(在做的过程中遇到问题可以尝试将防火墙和SELinux关闭)

RS1:#service httpd start

    #curl  http://192.168.10.8

        #curl  http://192.168.10.9

RS2:#service httpd start

    #curl  http://192.168.10.8

        #curl  http://192.168.10.9

4.在DR上进行测试

#curl  http://192.168.10.8

        #curl  http://192.168.10.9

5.待测试一切正常后在DR上进行配置(写ipvs规则)

# ipvsadm -A -t 192.168.0.2:80 -s rr

# ipvsadm -a -t 192.168.0.2:80 -r 192.168.10.8 -m

# ipvsadm -a -t 192.168.0.2:80 -r 192.168.10.9 -m

# ipvsadm -L -n查看

6.打开网卡间转发并关闭防火墙

# echo 1 > /proc/sys/net/ipv4/ip_forward

#service iptables stop

7.打开浏览器进行访问测试。

如我所料,一切正常!