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

相关推荐
java_logo26 分钟前
Kubernetes Dashboard Docker 容器化部署指南
运维·mysql·docker·云原生·容器·kubernetes·php
编织幻境的妖1 小时前
Docker底层工作原理
运维·docker·容器
TDengine (老段)1 小时前
TDengine IDMP 赋能新能源:光伏电站智能运维实践
大数据·运维·数据库·物联网·时序数据库·tdengine·涛思数据
gcfer1 小时前
Docker 介绍和常用命令
运维·docker·容器
i***48613 小时前
Nginx中$http_host、$host、$proxy_host的区别
运维·nginx·http
o***74173 小时前
【Nginx 】Nginx 部署前端 vue 项目
前端·vue.js·nginx
Fɪʀᴇᴡᴏʀᴋs4 小时前
Oceanbase数据库—基于社区版本的数据库集群管理
运维·数据库·oceanbase
HalvmånEver4 小时前
Linux:基础开发工具(五)
linux·运维·服务器
q***58194 小时前
基础篇:Linux安装redis教程(详细)
linux·运维·redis
小二·4 小时前
Linux 高频面试题(50道 + 详细答案)
linux·运维·服务器