Nginx学习高可用

导读:本篇文章讲解 Nginx学习高可用,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

Nginx 高可用

如果 Nginx 出现问题:

Nginx学习高可用

解决办法:

 

Nginx学习高可用

前期准备:

  • 两台 Nginx 服务器

  • 安装 Keepalived

  • 虚拟 ip

安装 Keepalived:

[root@192 usr]# yum install keepalived -y
[root@192 usr]# rpm -q -a keepalived
keepalived-1.3.5-16.el7.x86_64

修改配置文件:

[root@192 keepalived]# cd /etc/keepalived
[root@192 keepalived]# vi keepalived.conf

分别将如下配置文件复制粘贴,覆盖掉 keepalived.conf,虚拟 ip 为 192.168.25.50。

对应主机 ip 需要修改的是:

  • smtp_server 192.168.25.147(主)smtp_server 192.168.25.147(备)

  • state MASTER(主) state BACKUP(备
    global_defs {
       notification_email {
         acassen@firewall.loc
         failover@firewall.loc
         sysadmin@firewall.loc
       }
       notification_email_from Alexandre.Cassen@firewall.loc
       smtp_server 192.168.25.147
       smtp_connect_timeout 30
       router_id LVS_DEVEL # 访问的主机地址
    }
    
    vrrp_script chk_nginx {
      script "/usr/local/src/nginx_check.sh"  # 检测文件的地址
      interval 2   # 检测脚本执行的间隔
      weight 2   # 权重
    }
    
    vrrp_instance VI_1 {
        state BACKUP    # 主机MASTER、备机BACKUP    
        interface ens33   # 网卡
        virtual_router_id 51 # 同一组需一致
        priority 90  # 访问优先级,主机值较大,备机较小
        advert_int 1
        authentication {
            auth_type PASS
            auth_pass 1111
        }
        virtual_ipaddress {
            192.168.25.50  # 虚拟ip
        }
    }
    

    启动代码如下:

    [root@192 sbin]# systemctl start keepalived.service
    

    Nginx学习高可用
  • Nginx学习高可用
  •  关闭主机 147 的 Nginx 和 Keepalived,发现仍然可以访问。 

原理解析

Nginx学习高可用

 如下图,就是启动了一个 master,一个 worker,master 是管理员,worker是具体工作的进程。

Nginx学习高可用

 worker 如何工作?如下图:

Nginx学习高可用

worker 数应该和 CPU 数相等;一个 master 多个 worker 可以使用热部署,同时 worker 是独立的,一个挂了不会影响其他的。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/13018.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!