nginx负载均衡配置与环境搭建教程

nginx负载均衡介绍

nginx应用场景之一就是负载均衡。在访问量较多的时候,可以通过负载均衡,将多个请求分摊到多台服务器上,相当于把一台服务器需要承担的负载量交给多台服务器处理,进而提高系统的吞吐率;另外如果其中某一台服务器挂掉,其他服务器还可以正常提供服务,以此来提高系统的可伸缩性与可靠性。

下图为负载均衡示例图,当用户请求发送后,首先发送到负载均衡服务器,而后由负载均衡服务器根据配置规则将请求转发到不同的web服务器上。图片[1]-nginx负载均衡配置与环境搭建教程-结贝号资源网

环境准备

4台虚拟机
1台nginx
3台web
1.先配置ip
2.关闭防火墙

1.首先查看防火墙状态图片[2]-nginx负载均衡配置与环境搭建教程-结贝号资源网

如果active括号里面是running就是运行的意思
如果关闭active后面跟的是dead

2.关闭防火墙

systemctl stop firewalld

图片[3]-nginx负载均衡配置与环境搭建教程-结贝号资源网

3.关闭防火墙开机自启

systemctl disable firewalld

图片[4]-nginx负载均衡配置与环境搭建教程-结贝号资源网

nginx安装

我这里就不开虚拟机了直接用docker启容器

1.先拉取ngin镜像

docker pull nginx

2.启动nginx容器

docker run -d -p 81:80 --name 605c77e624dd

图片[5]-nginx负载均衡配置与环境搭建教程-结贝号资源网

-d是后台运行
-p 是映射端口 linux端口:容器内端口
–name 定义启动容器的名称
最后一个是镜像id
浏览器输入IP地址:端口号查看是否启动成功图片[6]-nginx负载均衡配置与环境搭建教程-结贝号资源网
出现这个页面就是启动成功

3.启动web容器图片[7]-nginx负载均衡配置与环境搭建教程-结贝号资源网

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

按访问的url的hash结果来分配请求,使每个url定向道同一个后端服务器,后端服务器缓存时比较有效

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种按照情况和需求选择图片[8]-nginx负载均衡配置与环境搭建教程-结贝号资源网
server部分改成跟下图一样即可图片[9]-nginx负载均衡配置与环境搭建教程-结贝号资源网
然后访问ip地址:端口号看看有没有访问到别的网站
© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容