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

相关推荐
tuokuac7 小时前
docker中nginx配置报错解决
linux·运维·服务器
Joren的学习记录8 小时前
【Linux运维大神系列】docker详解(四)
linux·运维·docker
Elastic 中国社区官方博客9 小时前
让我们把这个 expense 工具从 n8n 迁移到 Elastic One Workflow
大数据·运维·elasticsearch·搜索引擎·ai·信息可视化·全文检索
( •̀∀•́ )92010 小时前
GitHub Actions SSH 部署密钥
运维·ssh·github
louqle10 小时前
docker基本知识及常用命令汇总
运维·docker·容器
学烹饪的小胡桃10 小时前
【运维学习】实时性能监控工具 WGCLOUD v3.6.2 更新介绍
linux·运维·服务器·学习·工单系统
叫致寒吧11 小时前
Docker
运维·docker·容器
白露与泡影11 小时前
使用systemd,把服务装进 Linux 心脏里~
linux·运维·python
l1t12 小时前
用docker安装oracle 19c
运维·数据库·docker·oracle·容器
别来无恙blwy13 小时前
SQL Server高可用自动故障转移失败(短时间内多次转移失败,只需一步可处理)
数据库·windows·sqlserver·负载均衡·可用性测试