keepalived文件说明

配置文件keepalived.conf

! Configuration File for keepalived

global_defs {
   notification_email {
     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   #邮件服务器通知地址(暂不配置,默认即可)
   smtp_server 192.168.200.1
   #邮件服务器超时时间(暂不配置,默认即可)
   smtp_connect_timeout 30
   #当前虚拟机的IP地址
   router_id 192.168.42.128
}

vrrp_script Monitor_Nginx {
 script "/etc/keepalived/nginx_check.sh"    #检测脚本执行的路径
 interval 2                                 #检测脚本执行的间隔
 weight 2                                   #检测脚本执行的权重
}

vrrp_instance VI_1 {
    state MASTER         #标识这个机器是MASTER还是BACKUP
    interface ens33       #当前机器的网卡名称
    virtual_router_id 51 #虚拟路由的编号,主备必须一致
    priority 100         #主、备机取不同的优先级,主机值较大,备份机值较小
    advert_int 1         #(VRRP Multicast广播周期秒数)
    authentication {
        auth_type PASS   #(VRRP认证方式)
        auth_pass 1111   #(密码)
    }
    track_script {
                Monitor_Nginx #(调用nginx进程检测脚本)
        }
    virtual_ipaddress {
        192.168.42.50  #虚拟IP地址
    }
}

注意router_id、state、interface的值,下面有具体说明

配置文件分三部分:
  1. global_defs 全局配置

    router_id 指定机器标识。或虚拟机IP地址,或主机名。在host文件中加入

    127.0.0.1    LVS_DEVEL   
    

    router_id处改为router_id LVS_DEVEL

  2. script 检测脚本配置

    选项说明:
    scrip "/path/to/somewhere":指定要执行的脚本的路径。(健康检查脚本)
    interval <INTEGER>:指定脚本执行的间隔。单位是秒。默认为1s。
    weight <-254 --- 254>:调整优先级。默认为2.   
    

    如果脚本中的条件成立执行下面操作

    interval 脚本每隔多长时间执行一次,2 每隔2s执行一次

    weight 设置当前服务器的权重 -20 代表降低20,主服务器挂掉,就不作为主服务器,让从服务器承担主服务器的责任,让其权重有所改变

  3. 虚拟ip的地址

    选项说明:
    interface      #监听网卡,可通过ifconfig命令查看,如下图所示:
    advert_int  #检查时间间隔,每隔多长时间向服务器发送一次心跳,检测服务器是否还活着,默认为1秒
    authentication  #权限认证方式,认证方式可以是PASS或AH
    virtual_ipaddress  #虚拟IP,可以绑定多个
    track_script    #引用健康检查脚本函数
    

在这里插入图片描述

采用的接口网卡,注意后续所有的虚拟IP都需要在网卡支持的网段范围内,

比如centos默认是ens33,用ifconfig查看网卡网段,如果网卡只有192.168的内网网段那么虚拟IP也必须要用这个网段

脚本文件nginx_check.sh

#!/bin/bash
A=`ps -C nginx –no-header |wc -l`
if [ $A -eq 0 ];then
 /usr/local/nginx/sbin/nginx
 sleep 2
 if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then
 killall keepalived
 fi
fi

nginx启动脚本的位置。

检测如果nginx挂掉,将所有进程杀掉, 保证从服务器替代主服务器,处理所有的访问请求

VRRP实例(instance)配置参数说明及示例

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值