zoukankan      html  css  js  c++  java
  • nginx+keepalived简单双机主从热备

    双机主从热备概述

    可以两台机子互为热备,平时各自负责各自的服务。在做上线更新的时候,关闭一台服务器的tomcat后,nginx自动把流量切换到另外一台服务的后备机子上,从而实现无痛更新,保持服务的持续性,提高服务的可靠性,从而保证服务器7*24小时运行。

    首先使用keepalived虚拟VIP

    删除掉原来的  rm -rf  /etc/keepalived/keepalived.conf

    vi /etc/keepalived/keepalived.conf   

    添加:

    vrrp_script chk_nginx {

    script "/etc/keepalived/nginx_check.sh" #运行脚本,脚本内容下面有,就是起到一个nginx宕机以后,自动开启服务
    interval 2 #检测时间间隔
    weight -20 #如果条件成立的话,则权重 -20
    }
    # 定义虚拟路由,VI_1 为虚拟路由的标示符,自己定义名称
    vrrp_instance VI_1 {
    state MASTER #来决定主从 MASTER为主 BACKUP为从
    interface eth0 # 绑定虚拟 IP 的网络接口,根据自己的机器填写 ip a指令查看 (如下图)
    virtual_router_id 121 # 虚拟路由的 ID 号, 两个节点设置必须一样 121自己随便定义 是个数字就OK

    mcast_src_ip 192.168.91.7 #填写本机ip

    priority 100 # 节点优先级,主要比从节点优先级高

    nopreempt # 优先级高的设置 nopreempt 解决异常恢复后再次抢占的问题
    advert_int 1 # 组播信息发送间隔,两个节点设置必须一样,默认 1s
    authentication { ##账号密码
    auth_type PASS
    auth_pass 1111
    }
    # 将 track_script 块加入 instance 配置块
    track_script {
    chk_nginx #执行 Nginx 监控的服务
    }

    virtual_ipaddress {
    192.168.91.110 # 虚拟ip,也就是解决写死程序的ip怎么能切换的ip,也可扩展,用途广泛。可配置多个。
    }
    }

    Nginx+keepalived简单双机主从热备

    每个服务虚拟安装keepalived 虚拟一个VIP ,配置主从关系,当主挂了,直接走备机。

    Keepalived虚拟VIP 地址 192.168.91.666

    A 服务器 192.168.91.5  从

    B 服务器 192.168.91.7  主

    Nginx安装: https://www.cnblogs.com/toov5/p/9902692.html

    安装成功后修改主服务器的Nginx html的index.html 

    ’访问:  真实物理地址访问结果

      启动  service keepalived start

     启动日志   tail -f /var/log/messages

     

    成功!

    或者 ip a

    访问虚拟ip

    同理设置备机:  修改一个配置 state BACKUP  一个本地ip即可 

    vrrp_script chk_nginx {

    script "/etc/keepalived/nginx_check.sh" #运行脚本,脚本内容下面有,就是起到一个nginx宕机以后,自动开启服务
    interval 2 #检测时间间隔
    weight -20 #如果条件成立的话,则权重 -20
    }
    # 定义虚拟路由,VI_1 为虚拟路由的标示符,自己定义名称
    vrrp_instance VI_1 {
    state BACKUP #来决定主从 MASTER为主 BACKUP为从

    interface eth0 # 绑定虚拟 IP 的网络接口,根据自己的机器填写 ip a指令查看 (如下图)
    virtual_router_id 121 # 虚拟路由的 ID 号, 两个节点设置必须一样 121自己随便定义 是个数字就OK

    mcast_src_ip 192.168.91.5  #填写本机ip

    priority 100 # 节点优先级,主要比从节点优先级高

    nopreempt # 优先级高的设置 nopreempt 解决异常恢复后再次抢占的问题
    advert_int 1 # 组播信息发送间隔,两个节点设置必须一样,默认 1s
    authentication { ##账号密码
    auth_type PASS
    auth_pass 1111
    }
    # 将 track_script 块加入 instance 配置块
    track_script {
    chk_nginx #执行 Nginx 监控的服务
    }

    virtual_ipaddress {
    192.168.91.110 # 虚拟ip,也就是解决写死程序的ip怎么能切换的ip,也可扩展,用途广泛。可配置多个。
    }
    }

    如果实现一主一备时候 虚拟VIP 只能在一台服务器存放 

    如果实现多主 多备情况  虚拟VIP 可以多台存放

    一主一备 虚拟ip一样

    但是 VIP是在主机上的 当主机宕机了之后 会在备机

    启动后:

    虚拟vip只在主上

    启动 ngxin  keeplived 服务

    访问

     一直是主,刷新

    停止主 service keepalived stop 访问

     

    虚拟ip 跑这里了 备机

    启动主 

  • 相关阅读:
    YTU 2543: 数字整除
    YTU 2542: 弟弟的作业
    YTU 2541: 汽水瓶
    YTU 2535: C++复数运算符重载(+与<<)
    YTU 2530: 小勇玩lol
    YTU 2520: 小慧唱卡拉OK
    YTU 2517: 打倒魔王↖(^ω^)↗
    YTU 2516: 剪刀石头布
    reload、replace、href、assign、window.history.go(0)的区别
    js 数组排序sort方法
  • 原文地址:https://www.cnblogs.com/toov5/p/9919890.html
Copyright © 2011-2022 走看看