nginx负载均衡介绍
Nginx应用场景之一就是负载均衡。在访问量较
多的时候,可以通过负载均衡,将多个请求分
承担的负载量交给多台服务器处理,进而提高
系统的吞吐率;另外如果其中某一台服务器挂
掉,其他服务器还可以正常提供服务,以此来
提高系统的可伸缩性与可靠性。
下图为负载均衡示例图,当用户请求发送后,
首先发送到负载均衡服务器,而后由负载均衡
服务器根据配置规则将请求转发到不同的web
服务器上。
环境准备
4台虚拟机
1台nginx
3台web
1.先配置IP
2.关闭防火墙
-
首先杳看防火墙状态
-
systemctl status firewall
如果active括号里面是running就是运行的意思
如果关闭active后面跟的是dead
2.关闭防火墙
systemctl stop firewalld
3.关闭防火墙开机自启
systemctl disable firewalld
nginx安装
我这里就不开虛拟机了直接用docker启容器
1.先拉取ngin镜像
docker pull nginx
2.启动nginx容器
docker run -d -p 81:80 --name 605c77e624dd
-d是后台运行
-p是映射端口 Linux端口:容器内端口
–name 定义启动容器的名称
最后一个是镜像id
浏览器输入P地址:端口号查看是否启动成功
出现这个页面就是启动成功
3.启动web容器
nginx负载均衡策略
1.轮询(默认)
每个请求按时间顺序逐一分配道不同的后端服
务器,如果后端服务器挂掉,能自动剔除
upstream web{ server 192.168.42.160:82; server 192.168.42.160:83; server 194.168.42.160:84; }
2.指定权重
指定轮询几率,weight权重大小和访问比率成
正比,用于后端服务器性能不均的情况下
upstream web{ server 192.168.42.160:82 weight=1; server 192.168.42.160:83 weight=2; server 194.168.42.160:84 weight=3; }
3.ip hash
每个请求,按访问的hash结果进行分配,每个访客
固定道一个后端服务器,可以解决session的问
题
upstream web{ ip_hash; server 192.168.42.160:82; server 192.168.42.160:83; server 194.168.42.160:84; }
4.fair
按后端服务器的响应时间来分配请求,响应时间
短的优先分配
upstream web{ server 192.168.42.160:82 server 192.168.42.160:83; server 194.168.42.160:84 fair; }
5.URL_hash
按访问的ur的hash结果来分配请求,使每个ur定
向道同一个后端服务器,后端服务器缓存时比较
有效
upstream web{ hash &request uri; server 192.168.42.160:82; server 192.168.42.160:83; server 194.168.42.160:84; }
http部分 添加策略,上面5种按照情况和需求选
择
server部分改成跟下图一样即可
然后访问IP地址:端口号看看有没有访问到别的
相关阅读:
感谢您的来访,获取更多精彩文章请收藏本站。

暂无评论内容