实现负载均衡可有以下算法:
Nginx实现负载均衡的原理是利用Http重定向实现负载均衡
rpm 安装方式nginx配置文件地址 /etc/nginx/conf.d 目录下面,配置文件内容结构如下:
修改完配置文件以后,还需要输入重新加载配置命令:
我们从官网上面看一下负载均衡配置案例,然后根据案例配置去对每项参数进行解释,案例如下( 注意:以下模块内容必须放在http模块下 ):
从上面这个案例Nginx会作如下执行,默认情况下,请求使用 加权循环平衡法。 在上面的示例中,每 7 个请求将按如下方式分配: 5个请求去 backend1.example.com 向第二台和第三台服务器分别发送一个请求。 如果在与服务器通信过程中发生错误,请求将 被传递到下一个服务器,依此类推,直到所有的功能 服务器将被尝试。 如果无法从任何服务器获得成功的响应, 客户端将收到与最后一个服务器通信的结果。
语法:
parameters类别:
商业版本需要付费的其他属性这里就不阐述了
1)轮训策略:
upstream模块默认的负载均衡策略是轮训策略,它会依次在服务列表进行分发
2)加权策略:
容器会根据server设置的权重进行请求分配,例如server1 weight=5 ,server2 weight=2 将会使得每 7 个请求将按如下方式分配server1 5个请求,server2两个请求。
3)Ip哈希策略:
其中请求 根据客户端 IP 地址在服务器之间分布,确保来自同一客户端的请求将始终 传递到同一服务器。使用方法是在upstream模块下面添加ip_hash
4)最少连接数策略(least_conn):
指定组应使用负载平衡方法,其中请求 传递给活动连接数最少的服务器, 考虑到服务器的权重。 如果有多个这样的服务器,它们会依次尝试使用 加权循环平衡法。
5)扩展策略(需要安装插件):
还有一些其他需要付费的策略这里就不进行阐述了,比如:最少时间策略( least_time)、随机策略等。
Nginx负载均衡服务器: IP:192.168.0.4(Nginx-Server)Web服务器列表:
Web1: 192.168.0.5(Nginx-Node1/Nginx-Web1)
Web2:192.168.0.7(Nginx-Node2/Nginx-Web2)
实现目的:用户访问Nginx-Server时,通过Nginx负载均衡到Web1和Web2服务器。
配置注释如下:
创建文件夹准备存放配置文件
启动负载均衡服务器192.168.0.4(Nginx-Server)
创建文件夹用于存放web页面
编辑内容如下:
启动192.168.0.5(Nginx-Node1/Nginx-Web1)
创建文件夹用于存放web页面
编辑内容如下:
启动192.168.0.7(Nginx-Node2/Nginx-Web2)
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)