码迷,mamicode.com
首页 > 其他好文 > 详细

keepalived+lvs快速部署

时间:2015-07-18 17:14:10      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:

  1. 准备工作,配置高可用yum源


  2. # Main rhel6.5 server[base]name=Instructor Server Repositorybaseurl=http://172.25.254.250/rhel6.5gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
    # LoadBalancer packages
    [LoadBalancer]
    name=Instructor LoadBalancer Repository
    baseurl=http://172.25.254.250/rhel6.5/LoadBalancer
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
    # ResilientStorage
    [ResilientStorage]
    name=Instructor ResilientStorage Repository
    baseurl=http://172.25.254.250/rhel6.5/ResilientStorage
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
    # ScalableFileSystem
    [ScalableFileSystem]
    name=Instructor ScalableFileSystem Repository
    baseurl=http://172.25.254.250/rhel6.5/ScalableFileSystem
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
  3. 两台keepalived安装相关组件?

yum install ipvsadm kernel--xen--devel kernel-devel -y

wget http://www.keepalived.org/software/keepalived-1.1.17.tar.gz
tar zxf keepalived-1.1.17.tar.gz
cd keepalived-1.1.17
./configure ----prefix=/usr/local/keepalived ----with--kernel--dir=/kernels/2.6.18-92.。。。 这个目录要安装kernel-devel 哦自己tab

make && make instal

ln --s /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

ln -s /usr/local/keepalived/sbin/keepalived /usr/sbin/

ln --s /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/
ln --s /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/

3.vim /etc/keepalived/keepalived.conf

! Configuration File for keepalived
global_defs {
   notification_email {
     root@localhost.com
   }
   notification_email_from root@localhost.com
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}
vrrp_instance VI_1 {
    state MASTER //备用机写BACKUP
    interface eth0
    virtual_router_id 51
    priority 150 //权值 BACKUP的要比这小
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
 }
    virtual_ipaddress {
        172.25.254.100
    }
}
virtual_server 172.25.254.100 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR  //采用路由直连
    nat_mask 255.255.255.0
    protocol TCP
    real_server 172.25.254.1 80 {
        weight 1
        TCP_CHECK{
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
     }
    real_server 172.25.254.2 80 {
        weight 1
        TCP_CHECK{
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
}

4.后端realserver上执行脚本

#!/bin/bash
# description: Config realserver lo and apply noarp
 
SNS_VIP=172.25.254.100
 
/etc/rc.d/init.d/functions
 
case "$1" in
start)
       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
       sysctl -p >/dev/null 2>&1
       echo "RealServer Start OK"
 
       ;;
stop)
       ifconfig lo:0 down
       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 "RealServer Stoped"
       ;;
*)
       echo "Usage: $0 {start|stop}"
       exit 1
esac
 
exit 0

分别启动realserver的httpd服务整个主页随便hostname什么的测试就可以了

测试方法:在有VIP的主机上 ipvsadm 查看

Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  172.25.254.100:http rr
  -> server1.example.com:http     Route   1      0          0         
  -> server2.example.com:http     Route   1      0          0 

web访问vip 主页来回切换

关闭server2的httpd服务

web访问VIP 直接转到了server1

关闭一台机子的keepalived服务 vip迁移 另一台机子 ipvsadm 出现数据

就是这样keepalived+lvs负载均衡集群到此搭建完成      


keepalived+lvs快速部署

标签:

原文地址:http://my.oschina.net/loveleaf/blog/480116

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!