Nginx实现负载均衡配置

1、负载均衡的分类
硬件负载均衡:通过物理设备来实现负载均衡,如F5或者7层和4层的网络设备,优点:性能优于软件负载均衡,策略和算法更丰富
软件负载均衡:通过软件实现负载均衡,优点:成本低,配置简单,还能满足需求,缺点:耗费一定的系统资源,同时软件本身也是一个负载均衡处理能力的瓶颈。
2、Nginx负载均衡的方式
2.1、轮询,默认方式
每个请求按照时间顺序,逐一分配给不同的服务器
2.2、weight,权重
指定轮询权重,此种方式适用于后端服务器性能不统一的情况或者服务上线测试阶段,权重越高,被轮询到的概率越高
2.3、ip_hash,ip哈希
通过访问ip的hash结果分配,可以让一个客户端访问后台服务器是固定的,可以解决某些会话上的问题
2.4、fiar,服务器响应时间分配模式
Nginx默认不支持此模式,需要安装upstream_fair模块,此模式根据服务器响应客户端请求的时间来进行分配负载,响应时间越短,越优先分配
2.5、url_hash,根据url的hash结果分配请求
需要安装Nginx的hash软件包,这个模式是根据url的hash结果进行分配负载,每个客户端的请求会被固定指向后台某个服务器,在静态资源的服务器,非常实用
2.6、7层的代理负载均衡
这个模式能实现web资源的动静资源的分离,以及基于扩展名的资源分离负载
3、配置过程
3.1、实验环境,三台服务器
lab234:192.168.80.234 模拟HTTP服务器
lab235: 192.168.80.235 模拟HTTP服务器
lab236: 192.168.80.236 模拟Nginx负载均衡服务器
3.2、首先分别配置两台HTTP服务器
关闭防火墙:systemctl stop firewalld
关闭selinux:setenforce 0






















root@lab234 ~]# yum  -y install  httpd
root@lab234 ~]# echo "Welcome to beijing!" >>/var/www/html/index.html
root@lab234 ~]# systemctl start httpd

lab235执行上述一样的操作即可,需要将index的内容更换一下,以便结果的展示,echo "Welcome to shanghai!" >>/var/www/html/index.html
测试HTTP配置结果:
在这里插入图片描述

4.配置Nginx负载均衡器
4.1、安装Nginx

root@lab234 ~]# yum  -y install  Nginx

注意:安装Nginx要通过epel源安装
4.2、配置轮询模式

root@lab234 ~]# vim /etc/nginx/conf.d/upstream.conf
upstream web-server
{
        server  192.168.80.234:80;
        server 192.168.80.235:80;
}
server {
        listen 80;
        server_name www.adong.com;
        location / {
        proxy_pass http://web-server;
}
}

4.3、测试Nginx负载均衡
关闭防火墙:systemctl stop firewalld
关闭selinux:setenforce 0
启动Nginx:systemctl start Nginx
此时我们直接访问Nginx中指定的域名即可:www.adong.com
因为测试环境,我们没有真正的申请上述域名,如果要解析,我们需要配置计算机客户端的hosts文件
在这里插入图片描述
测试结果:
在这里插入图片描述
我们也可以直接在负载均衡器上直接测试
在这里插入图片描述
总结:
以上就是轮询模式的Nginx负载均衡配置,后面的几种模式会后续更新......











發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章