nginx負荷の均衡及び逆代理

2072 ワード

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