Web集群案例实战 -- Nginx 负载均衡 之 客户端访问日志优化
原创
©著作权归作者所有:来自51CTO博客作者褪色的腿毛的原创作品,请联系作者获取转载授权,否则将追究法律责任
Nginx 负载均衡 之 客户端访问日志优化
前言
本环境是基于 Centos 7.8 系统构建Nginx学习环境
具体构建,请参考 Nginx-1.18.0 环境部署
Nginx 在做反向代理负载均衡时,客户端请求web服务时,请求先到达前端负载均衡调度器,调度器根据预先设定的算法,选择将请求分发到后面Real Server。但是默认情况下Real Server的访问日志,记录访问用户的IP总是前端负载均衡调度器的IP,这就给不能更好地追踪、统计,客户端访问的具体信息。接下来,我们将介绍这一解决办法
本次实验环境来自,Web集群案例实战 – Nginx 负载均衡,具体请参考:Nginx 负载均衡
node03 访问web服务
查看node01、node02 日志追踪情况node01
node01
追踪日志得知,Real Server访问日志记录,客户端访问IP均是调度器的IP!
解决办法–修改配置文件
[root@node01 ~]# vim /etc/nginx/conf.d/vhost.conf
upstream www_web_server_pools {
server web1.wan.org:81 weight=1;
server web2.wan.org:82 weight=1;
server web3.wan.org:83 weight=1;
}
server {
listen 192.168.5.11:80;
server_name www.wan.org;
location / {
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://www_web_server_pools;
}
}
[root@node01 ~]# systemctl restart nginx
再次追踪访问日志
node01
node02