zoukankan      html  css  js  c++  java
  • nginx高可用(5)

    1、概述

    1.1、存在的问题

      如果 nginx 宕机了,则请求将实现不了效果

     
     

    1.2、解决方案:高可用

    通过使用 主-从(备) nginx,当主nginx 出现宕机,自动切换到从(备) nginx 可用使用,保证请求可以成功。

     
     

    条件:
    (1)需要至少两台 nginx 服务器
    (2)需要 keepalive
    (3)需要虚拟 ip

    2、高可用使用

    2.1、准备工作

    (1)准备两台服务器 192.169.92.128 和 192.168.92.129;
    (2)两台服务器中都安装 nginx
    (3)两台服务器中都安装 keepalive

    安装:keepalive

    yum install keepalived -y
    

    安装完毕后,查看是否安装成功:

    rpm -q -a keepalived
    

    安装完毕后再 /etc/ 文件下会生成个 keepalived 文件夹 里面会有一个 keepalived.conf 配置文件;

    2.2、完成高可用配置(主从配置)

    (1)修改 /etc/keepalived/keepalived.cong 配置文件

    global_defs {
       notification_email {
         acassen

    (2)在 /usr/local/src/ 下添加检测脚本

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

    2.3、启动两台服务器的 nginx 和 keepalived 测试

    其中启动 keepalived 命令如下:

    systemctl start keepalived.service 
    
    (1)在地址栏输入虚拟IP:192.168.92.150
     
     

    其中在主服务器中输入 ip address 可查看如下:

     
     

    其中在从(副)服务器中输入 ip address 可查看如下:

     
     
    (2)关闭主服务器的 nginx 和 keepalived 后再此刷新访问页面

    此时访问的是从(副)服务器


     
     
     
     
  • 相关阅读:
    菜鸟学python之程序初体验
    菜鸟学python之大数据的初认识
    js获取本地ip地址和外网IP地址
    Js中foreach()用法及使用的坑
    模拟实现Promise,探究Promise原理
    搞懂JS的事件循环(Event Loop)和宏任务/微任务
    NodeJS 中的 LRU 缓存(CLOCK-2-hand)实现
    设计模式在前端项目中的应用
    JS 中一些高效的魔法运算符
    Js中如何克隆对象?
  • 原文地址:https://www.cnblogs.com/hwllovelq/p/12132468.html
Copyright © 2011-2022 走看看