nginx学习:nginx高可用的配置

1. 高可用

2. 修改 keepalived.conf 内容

global_defs {
        notification_email {
                acassen@firewall.loc
                failover@firewall.loc
                sysadmin@firewall.loc
        }
        notification_email_from Alexandre.Cassen@firewall.loc
        smtp_server 192.168.18.100
        smtp_connect_timeout 30
        
        #标识本节点的字符串,通常为hostname,可以在/etc/hosts 文件中设置 本机对应的id
        router_id LVS_DEVEL
}

vrrp_script chk_nginx {
        
        # 检测 nginx 状态的脚本路径
        script "/home/eric/file/nginx_check.sh"
        
        #(检测脚本执行的间隔)
        interval 2
        
        #如果条件成立,权重 减 20
        weight -20
}
vrrp_instance VI_1 {
        # 主节点为 MASTER 对应的备份节点为 BACKUP
        state MASTER
        # 绑定虚拟IP的网络接口,与本机 IP 所在的网络接口相同
        interface ens33
        
        # 虚拟路由的ID号,两个节点设置必须一样,相同的 virtual_router_id 为一个组
        virtual_router_id 50
        
        # 本机IP地址
        mcast_src_ip 192.168.18.100
        
        # 主、备机取不同的优先级,主机值较大,备份机值较小
        priority 100 
        
        #优先级高的设置,nopreempt 解决异常恢复后再次抢占的问题
        nopreempt
        #组播信息发送间隔,两个节点设置必须一样,默认 1s
        advert_int 1
        
        #设置验证信息,两个节点必须一致
        authentication {
                auth_type PASS
                auth_pass 1111
        }
        
        # 将track_script 块加入 instance 配置块
        track_script{
                # 执行nginx 监控的服务
                chk_nginx
        }
        
        virtual_ipaddress {
                # 虚拟地址 , 可以定义多个
                192.168.18.50
        }
}

3. 添加 nginx_check.sh 检测脚本

作用:如果nginx没有启动,则启动nginx ,如果启动不成功,则杀掉keepalived

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

4. 启动 nginxkeepalived

# 启动nginx
./nginx
# 启动keepalived(或者加入系统服务)
./keepalived -f /home/eric/keepalived/etc/keepalived/keepalived.conf

5. 测试,当一台nginx 挂掉, 依然能正常访问

# 访问虚拟ip
http://192.168.18.50:9000/1.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值