首页/新闻资讯/正文详情

Nginx+Keepalived高可用负载均衡架构实战

发布时间:2026/11/11 18:36:57 来源:云帆数科 栏目:资讯中心
Nginx+Keepalived高可用负载均衡架构实战
1. 高可用负载均衡架构设计原理在企业级Web服务架构中单点故障是必须解决的核心问题。Nginx作为高性能的反向代理服务器配合Keepalived实现的高可用方案能够确保服务持续可用。这套架构的核心在于通过VRRP协议实现虚拟IP的自动漂移当主节点发生故障时备份节点能在秒级完成接管。关键设计原则任何单台服务器的故障都不应影响整体服务可用性传统单Nginx架构存在明显的单点故障风险。我曾遇到过生产环境因为单个Nginx节点宕机导致整个电商平台不可用的事故。采用主备模式后即使硬件故障也能自动切换服务中断时间可以控制在3秒以内。2. 环境准备与组件安装2.1 服务器基础配置建议使用两台配置相同的CentOS 7服务器最小化安装后执行# 关闭防火墙和SELinux生产环境需按需调整 systemctl stop firewalld systemctl disable firewalld setenforce 0 sed -i s/SELINUXenforcing/SELINUXdisabled/g /etc/selinux/config # 安装EPEL仓库 yum install -y epel-release2.2 Nginx安装与优化采用官方源安装最新稳定版# 配置Nginx官方yum源 cat /etc/yum.repos.d/nginx.repo EOF [nginx-stable] namenginx stable repo baseurlhttp://nginx.org/packages/centos/\$releasever/\$basearch/ gpgcheck1 enabled1 gpgkeyhttps://nginx.org/keys/nginx_signing.key EOF # 安装并优化配置 yum install -y nginx mkdir -p /etc/nginx/conf.d/upstreams2.3 Keepalived安装配置通过yum安装Keepalivedyum install -y keepalived配置内核参数以支持VIP绑定echo net.ipv4.ip_nonlocal_bind 1 /etc/sysctl.conf sysctl -p3. 核心配置文件详解3.1 Nginx负载均衡配置在/etc/nginx/conf.d/loadbalance.conf中配置upstream backend { least_conn; # 使用最少连接算法 server 192.168.1.101:8080 weight5 max_fails3 fail_timeout30s; server 192.168.1.102:8080 weight3 max_fails3 fail_timeout30s; keepalive 32; # 保持长连接数量 } server { listen 80; server_name yourdomain.com; location / { proxy_pass http://backend; proxy_http_version 1.1; proxy_set_header Connection ; proxy_next_upstream error timeout invalid_header; } }3.2 Keepalived主节点配置/etc/keepalived/keepalived.conf主配置global_defs { router_id nginx_master # 唯一标识 } vrrp_script chk_nginx { script /etc/keepalived/check_nginx.sh interval 2 weight -5 # 检测失败时降低优先级 fall 2 # 连续2次失败才判定为故障 rise 1 # 1次成功即恢复 } vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass yourpassword } virtual_ipaddress { 192.168.1.100/24 dev eth0 label eth0:1 } track_script { chk_nginx } }3.3 健康检测脚本/etc/keepalived/check_nginx.sh内容#!/bin/bash count$(ps -C nginx --no-heading | wc -l) if [ ${count} 0 ]; then systemctl restart nginx sleep 2 count$(ps -C nginx --no-heading | wc -l) if [ ${count} 0 ]; then systemctl stop keepalived fi fi exit 04. 高可用测试与故障演练4.1 正常状态验证# 查看VIP绑定情况 ip addr show eth0 # 检查进程状态 ps -ef | grep -E nginx|keepalived # 测试访问 curl -I http://192.168.1.1004.2 模拟主节点故障# 在主节点停止Nginx systemctl stop nginx # 观察日志变化 tail -f /var/log/messages # 在备节点检查VIP接管 ip addr show eth04.3 脑裂问题预防为防止网络分区导致的脑裂情况建议添加# 在keepalived.conf中添加 vrrp_strict # 严格遵守VRRP协议 track_interface { eth0 # 监控网卡状态 }5. 生产环境优化建议5.1 性能调优参数# 在nginx.conf的events块中添加 worker_connections 65535; multi_accept on; use epoll; # 在http块中添加 keepalive_timeout 65; keepalive_requests 10000; client_header_timeout 15; client_body_timeout 15; send_timeout 15;5.2 安全加固措施# 限制keepalived服务绑定用户 echo net.ipv4.conf.all.accept_redirects 0 /etc/sysctl.conf echo net.ipv4.conf.all.send_redirects 0 /etc/sysctl.conf # 配置Nginx访问控制 location /nginx_status { stub_status; allow 127.0.0.1; allow 192.168.1.0/24; deny all; }5.3 监控告警配置建议部署Prometheus监控# keepalived_exporter配置 scrape_configs: - job_name: keepalived static_configs: - targets: [192.168.1.101:9650,192.168.1.102:9650]6. 常见问题排查指南6.1 VIP无法绑定检查项网络接口名称是否正确ip addr查看是否开启ip_nonlocal_bind参数防火墙是否放行VRRP协议协议号1126.2 主备切换异常排查步骤# 查看VRRP报文交互 tcpdump -i eth0 vrrp -n # 检查优先级变化 grep -E VRRP_Instance|priority /var/log/messages6.3 Nginx检测误判优化检测脚本# 改用端口检测更可靠 if ! nc -z 127.0.0.1 80; then systemctl restart nginx || systemctl stop keepalived fi这套架构在实际电商项目中验证全年可用性达到99.99%。关键是要做好定期的主备切换演练完善的监控覆盖详细的故障预案配置变更的严格测试

