CentOS5.5环境下布署LVS+keepalived

CentOS5.5环境下布署LVS+keepalived

 

lvs-master192.168.4.80

lvs-backup192.168.4.79(备份服务器配置和master差不多)

vip192.168.4.81 (必须是能访问的ip地址)

web1192.168.4.105

web2192.168.4.106

netmask255.255.255.0

gateway192.168.4.1

调试时候最好关闭防火墙selinux,或用iptables命令允许防火墙通过的ip和端口

 

虚拟机ip设置成静态内网ip

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0 #默认不动

BOOTPROTO=static  #改成static

ONBOOT=yes #默认不动

HWADDR=08:00:27:c4:2f:85 #默认不动

IPADDR=192.168.4.105 #分配的内网ip

IPV6INIT=no #默认不动

IPV6_AUTOCONF=no #默认不动

BROADCAST=192.168.4.255 #广播网段

NETMASK=255.255.255.0 #子网掩码

GATEWAY=192.168.4.1 #网关

DNS1=8.8.8.8 #首选DNS 这里用谷歌的

DNS2=8.8.4.4 #备用DNS 这里用谷歌的

# service network restart //重启网卡

# ifconfig  //查看本机ip是否设置的ip

CentOS5.5环境下布署LVS+keepalived - 安时代 - 理想时代

  

CentOS5.5环境下布署LVS+keepalived - 安时代 - 理想时代

  

 

 

 

 

CentOS5.5环境下布署LVS+keepalived - 安时代 - 理想时代

  

 

开始搭建配置Lvs

 

//虚拟服务器和备份服务器安装ipvsadm ,keepalived

# cd /data/soft/

# wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz

# wget http://www.keepalived.org/software/keepalived-1.1.17.tar.gz

 

//建立软连接(类似快捷方式),不然安装会出错要是/usr/src/kernels下没有2.6.xxxx则安装kernel-devel

#yum -y install kernel-devel 

# ln -sv /usr/src/kernels/2.6.xxxxxx/ /usr/src/linux

 

//安装ipvsadm

# tar -zxvf ipvsadm-1.24.tar.gz

# cd ipvsadm-1.24

# make && make install

 

//安装keepalived  确保已安装了openssl-devel,检查命令 rpm -qa|grep openssl-devel

# tar -zxvf keepalived-1.1.17.tar.gz

# cd keepalived-1.1.17

# ./configure --with-kernel-dir=/usr/src/kernels/2.6.xxxxxx/

# make && make install

 

//配置keepalived

# cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/

# cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/

# mkdir /etc/keepalived

# cp /usr/local/sbin/keepalived /usr/sbin/

# vi /etc/keepalived/keepalived.conf (keepalived配置文件,没有这个文件就创建)

 

 

global_defs {

   notification_email {

      king_819@163.com

   }

   notification_email_from king_819@163.com

   smtp_server smtp.163.com

  # smtp_connect_timeout 30

   router_id LVS_DEVEL

}

 

# VIP1

vrrp_instance VI_1 {

    state MASTER             #备份服务器上将MASTER改为BACKUP   

    interface eth0

    lvs_sync_daemon_inteface eth0

    virtual_router_id 51

    priority 100    # 备份服务上将100改为90

    advert_int 5

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

        192.168.4.81   

        #(如果有多个VIP,继续换行填写.)

    }

}

 

virtual_server 192.168.4.81 80 {

    delay_loop 6                  #(每隔10秒查询realserver状态)

    lb_algo wlc                  #(lvs 算法)

    lb_kind DR                  #(Direct Route)

    persistence_timeout 5        #(同一IP的连接60秒内被分配到同一台realserver)

    protocol TCP                #(TCP协议检查realserver状态)

 

    real_server 192.168.4.105 80 { #这里是监听真实服务器80端口 apache服务,

        weight 100               #(权重)

        TCP_CHECK {

        connect_timeout 10       #(10秒无响应超时)

        nb_get_retry 3

        delay_before_retry 3

        connect_port 80

        }

    }

    real_server 192.168.4.106 80 {

        weight 100

        TCP_CHECK {

        connect_timeout 10

        nb_get_retry 3

        delay_before_retry 3

        connect_port 80

        }

     }

}

 

# service keepalived start|stop  //(启动和停止keepalived服务器)

# chkconfig -level 2345 keepalived on //加入到服务快捷方式,可以直接执行 service keepalived start|stop

# ip add   //看到记录 inet 192.168.4.81/32 scope global eth0 说明配置成功了

CentOS5.5环境下布署LVS+keepalived - 安时代 - 理想时代

  

 

 

配置realserver  web1: 192.168.4.105 和 web2: 192.168.4.105

//想要测试 最好在真实服务器安装apache, 真实服务器不用安装lvs软件

# vi /usr/sbin/lvs_real.sh

 

#!/bin/bash

SNS_VIP=192.168.4.81

/etc/rc.d/init.d/functions

case "$1" in

start)

       /sbin/ifconfig lo:0 $SNS_VIP netmask 255.255.255.255 broadcast $SNS_VIP

       /sbin/route add -host $SNS_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

   echo "1" > /proc/sys/net/ipv4/ip_forward  #允许数据包转发 1允许 0禁止

       sysctl -p >/dev/null 2>&1

       echo "RealServer Start OK"

       ;;

stop)

       /sbin/ifconfig lo:0 down

       /sbin/route del $SNS_VIP >/dev/null 2>&1

       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 "0" > /proc/sys/net/ipv4/ip_forward  #0禁止数据包转发

       echo "RealServer Stoped"

       ;;

*)

       echo "Usage: $0 {start|stop}"

       exit 1

esac

exit 0

 

# chmod +x /usr/sbin/lvs_real.sh

#/usr/sbin/lvs_real.sh start //启动

# echo "/usr/sbin/lvs_real.sh start" >> /etc/rc.local //自动随服务器启动

看到下面的则表示成功

CentOS5.5环境下布署LVS+keepalived - 安时代 - 理想时代

  

 

回到虚拟服务器 virtual_server 192.168.4.80 查看一些lvs的状态信息

# ttail -n 10 /var/log/messages   //查看keepalived监听状态

CentOS5.5环境下布署LVS+keepalived - 安时代 - 理想时代

  

 

# ipvsadm     //查看集群请求的当前状态

CentOS5.5环境下布署LVS+keepalived - 安时代 - 理想时代

  

 

# ipvsadm -Ln  //查看集群中的服务器

CentOS5.5环境下布署LVS+keepalived - 安时代 - 理想时代

  

# ipvsadm -lnc  //查看集群请求的 被分发的链接

CentOS5.5环境下布署LVS+keepalived - 安时代 - 理想时代

  

 

 

测试访问:http://192.168.4.81/

CentOS5.5环境下布署LVS+keepalived - 安时代 - 理想时代

  

 

CentOS5.5环境下布署LVS+keepalived - 安时代 - 理想时代

  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值