lvs+heartbeat 安装和配置

来源:互联网 发布:matlab cell变成矩阵 编辑:程序博客网 时间:2024/05/16 01:04
配置环境:
    主调度器A:192.168.8.131(eth0)
    从调度器B:192.168.8.132(eth0)
    真实服务器R1:192.168.8.133
    真实服务器R2:192.168.8.135
    虚拟IP(VIP):192.168.8.188

准备工作:调度器A和B的/etc/hosts内加入以下内容:以便解析
    vi /etc/hosts
    192.168.0.111     master
    192.168.0.112     backup
配置主调度器A:
    1.安装libnet-1.1.2.1.tar.gz
       (1)tar –zxvf  libnet-1.1.2.1.tar.gz
       (2)cd libnet-1.1.2.1
       (3)./configure
       (4)make && make install
    2.安装kernel-devel
       (1)首先查看内核:uname –a
       (2)然后在安装对应内核的kernel-devel
       (3)将当前使用内核连接到/usr/src/linux
    3.安装ipvsadm-1.24.tar.gz
       (1)tar –zxvf ipvsadm-1.24.tar.gz
       (2)cd ipvsadm-1.24
       (3)make && make install
    4.安装glib2-devel
    5.安装Heartbeat-3-0-STABLE-3.0.2.tar.bz2
    6.配置lvs启动脚本(采用lvs-DR模式)<!--more-->
#!/bin/sh
VIP1=192.168.8.86
RIP1=192.168.8.131
RIP2=192.168.8.132
RIP3=192.168.8.133
RIP4=192.168.8.134
RIP5=192.168.8.135

./etc/rc.d/init.d/functions
case "$1" in
        start)
        echo "start lvs of master"
        /sbin/ifconfig eth0:0 $VIP1 broadcast $VIP1 netmask 255.255.255.255 up
        /sbin/route add -host $VIP1 dev eth0:0
        /sbin/ipvsadm -C
        /sbin/ipvsadm -A -t $VIP1:80 -s lc
        /sbin/ipvsadm -a -t $VIP1:80 -r $RIP1:80 -g
        /sbin/ipvsadm -a -t $VIP1:80 -r $RIP2:80 -g
        /sbin/ipvsadm -a -t $VIP1:80 -r $RIP3:80 -g
        /sbin/ipvsadm -a -t $VIP1:80 -r $RIP4:80 -g
        /sbin/ipvsadm -a -t $VIP1:80 -r $RIP5:80 -g
        /sbin/ipvsadm
        ;;
        stop)
        echo "close lvs of master"
        /sbin/ipvsadm -C
        ;;
        *)
        echo "Usage: $0 {start|stop}"
        exit 1
esac

修改ha.cf文件

logfile /var/log/ha-log

keepalive 2

deadtime 30

warntime 10

initdead 60

udpport 694

bcast   eth0:1

ucast eth0:1 192.168.8.88

auto_failback on

node    master
node    backup

ping 192.168.8.1

respawn root /usr/lib/heartbeat/ipfail

apiauth ipfail gid=root uid=root


修改haresources
vi /etc/ha.d/haresources
quxinyao 192.168.8.188 lvs ldirectord


修改ldirectord.cf文件
vi /etc/ha.d/ldirectord.cf

&lt;1>设置真实服务器的超时时间   checktimeout=30

&lt;2>监视真实服务器的时间间隔   checkinterval=10

&lt;3>如全部真实服务器失败,则转发至本地  fallback=127.0.0.1:80

&lt;4>改变配置文件内容,不需要重新ldirectord autoreload=yes

&lt;5>指定日志位置 logfile="/var/log/ldirectord.log"  quiescent=no

&lt;6>指定虚拟IP   virtual=192.168.8.188:80

&lt;7>指定真实服务器IP及监听端口

    real=192.168.8.131:80  gate

    real=192.168.8.132:80  gate

    real=192.168.8.133:80  gate

    real=192.168.8.134:80  gate

    real=192.168.8.135:80  gate

    fallback=127.0.0.1:80   gate

    service=http

&lt;8>监听测试页面名称,这个页面放入真实服务器web服务的根目录

request="test.html"

&lt;9>指定测试页面返回内容

    receive="Test Page"

    virtualhost=v.abc.cn

&lt;10>指定转发算法

    scheduler=lc   //这里的算法要和LVS脚本的算法一样

    protocol=tcp



修改 authkeys文件配置
    vi /etc/ha.d/authkeys
    auth 1
    1 crc


realserver 脚本

vi /etc/init.d/relaserver
#!/bin/bash
#description : start realserver
VIP=192.168.8.188
/etc/rc.d/init.d/functions
case "$1" in
        start)
        echo " start LVS of REALServer"
        /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/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


配置完成后启动启动服务

ipvsadm –ln查看服务器列表
原创粉丝点击