Centos7.9环境下keepalived结合nginx实现负载均衡的高可用(亲测版)

目录

一、负载均衡高可用解释

二、安装

三、Nginx检查脚本创建

四、修改keepalived配置文件


一、负载均衡高可用解释

nginx 作为负载均衡器,所有请求都到了nginx,如果nginx服务器宕机后端web服务将无法提供服务,影响严重。这样nginx作为负载均衡器就没有实际意义。所以为了防止Nginx挂了导致整个服务无法使用的灾难发生,我们这里可以考虑使用Keepalived+Nginx集群实现高可用

二、安装

nginx安装参考:Centos7.9环境下离线安装开源版Nginx(亲测版)_centos7.9离线安装nginx-CSDN博客

keepalived安装参考:Centos7.9环境下安装Keepalived(亲测版)-CSDN博客

三、Nginx检查脚本创建

在 /usr/local/nginx目录下创建nginx_check.sh文件,并编辑内容

c 复制代码
vi /usr/local/nginx/nginx_check.sh
#编辑内容如下

#!/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

确保给这个脚本执行权限

chmod +x /usr/local/nginx/nginx_check.sh

四、修改keepalived配置文件

! Configuration File for keepalived

global_defs {

router_id lb132

}

vrrp_script chk_nginx {

script "/usr/local/nginx/nginx_check.sh"

interval 2

weight -30

}

vrrp_instance VI_1 {

state MASTER

nopreempt

interface ens33

virtual_router_id 51

priority 100

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

track_script {

chk_nginx

}

virtual_ipaddress {

192.168.75.131

}

}

按照以上配置,配置其他服务节点并重启keepalived 服务

相关推荐
光电的一只菜鸡9 小时前
ubuntu之坑(二十)——VMware虚拟机系统无法正常进入如何处理
linux·运维·ubuntu
青 春 记 忆9 小时前
Dify Docker Compose 通用无损升级指南:从备份、双版本预演到切换与回滚
运维·人工智能·python·docker·容器
Java王小怪10 小时前
Docker环境Redis没挂载保存数据
运维·docker·容器
你住过的屋檐10 小时前
【Nginx】linux上安装nginx
linux·运维·nginx
晓晓_za89866812 小时前
开源 GEO 优化源码二次开发:贴牌改造与业务模块扩展实践
java·运维·服务器·开发语言·性能优化·开源
liangshanbo121512 小时前
Nginx 进程管理命令深度面试题解析
java·nginx·面试
云计算DevOps-韩老师13 小时前
【MySQL运维DBA】【SQL基础系列002篇】
运维·mysql·dba
DBA大董13 小时前
TDengine3.0 DBA常用的运维命令和SQL2
运维·数据库·时序数据库·dba·tdengine
会飞的土拨鼠呀13 小时前
Linux的存储使用率应该如何计算
linux·运维·服务器
Elastic 中国社区官方博客14 小时前
OpenTelemetry Java 扩展:无需分叉 agent 即可自定义追踪
java·大数据·运维·开发语言·数据库·人工智能·elasticsearch