nginx---负载均衡---upstream标签

16 篇文章 0 订阅
9 篇文章 0 订阅

了解upstream标签

1.upstream 支持4种负载均衡调度算法:
A、轮询(默认):每个请求按时间顺序逐一分配到不同的后端服务器;
B、ip_hash:每个请求按访问IP的hash结果分配,同一个IP客户端固定访问一个后端服务器。可以保证来自同一ip的请求被打到固定的机器上,可以解决session问题。
C、url_hash:按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器。
D、fair:这是比上面两个更加智能的负载均衡算法。按后端服务器的响应时间来分配请求,响应时间短的优先分配。Nginx本身是不支持 fair的,如果需要使用这种调度算法,必须下载Nginx的 upstream_fair模块。

2、配置实例
1)、热备:如果你有2台服务器,当一台服务器发生事故时,才启用第二台服务器给提供服务。
2)、轮询:nginx默认就是轮询其权重都默认为1,服务器处理请求的顺序:ABABABABAB…(weight=?)
3)、加权轮询:跟据配置的权重的大小而分发给不同服务器不同数量的请求。如果不设置,则默认为1。下面服务器的请求顺序为:ABBABBABBABBABB…
4)、ip_hash:nginx会让相同的客户端ip请求相同的服务器。
upstream myweb {
server 172.17.14.2:8080;
server 172.17.14.3:8080;
ip_hash;
}
5)、nginx负载均衡配置状态参数
• down,表示当前的server暂时不参与负载均衡。

• backup,预留的备份机器。当其他所有的非backup机器出现故障或者忙的时候,才会请求backup机器,因此这台机器的压力最轻。

• max_fails,允许请求失败的次数,默认为1。当超过最大次数时,返回proxy_next_upstream 模块定义的错误。

• fail_timeout,在经历了max_fails次失败后,暂停服务的时间单位秒。max_fails可以和fail_timeout一起使用。

安装Nginx

如果你未安装nginx,请点击:nginx安装链接

配置

本实验的架构图为

在这里插入图片描述

  • 关闭每一台服务器的防火墙
systemctl stop firewalld && setenforce 0
配置nginx-1
  • 创建网站发布目录及信息
 /usr/share/nginx/html/index.html   //默认网站发布目录
echo "this is nginx-1 " >/usr/share/nginx/html/index.html
  • 检测
    在这里插入图片描述
配置nginx-1
  • 创建网站发布目录及信息
 /usr/share/nginx/html/index.html   //默认网站发布目录
echo "this is nginx-2 " >/usr/share/nginx/html/index.html
  • 检测
    在这里插入图片描述
配置proxy
  • 修改主配置文件
vim /etc/nginx/nginx.conf

注意:在HTTP标签内添加upstream标签,其格式如下:
upstream name {
server ip:端口;
server ip:端口;
server ip:端口;
}
在这里插入图片描述

  • 修改子配置文件
vim /etc/nginx/conf.d/default.conf

其修改内容为:

server {
        listen      80;      
        server_name     www.hualaotouvip.com;  //域名自定义
        charset utf-8;
        #access_log  logs/host.access.log  main;
        location / {
            proxy_pass http://testweb;     //跟upstream对应的`name`一致
            proxy_set_header Host $host:$server_port;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                }
        }

  • 检测是否有语法错误
nginx -t
nginx -s reload

在这里插入图片描述

  • 在客户端添加域名解析:
vim  /etc/hosts

在这里插入图片描述

  • 检测
    在这里插入图片描述
    注意:默认调度算法为轮询
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值