欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Nginx配置高可用的集群

程序员文章站 2022-05-07 11:01:02
...

Nginx配置高可用的集群

使用这种高可用集群防止nginx突然挂掉

配置这种情况需要两台服务器,都需安装nginxkeepalived

1、安装keepalived的yum命令

yum install keepalived -y

2、配置高可用 

keepalived安装完成后,修改/etc/keepalived/keepalivec.conf 配置文件

global_defs {
 notification_email {
 [email protected]
 [email protected]
 [email protected]
 }
 notification_email_from [email protected]
 smtp_server 192.168.17.129
 smtp_connect_timeout 30
 router_id LVS_DEVEL
}
vrrp_script chk_http_port {
 script "/usr/local/src/nginx_check.sh"
 interval 2 #(检测脚本执行的间隔 2s)
 weight 2 #(权重)
}
vrrp_instance VI_1 {
 state BACKUP # 备份服务器上将 MASTER 改为 BACKUP 
 interface ens33 //网卡
 virtual_router_id 51 # 主、备机的 virtual_router_id 必须相同
 priority 90  # 主、备机取不同的优先级,主机值较大,备份机值较小
 advert_int 1 # 时间间隔,隔多久去检测
#校验权限方式 pass代表密码 
 authentication {
  auth_type PASS
  auth_pass 1111
 }
 virtual_ipaddress {
  192.168.17.50 // VRRP H 虚拟地址
 } 
}

router_id LVS_DEVEL

这个是你服务器的名字,在/etc/hosts中配置

127.0.0.1 LVS_DEVEL

/usr/local/src 添加检测脚本

#!/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 keepalived 启动
        启动 nginx:./nginx

        启动 keepalived:systemctl start keepalived.service

3、效果

当关闭一台服务器时,会自动切换到从服务器上。