nginx负载均衡及反向代理

1、下载nginx

wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

更多http://nginx.org/packages

2、yum仓库

rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm

3、下载安装

yum install nginx

4、启动nginx

​systemctl start nginx 或 service nginx start

5、nginx反向代理(使用负载均衡后不使用)

server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;
        root         /usr/share/nginx/html;
        location / {
            proxy_pass http://127.0.0.1:8088/; #使用反向代理把8088代理到80端口
        }
        location /api/user/login {
            proxy_pass http://127.0.0.1:8088/user/login; #映射URI
        }
       location /api/ {
            proxy_pass http://127.0.0.1:8088/api; #通过路由分组映射URI 
        }
    }

6、配置nginx负载均衡

#负载均衡服务
upstream go_upstream_server{
#weight:轮循权重
#max_conns:最大连接数
#backup:预留的备份机器,所有的非backup机器故障或者忙的时候,才会请求backup,压力最轻
#down:表示当前的server暂时不参与负载均衡
#max_fails:允许请求失败的次数,默认为1
#fail_timeout:超时时间,max_fails可以和fail_timeout一起使用
#负载均衡算法
      #ip_hash:相同的客户端ip请求相同的服务器
      #url_hash: 静态资源缓存,节约存储,加快速度
      #least_conn 最少链接
      #least_time 最小的响应时间,计算节点平均响应时间,然后取响应最快的那个,分配更高权重。
       ip_hash;
       server 127.0.0.1:8001 weight=10 max_conns=500 max_fails=1  fail_timeout=10;
       server 127.0.0.1:8000 weight=10;
       backup 127.0.0.1:9999;
       down 127.0.0.1:8888;
     
    }
    server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;
        root         /usr/share/nginx/html;
        location /api/v1/ {
            proxy_pass http://go_upstream_server;#反向代理到负载均衡服务
        }
    }

遇到的问题

(13: Permission denied) while connecting to upstream
  • 权限不够 修改nginx用户为root
user root;
  • 允许httpd 连接到网络
setsebool -P httpd_can_network_connect 1 

你可能感兴趣的:(nginx负载均衡及反向代理)