Nginx入门到实践:配置高可用集群(双机热备)

2020-08-2617:59:18服务器及运维Comments1,533 views字数 1387阅读模式

12. 配置高可用集群(双机热备)

当主 Nginx 服务器宕机之后,切换到备份 Nginx 服务器文章源自菜鸟学院-https://www.cainiaoxueyuan.com/yunwei/20157.html

Nginx入门到实践:配置高可用集群(双机热备)

首先安装 keepalived,文章源自菜鸟学院-https://www.cainiaoxueyuan.com/yunwei/20157.html

yum install keepalived -y
复制代码

然后编辑 /etc/keepalived/keepalived.conf 配置文件,并在配置文件中增加 vrrp_script 定义一个外围检测机制,并在 vrrp_instance 中通过定义 track_script 来追踪脚本执行过程,实现节点转移:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/yunwei/20157.html

global_defs{
   notification_email {
        acassen@firewall.loc
   }
   notification_email_from Alexandre@firewall.loc
   smtp_server 127.0.0.1
   smtp_connect_timeout 30 // 上面都是邮件配置,没卵用
   router_id LVS_DEVEL     // 当前服务器名字,用hostname命令来查看
}
vrrp_script chk_maintainace { // 检测机制的脚本名称为chk_maintainace
    script "[[ -e/etc/keepalived/down ]] && exit 1 || exit 0" // 可以是脚本路径或脚本命令
    // script "/etc/keepalived/nginx_check.sh"    // 比如这样的脚本路径
    interval 2  // 每隔2秒检测一次
    weight -20  // 当脚本执行成立,那么把当前服务器优先级改为-20
}
vrrp_instanceVI_1 {   // 每一个vrrp_instance就是定义一个虚拟路由器
    state MASTER      // 主机为MASTER,备用机为BACKUP
    interface eth0    // 网卡名字,可以从ifconfig中查找
    virtual_router_id 51 // 虚拟路由的id号,一般小于255,主备机id需要一样
    priority 100      // 优先级,master的优先级比backup的大
    advert_int 1      // 默认心跳间隔
    authentication {  // 认证机制
        auth_type PASS
        auth_pass 1111   // 密码
    }
    virtual_ipaddress {  // 虚拟地址vip
       172.16.2.8
    }
}
复制代码

其中检测脚本 nginx_check.sh,这里提供一个:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/yunwei/20157.html

#!/bin/bash
A=`ps -C nginx --no-header | wc -l`
if [ $A -eq 0 ];then
    /usr/sbin/nginx # 尝试重新启动nginx
    sleep 2         # 睡眠2秒
    if [ `ps -C nginx --no-header | wc -l` -eq 0 ];then
        killall keepalived # 启动失败,将keepalived服务杀死。将vip漂移到其它备份节点
    fi
fi
复制代码

复制一份到备份服务器,备份 Nginx 的配置要将 state 后改为 BACKUPpriority 改为比主机小。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/yunwei/20157.html

设置完毕后各自 service keepalived start 启动,经过访问成功之后,可以把 Master 机的 keepalived 停掉,此时 Master 机就不再是主机了 service keepalived stop,看访问虚拟 IP 时是否能够自动切换到备机 ip addr文章源自菜鸟学院-https://www.cainiaoxueyuan.com/yunwei/20157.html

再次启动 Master 的 keepalived,此时 vip 又变到了主机上。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/yunwei/20157.html

作者:SHERlocked93文章源自菜鸟学院-https://www.cainiaoxueyuan.com/yunwei/20157.html

文章源自菜鸟学院-https://www.cainiaoxueyuan.com/yunwei/20157.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/yunwei/20157.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定