Nginx-負載均衡與反向代理(lb伺服器)
阿新 • • 發佈:2021-10-22
負載均衡
1.去nginx官網找upstream模組
upstream backend { server backend1.example.com weight=5; server backend2.example.com:8080; server unix:/tmp/backend3; server backup1.example.com:8080 backup; server backup2.example.com:8080 backup; } server { location / { proxy_pass http://backend; } }
2.lb01伺服器部署好nginx,並將以上程式碼複製到nginx.conf,
指定web伺服器(www和blog)的地址和配置向後請求節點帶hosts欄位,
並設定web01為主,web為backup
[root@lb01 ~]# vim /application/nginx/conf/nginx.conf sendfile on; keepalive_timeout 65; upstream backend { server 10.0.0.7:80 weight=1; server 10.0.0.8:80 weight=1backup; } server { listen 80; server_name www.etiantian.org; location / { proxy_pass http://backend; proxy_set_header Host $host; } } server { listen 80; server_name blog.etiantian.org; location/ { proxy_pass http://backend; proxy_set_header Host $host; } } }
3.hosts檔案中新增用於做解析測試
10.0.0.5 www.etiantian.org blog.etiantian.org
for n in {1..100};do curl www.etiantian.org;sleep 1;done
4.節點伺服器獲取使用者的真實ip地址
在nginx反向代理伺服器上配置nginx檔案,新增獲取使用者ip的欄位:proxy_set_header X-Forwarded-For $remote-addr;
在web伺服器的日誌配置接收欄位:http_x_forwarded-for;
lb01(負載均衡):
web01(節點伺服器):
測試:
web01:
tail -f /application/nginx/logs/access_www.log
這時用電腦訪問www.etiantian.org
5.upstream的模組
max和fail的預設值
====================================================================================================================================