centos

如何配置Nginx负载均衡

小樊
35
2025-12-25 09:05:24
栏目: 云计算

Nginx 负载均衡配置指南

一 核心概念与算法

二 快速上手示例

http {
  upstream backend {
    least_conn;                                   # 可选:最少连接
    server 192.168.1.101:80 max_fails=3 fail_timeout=30s;
    server 192.168.1.102:80 max_fails=3 fail_timeout=30s;
  }

  server {
    listen 80;
    server_name your.domain.com;

    location / {
      proxy_pass http://backend;
      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;
    }
  }
}

三 常用策略配置

upstream backend {
  server 10.0.0.11:80;
  server 10.0.0.12:80;
}
upstream backend {
  server 10.0.0.11:80 weight=3;
  server 10.0.0.12:80 weight=1;
}
upstream backend {
  least_conn;
  server 10.0.0.11:80;
  server 10.0.0.12:80;
}
upstream backend {
  ip_hash;
  server 10.0.0.11:80;
  server 10.0.0.12:80;
}
upstream backend {
  server 10.0.0.11:80 max_fails=3 fail_timeout=30s;
  server 10.0.0.12:80 max_fails=3 fail_timeout=30s down;  # 临时下线
  server 10.0.0.13:80 backup;                               # 仅当其他节点不可用时启用
}

四 部署与验证

sudo nginx -t                  # 检查配置语法
sudo systemctl reload nginx   # 平滑重载(生产推荐)
# 或 sudo systemctl restart nginx
for i in {1..10}; do curl -s http://your.domain.com; done
# 观察返回内容或后端访问日志,确认分发是否符合预期

五 进阶与高可用

0
看了该问题的人还看了