相关推荐

Allure测试报告框架:从配置到高级注解详解
Allure测试报告框架:从配置到高级注解详解

1. Allure测试报告框架概述 Allure是一款开源的测试报告框架,最初由Yandex团队开发,现已成为测试领域广泛使用的报告工具。它能够将自动化测试的执行结果转化为美观、交互式的HTML报告,帮助团队更直观地理解测试结果和问题所在。 与传统的测… · 2026/11/11 18:36:55

Ponytail插件怎么用?Rust实现的本地DoH转发工具,让DNS查询不再裸奔
Ponytail插件怎么用?Rust实现的本地DoH转发工具,让DNS查询不再裸奔

先说句实在话:如果你是因为「ponytail skill」「ponytail 插件」「插件 ponytail 如何使用」这些热搜词点进来的,那大概率是搜到了同一个东西。但请先别把“插件”理解成浏览器扩展或者某个软件的小挂件——Ponytail 其实是一个用 Rust 写的本地 DNS 转发… · 2026/11/5 2:23:57

MoneyPrinterTurbo实战:开源AI工具如何实现短视频全自动生产
MoneyPrinterTurbo实战:开源AI工具如何实现短视频全自动生产

先说个背景。过去大半年我一直在给团队做短视频内容分发,真正让人头秃的不是选题,而是“把脚本变成成品”这条慢工出细活的流水线——配音要找人录,字幕要一句句对,素材要一帧帧挑,最后还要剪辑、调音量、加背景乐。所… · 2026/11/7 20:54:47

西昌考电工证在哪千万别踩坑 老电工教你避坑全攻略
西昌考电工证在哪千万别踩坑 老电工教你避坑全攻略

西昌考电工证在哪千万别踩坑 老电工教你避坑全攻略 证书过期了不知道怎么复审延期?别慌!很多电工朋友在遇到证书到期后才发现, 西昌考电工证在哪 的问题不是随便在网上搜个地方就能解决的,稍有不慎就可能 踩坑… · 2026/11/11 18:36:16

南康市电工证哪里考官方报名入口怎么找
南康市电工证哪里考官方报名入口怎么找

南康市电工证哪里考官方报名入口怎么找 工地太忙根本没时间复习考试,特别是像你这种一线项目现场管理员,天天在工地上跑,连吃饭都得赶时间,哪还有心思去复习电工证的考试内容?我理解你,也经历过这种状态。但别忘了, 南康市电工证哪里考… · 2026/11/11 18:36:16

特种作业操作证n1和n2啥区别值不值得考
特种作业操作证n1和n2啥区别值不值得考

特种作业操作证n1和n1啥区别 电子证书怎么查最靠谱 你是不是也像我一样,最近在找工作的时候被要求提供 特种作业操作证 ,但又搞不清 N1和N2到底有什么区别… · 2026/11/11 18:36:16

低压电工证有什么技能考前押题怎么准备才稳妥
低压电工证有什么技能考前押题怎么准备才稳妥

