高可用实践之二 双机热备负载均衡方案

##keepalived 使用教程

###安装
安装相关组建
    >yum -y  install openssl  openssl-devel  popt popt-devel

下载   
    >wget http://www.keepalived.org/software/keepalived-1.2.15.tar.gz
解压
    >tar zxvf keepalived-1.2.15.tar.gz  #解压安装包
编译

    >./configure --prefix=/usr/local/keepalived --sbindir=/usr/local/keepalived/sbin  #
安装
     > make && make install
换成服务
        
        <---拷贝keepalived相关启动命令--->
        # cp /usr/local/keepalived/sbin/keepalived /usr/sbin/ 
        # cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/ 
        <---将keepalived启动脚本添加到系统服务--->
        # cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/
        # chkconfig --add keepalived 
        # chkconfig --level 2345 keepalived on
        <---创建keepalived相关配置文件--->
        # mkdir -p /etc/keepalived 
        # cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived
        <---启动--->
        service keepalived start 

### 配置
列表

        slb     192.168.202.3 
        master  192.168.201.4 
        slave   192.168.201.5
        vip     192.168.201.100 
master 配置

        ifconfig
            ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 192.168.202.5  netmask 255.255.255.0  broadcast 192.168.202.255
        // 这里的网卡为 ens33 
        vim /etc/keepalived/keepalived.conf 
        修改为如下
        vrrp_instance VI_1 {
            state MASTER
            interface ens33
            virtual_router_id 51
            priority 100
            advert_int 1
            authentication {
                auth_type PASS
                auth_pass 1111
            }
         #添加脚本检查,可以不用
        vrrp_script chk_nginx {
            script "/etc/keepalived/check_nginx.sh" 
            interval 2 
            weight -5 
            fall 3  
            rise 2 
        }
            virtual_ipaddress {
                #vip地址
                192.168.202.100
            }
            #触发脚本
            track_script {
               chk_nginx 
            }

        }

backup 配置
                
         vim /etc/keepalived/keepalived.conf 
            修改为如下


            vrrp_script chk_nginx {
                script "/etc/keepalived/check_nginx.sh" 
                interval 2 
                weight -5 
                fall 3  
                rise 2 
            }
            vrrp_instance VI_1 {
                state BACKUP
                interface ens33
                virtual_router_id 51
                priority 100
                advert_int 1
                authentication {
                    auth_type PASS
                    auth_pass 1111
                }

                #触发脚本
                track_script {
                   chk_nginx 
                }


                virtual_ipaddress {
                    #vip地址
                    192.168.202.100
                }

            }
            重启服务
 

和nginx 搭配使用

  如果两台nginx服务器其中有一台nginx 挂了,重启不了,则关闭keepalived进程 脚本为如下
        vim /etc/keepalived/check_nginx.sh :
        
#!/bin/bash
counter=$(ps -C nginx --no-heading|wc -l)
if [ "${counter}" = "0" ]; then
    /usr/local/bin/nginx
    sleep 2
    counter=$(ps -C nginx --no-heading|wc -l)
    if [ "${counter}" = "0" ]; then
        /etc/init.d/keepalived stop
    fi
fi


材料



        192.168.202.4        keepalived nginx
        192.168.202.5        keepalived nginx
        192.168.202.100      keepalived vip 
        192.168.202.6        web服务器
        192.168.202.7        web服务器

配置负载均衡器
        
        在服务器上 192.168.202.4 和 192.168.202.5 上
       upstream slb_test {
           #ip_hash;  #根据ip哈希,进行转发 
           server 192.168.202.6;
           server 192.168.202.7;
        }
        server{
            listen 80 default_server;
            server_name www.lnmp.org;
            index index.html index.htm index.php;
            root  /home/wwwroot/default;
            location / {
               proxy_pass  http://slb_tuzuu;
             }
          
                 
            access_log  /home/wwwlogs/access.log;
        }
        
         备注: 这里如果做所有的请求转发的就按照以上的配置,去掉php的配置


*  配置keepalived 在 192.168.202.4 和 192.168.202.5
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值