zoukankan      html  css  js  c++  java
  • nginx负载均衡配置

    nginx负载均衡配置

      进入/etc/nginx目录,编辑nginx.conf文件;

    #这里的域名要和下面proxy_pass的一样
    upstream  test.com {   
        server    192.168.1.10:8989  weight=1; 
        server    192.168.1.10:8988  weight=2;  
    }     
    
    server {  
        listen       80; 
        server_name  192.168.1.10;  
    
    location / {  
            proxy_pass http://test.com;  
            proxy_redirect default;  
        }  
    
        error_page   500 502 503 504  /50x.html;  
        location = /50x.html {  
            root   html;  
        }  
    }

    负载均衡策略

    1、轮询

    这种是默认的策略,把每个请求按顺序逐一分配到不同的server,如果server挂掉,能自动剔除。

    upstream  test.com {   
        server    192.168.1.10:8989  ; 
        server    192.168.1.10:8988 ;  
    }
    

      

    2、最少连接

    把请求分配到连接数最少的server

    upstream  test.com {   
        least_conn;
        server    192.168.1.10:8989 ; 
        server    192.168.1.10:8988 ;  
    }
    

      

    3、权重

    使用weight来指定server访问比率,weight默认是1。以下配置会是server2访问的比例是server1的两倍。

    upstream  test.com {   
        server    192.168.1.10:8989  weight=1; 
        server    192.168.1.10:8988  weight=2;  
    }
    

      

    4、ip_hash

    每个请求会按照访问ip的hash值分配,这样同一客户端连续的Web请求都会被分发到同一server进行处理,可以解决session的问题。如果server挂掉,能自动剔除。

    upstream  test.com {   
        ip_hash;
        server    192.168.1.10:8989  weight=1; 
        server    192.168.1.10:8988  weight=2;  
    }
    

      

    ip_hash可以和weight结合使用。

    --------------------------------------------------------------------------------------------------------------------------------

    upstream模块主要负责负载均衡的配置,通过默认的轮询调度方式来分发请求到后端服务器

    简单的配置方式如下

    upstream name {
        ip_hash;
        server 192.168.1.10:8000;
        server 192.168.1.10:8001 down;
        server 192.168.1.10:8002 max_fails=3;
        server 192.168.1.10:8003 fail_timeout=20s;
        server 192.168.1.10:8004 max_fails=3 fail_timeout=20s;
    
    }
    

      

    核心配置信息如下

    ip_hash:指定请求调度算法,默认是weight权重轮询调度,可以指定

    server host:port:分发服务器的列表配置

    -- down:表示该主机暂停服务

    -- max_fails:表示失败最大次数,超过失败最大次数暂停服务

    -- fail_timeout:表示如果请求受理失败,暂停指定的时间之后重新发起请求

  • 相关阅读:
    centos7物理机a start job is running for dev-mapper-centosx2dhome.device
    jenkins pipeline流水线
    nginx 加载慢 负载均衡不均衡
    山田预发环境发布脚本
    prometheus 监控容器
    maven私服安装使用
    日志清理
    ERROR 1046 (3D000) at line 1: No database selected
    网络工程学习经典书籍推荐
    每日一句
  • 原文地址:https://www.cnblogs.com/yuuje/p/11026432.html
Copyright © 2011-2022 走看看