低压电工证有什么技能考前押题怎么准备才稳妥 实操考试心里没底怕挂科,尤其像低压电工这种实操占比较大、理论又不能掉链子的证书,很多人考前总在纠结:低压电工证有什么技能?考前押题怎么准备才稳妥?其实只要你了解清楚流程、掌握关键点,考试并不难。… · 2026/11/11 18:36:16

中级电工证网官网入口怎么转异地?官方回应来了,考不过白交培训费的别慌!
中级电工证网官网入口怎么转异地?官方回应来了,考不过白交培训费的别慌!

中级电工证网官网入口怎么转异地?官方回应来了,考不过白交培训费的别慌! 怕考不过白交培训费?你不是一个人。中级电工证网官网入口作为全国多地考生报名的重要平台,很多人因为不了解考试流程、备考重点和异地转证政策,结果白白花了钱还拿不到证。特别是… · 2026/11/11 18:36:16

没有任何基础电工证也能考?2026河南最新政策来了!
没有任何基础电工证也能考?2026河南最新政策来了!

没有任何基础电工证也能考?2026河南最新政策来了! 我刚从工地下来,手上的茧子还没消,心里却有点发慌。干了三年电工活,却一直没考电工证,现在工地要求必须有低压电工证才能上岗,否则连工钱都拿不到。我这种情况,在河南2026年的新政策下,还能… · 2026/11/11 18:35:16

电工证丢失还能补吗?千万别踩坑,丢了证等于失业
电工证丢失还能补吗?千万别踩坑,丢了证等于失业

电工证丢失还能补吗?千万别踩坑,丢了证等于失业 你正在找工作,但手里的电工证突然丢了,这下怎么办?别急,先别慌, 电工证丢失还能补吗 ?答案是肯定的,但 千万别踩坑 ,补办流程如果不了解,可能会耽误你上岗、甚至影响到你的收入。… · 2026/11/11 12:18:07

电力电缆作业证直播报名入口与办理流程良心建议
电力电缆作业证直播报名入口与办理流程良心建议

电力电缆作业证直播报名入口与办理流程良心建议 你是不是也担心学历不高报不了名?别急,今天就给你讲讲 电力电缆作业证直播 的报名流程和那些你必须知道的干货, 良心建议 在这里,别错过。 电力电缆作业证直播报名需要什么条件?… · 2026/11/10 17:46:39

英德电工证报考费多少钱,怕考不过白交培训费?看完这篇别再踩坑
英德电工证报考费多少钱,怕考不过白交培训费?看完这篇别再踩坑

英德电工证报考费多少钱,怕考不过白交培训费?看完这篇别再踩坑 怕考不过白交培训费?英德电工证报考费多少钱,你真的了解吗?现在市面上培训机构五花八门,价格参差不齐,很多人一不小心就花了冤枉钱,结果还考不过。别急,今天就来给你说清楚英德电工证的… · 2026/11/11 17:14:54

_中职电工证最新政策解读
_中职电工证最新政策解读

中职电工证在哪考?工地太忙根本没时间复习考试的救星来了 工地太忙根本没时间复习考试,这是很多正在备考 中职电工证 的建筑工友的真实写照。你不是不想考,而是真的没时间。但别担心,这期内容是 新乡初次报考人员… · 2026/11/11 0:00:52

昆明电工证培训价格值不值得考?老电工告诉你真相
昆明电工证培训价格值不值得考?老电工告诉你真相

昆明电工证培训价格值不值得考?老电工告诉你真相 之前考的证在外省能不能转过来?这个问题是很多在外地打工、换城市生活、或者是想在昆明发展的朋友最关心的。尤其是现在云南发展快,很多企业都在招持证上岗的电工,如果你手头有证但不在本地,那这个证是不… · 2026/11/11 0:00:52

特种电缆张工网上查询全攻略:外省证如何转过来
特种电缆张工网上查询全攻略:外省证如何转过来

特种电缆张工网上查询全攻略:外省证如何转过来 之前考的证在外省能不能转过来?这是很多特种作业从业者最关心的问题,尤其是像特种电缆张工这类证书,直接关系到日常工作是否合规、能否顺利晋升。很多小伙伴因为证书归属地的问题,陷入职业发展的瓶颈,甚至… · 2026/11/11 0:00:52

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/10 20:19:29

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/10 19:22:45

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/11 17:15:20

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码