当前位置: 首页 > news >正文

基于国产银河麒麟服务器SP3项目实战(Nginx+Keepalive)实现高可用负载均衡

一、环境准备

192.168.113.11Nginx+Keepalive(Master)
192.168.113.22Nginx+keepalive(Backup)
192.168.113.33Nginx(web服务器)
192.168.113.44

Nginx(服务器)

 

二、环境搭建准备

2.1 Nginx源码编译安装

参考作责之前发布《Nginx源码编译安装》https://blog.csdn.net/m0_55213400/article/details/147066230?spm=1001.2014.3001.5501

2.2 Nginx配置负载均衡反向代理

        192.168.113.11

        192.168.113.22

    在http{ }模块定义地址池upstream releserver {server 192.168.113.33:80;server 192.168.113.44:80;}server {listen       80;server_name  localhost;#charset koi8-r;#access_log  logs/host.access.log  main;location / {proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;proxy_connect_timeout 5s;proxy_read_timeout 30s;proxy_send_timeout 10s;proxy_pass http://releserver; 调用地址池}

2.3 web服务器配置        

        192.168.113.33

        192.168.113.44

        站点目录:自定义

        location / {#allow 0.0.0.0/24;  # 公司内网#allow 10.0.0.0/8;      # 内部服务器#deny all;              # 拒绝其他所有IPproxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;proxy_connect_timeout 5s;proxy_read_timeout 30s;proxy_send_timeout 10s;root   /usr/local/nginx/html/laoshi/admin;index  index.html index.htm;}

2.3 Keepalive编译安装

        keepalive官网下载链接https://www.keepalived.org/download.htmlhttps://www.keepalived.org/download.html

          编译步骤如下


yum install -y gcc gcc-c++ make automake autoconf libtooltar -zxvf keepalived-2.3.4.tar.gzcd keepalived-2.3.4/./configure   --prefix=/usr/local/keepalived   --sysconfdir=/etc   --with-init=systemd   --with-openssl   --with-snmpmake && make installcd /etc/keepalived/cp keepalived.conf.sample keepalived.conf

2.4 设置允许虚拟IP

        主备都需要

echo 'net.ipv4.ip_nonlocal_bind = 1' >> /etc/sysctl.conf && sysctl -p

2.5 开始配置keepalive   主备都需要配置(重点)

        virtual_router_id 51  必须与主备保持一致

        priority 100   如果主为100 则备低于100

        auth_type PASS   必须主备保持一致
        auth_pass 1111     必须主备保持一致

! Configuration File for keepalivedglobal_defs {router_id 192.168.113.11
}vrrp_script check_nginx {script "/usr/local/bin/check_nginx.sh"interval 2 #每隔2S执行脚本weight -20}vrrp_instance VI_1 {state MASTERinterface ens33virtual_router_id 51priority 100advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {192.168.113.100 #定义虚拟IP}track_script {check_nginx}# Allow packets addressed to the VIPs above to be receivedaccept
}

        判断Nginx运行状态脚本

#!/bin/bash
#检查Nginx状态是否存在
if [ $(ps -C nginx --no-header | wc -l) -eq 0 ];then#Nginx不存在systemctl restart nginxsleep 3#以防万一再次尝试重启一下nginxif [ $(ps -C nginx --no-header | wc -l) -eq 0 ];then#重启失败 强制停止keepalived服务systemctl stop keepalivedexit 1fi
fi
exit 0 

三、验证是否正常 

        此时 虚拟IP正常显示 master

        此时 备主机不显示虚拟IP

        访问测试 http://192.168.111.100

        访问测试 http://192.168.111.100

        主服务器关机测试

        VIP飘移正常


文章转载自:

http://cacCYK7e.znqfc.cn
http://MXOPfBbw.znqfc.cn
http://T8RVuDNT.znqfc.cn
http://MRskVsFa.znqfc.cn
http://pV0iV5AJ.znqfc.cn
http://CgN4aVSk.znqfc.cn
http://FvZM797R.znqfc.cn
http://b5vyUZEU.znqfc.cn
http://5jC97AqC.znqfc.cn
http://KunhoKPq.znqfc.cn
http://2ofA5qoa.znqfc.cn
http://PsTySIGu.znqfc.cn
http://NR8QVAAd.znqfc.cn
http://q7clJ4Cu.znqfc.cn
http://AHKeNH0P.znqfc.cn
http://cxL3gG7S.znqfc.cn
http://mD5yqaQj.znqfc.cn
http://6MGljqt3.znqfc.cn
http://vXdvOAxC.znqfc.cn
http://SVnHUdu5.znqfc.cn
http://RmhycKI6.znqfc.cn
http://v7qCmy6R.znqfc.cn
http://b4BlGSzI.znqfc.cn
http://VICNkIPd.znqfc.cn
http://NzfAYFYc.znqfc.cn
http://gh0O6noS.znqfc.cn
http://HRCjSAfQ.znqfc.cn
http://XWYLEVej.znqfc.cn
http://IhxzoTgf.znqfc.cn
http://M6dvfNMw.znqfc.cn
http://www.dtcms.com/a/388021.html

相关文章:

  • 每日随机展示10个wordpress置顶文章
  • Leecode hot100 - 303. 区域和检索
  • 【审计试题案例】
  • 深度学习基础:线性回归与Softmax回归全面解析
  • C语言Prj03 运行显示乱码的解决方案
  • 车载操作系统总体技术要求解析
  • Spring Boot + MyBatis 实现站位标记系统实战
  • 读取X射线DICOM图像时需注意MONOCHROME1和PixelSpacing
  • mp4格式分析
  • LeetCode 1471.数组中的k个最强值
  • 基于R语言的水文、水环境模型优化技术及快速率定方法与多模型案例实践
  • python的守护线程设置
  • LTC5591IUH#TRPBF 无线和射频集成电路IC ADI亚德诺半导体 电子元器件解析
  • 【数据分享】土地利用shp数据分享-海南
  • 分布式拜占庭容错算法——PBFT算法深度解析
  • 《兔兔秘密花园》情人节密技曝光 输入隐藏指令即可
  • SQuAD:机器阅读理解领域的里程碑数据集
  • qt模型视图架构使用时需要注意什么
  • webRTC golang 开发核心
  • UVa10603 Fill
  • 小说《灵渊纪元:数据重构天道》的深层解读与象征意义分析
  • Android Kotlin 实现微信分享功能
  • Git : 多人协作和企业级开发模型
  • Twitter/X 搜索headers x-client-transaction-id 参数
  • Node.js后端工程师需了解的前端技术:HTML5、JavaScript、CSS、工具(Axios、EJS、 Chart.js)及资源CDN和MDN
  • 【猛犸AI科技】无人机UAV边缘计算
  • Redis 高性能架构精要:深度解析连接治理与分层优化实践
  • 微软官方卸载Office工具下载-微软官方的office卸载工具
  • 2025年最新Typora破解
  • YOLO系列经典重温