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 服务

相关推荐
G_H_S_3_6 分钟前
【网络运维】Linux 文本处理利器:sed 命令
linux·运维·网络·操作文本
鹧鸪yy11 分钟前
认识Node.js及其与 Nginx 前端项目区别
前端·nginx·node.js
拾心2134 分钟前
【运维进阶】Linux 正则表达式
linux·运维·正则表达式
xcs194051 小时前
AI 自动化编程 trae 体验 页面添加富编辑器
运维·自动化·编辑器
Gss7771 小时前
源代码编译安装lamp
linux·运维·服务器
G_H_S_3_2 小时前
【网络运维】Linux:正则表达式
linux·运维·网络·正则表达式
__lll_2 小时前
Nginx proxy_pass 404/502 根源:漏写末尾斜杠 / 的修复指南
nginx
朱皮皮呀2 小时前
微服务流量分发核心:Spring Cloud 负载均衡解析
spring cloud·微服务·负载均衡
huangyuchi.2 小时前
【Linux系统】匿名管道以及进程池的简单实现
linux·运维·服务器·c++·管道·匿名管道·进程池简单实现
AAA修煤气灶刘哥2 小时前
手把手教你全流程项目部署:从 Jenkins 到 Nginx 的项目实战手册
java·运维·后端