Nginx七层负载均衡

Nginx七层负载均衡

bash 复制代码
/usr/local/nginx/conf/nginx.conf # nginx配置文件
bash 复制代码
client-nginx-rs-n-c # 访问流程

1. 用户创建

bash 复制代码
useradd -M -d /usr/local/nginx/ -s /sbin/nologin nginx # 创建nginx用户

2. worker设置

bash 复制代码
nginx -s reload # 每次修改完配置后,需要重载


根据CPU的核心数自动设定

3. worker_connections设定

Linux中的设定规则是kernel>system>app

bash 复制代码
sysctl -a | grep file # 查看内核
bash 复制代码
ulimit -a  # 查看系统
bash 复制代码
vim /etc/security/limits.conf

4. 负载均衡

官方文档:https://docs.nginx.com/nginx/admin-guide/load-balancer/http-load-balancer/

  1. 在real server上修改http监听端口
  1. 在备用机器上修改http配置

成功实现了7层的负载均衡

说明:正常情况下,负载均衡;异常情况下访问备用机。

5. 负载均衡算法优化

5.1 weight(权重)
5.2 ip_hash

来自同一个客户端请求会发往同一个后端服务器交互(数据库),这种场景不适合来回切换,比较合理。

5.3

客户端访问代理(调度器),代理再去访问real server。流量首先会经过CDN代理,那么IP HASH就无法获取到真实的客户端IP。

浏览器cookie 记录信息,访问服务器。独一无二的。

  • 安装nginx-goodies-nginx-sticky-module-ng-08a395c66e42 模块

  • 重新修改配置和编译,不要install

bash 复制代码
cd nginx-1.27.1/
make clean
ls /root/nginx-goodies-nginx-sticky-module-ng-08a395c66e42
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --add-dynamic-module=/root/nginx-goodies-nginx-sticky-module-ng-08a395c66e42
nginx -s stop
make
cp objs/nginx /usr/local/nginx/sbin/nginx

浏览器中访问,服务器不会变。

相关推荐
北龙云海20 分钟前
AI驱动数据库运维变革:北龙云海智能巡检平台实践与展望
运维·数据库·人工智能
AI职业加油站29 分钟前
AI 校招现状:大模型应用工程师证书,助力简历能力证明
大数据·运维·人工智能·学习·职场发展
Lsetea2 小时前
curl报58 unable to set private key file:客户端证书与私钥加载排查
运维·https·ssl证书·openssl·curl
天远Date Lab2 小时前
零信任架构实战:基于天远学籍核验三要素构建自动化竞赛资格审查网关
运维·人工智能·架构·自动化
Lsetea2 小时前
OpenSSL报certificate is not yet valid:error 9与notBefore时间排查
linux·运维·https·ssl证书·openssl
魔法阵维护师2 小时前
Linux 命令行入门踩坑记录:从 VMware 装系统到文件管理
linux·运维·服务器
飞飞传输3 小时前
业务系统文件安全检测怎么做?生物医药企业选型与建设指南
大数据·运维·安全
姜鱼问生3 小时前
docker exec 排查容器问题:从日志到进程
运维·网络·数据库·docker·容器
qq_543447823 小时前
DNS解析怎么排查?故障处理与运维实用手册
运维·服务器·网络·php
DeviceHub3 小时前
AI服务器电源设计进阶:TLVR电感的应用解析与选型验证指南
运维·服务器·人工智能