美文网首页
搭建nginx负载均衡,可以如此的简单

搭建nginx负载均衡,可以如此的简单

作者: T_zw | 来源:发表于2023-03-30 10:33 被阅读0次

    一、负载均衡:

    1、轮询(默认)
    每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除,剩下的继续轮询。


    在这里插入图片描述

    2.权重 (weight)
    指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。

    upstream backend{
        server 192.168.25.74:5000 weight=1;
        server 192.168.25.218:5000 weight=1;
    }
    

    3.ip_哈希算法(ip_hash)
    每个请求按访问ip的hash结果分配,这样每个访客固定访问一个应用服务器,可以解决session共享的问题。
    注:ip_hash和weight不能共用

    upstream backend{
        ip_hash;
        server 192.168.25.74:5000;
        server 192.168.25.218:5000;
    }
    

    4.fair(第三方)
    这个fair表示的是按照服务器响应时间的长短来进行分发的,服务器响应时间越短的,优先分发。

    upstream backend{
        server 192.168.25.74:5000;
        server 192.168.25.218:5000;
        fair;
    }
    

    二、用nginx搭建负载均衡

    192.168.25.83           #nginx负载均衡服务器
    192.168.25.74           #服务器    
    192.168.25.218          #服务器
    

    1.服务器运行程序(192.168.25.218、192.168.25.74)(为了看出效果,两个Python项目返回服务器的地址218、74)

    apt-get install python-pip          #安装pip
    pip install flask                   #pip引入flask
    
    #192.168.25.74服务器运行的Python程序
    from flask import Flask
    
    app = Flask(__name__)
    
    @app.route("/")
    def hello_world():
            return "hello_74"
    if __name__ == '__main__':
            app.run(debug=True,host='0.0.0.0');
      
    
    #192.168.25.218服务器运行的Python程序
    from flask import Flask
    
    app = Flask(__name__)
    
    @app.route("/")
    def hello_world():
            return "hello_218"
    if __name__ == '__main__':
            app.run(debug=True,host='0.0.0.0');
    
    在这里插入图片描述

    2.安装nginx(192.168.25.83 执行)

    apt-get update 
    apt-get install nginx -y
    

    3.配置nginx.conf,进到/etc/nginx目录(192.168.25.83 执行)。

    vim /etc/nginx/nginx.conf
    

    4.配置Nginx的负载均衡与分发策略(192.168.25.83 执行)

    #通过在upstream参数中添加的应用服务器IP后添加指定参数即可实现
    upstream backend{
          server 192.168.25.74:5000;
          server 192.168.25.218:5000;
    }
    server{
          listen 81;
          location  / {
                proxy_pass  http://backend;
          }
    }
    
    在这里插入图片描述

    5.启动nginx

    /etc/init.d/nginx start
    或
    /usr/sbin/nginx -c /etc/nginx/nginx.conf
    

    6.浏览器访问nginx,查看是否成功。

    http://192.168.25.83:81/
    
    在这里插入图片描述
    在这里插入图片描述

    6.nginx负载均衡搭建成功~~~

    本文由博客一文多发平台 OpenWrite 发布!

    相关文章

      网友评论

          本文标题:搭建nginx负载均衡,可以如此的简单

          本文链接:https://www.haomeiwen.com/subject/djnqddtx.html