一 nginx负载均衡的作用
1、转发功能
按照一定的算法【权重、轮询】,将客户端请求转发到不同应用服务器上,减轻单个服务器压力,提高系统并发量。
2、故障移除
通过心跳检测的方式,判断应用服务器当前是否可以正常工作,如果服务器期宕掉,自动将请求发送到其他应用服务器。
3、恢复添加
如检测到发生故障的应用服务器恢复工作,自动将其添加到处理用户请求队伍中。
二 试验环境
三 试验步骤
3.1 安装nginx三
请参考https://blog.csdn.net/yabingshi_tech/article/details/47416787
3.2 配置nginx
在nginx后端代理10.192.203.111/112的8001端口:
vi /usr/local/nginx/conf/nginx.conf
新增:
upstream webservers {
server 10.192.203.112:8001 weight=1;
server 10.192.203.113:8001 weight=1;
}
注释掉server里location的两行内容,并添加两行内容:
proxy_pass http://webservers;
proxy_set_header X-Real-IP $remote_addr;
注意:proxy_pass http://webservers的webservers需要和upstream 后的内容保持一致。
#重新加载配置文件(可以不用重启nginx):
/usr/local/nginx/sbin/nginx -s reload
3.3 测试负载均衡
通过nginx访问应用。
部署了一个demo_test应用。在10.192.203.112/113上的war包内容不一样。
10.192.203.112会输出I Love Dandan 112,10.192.203.113会输出I Love Dandan 113。
已测试当停掉其中一台服务器,仍然能通过代理访问,也验证了集群的高可用。
3.4 配置nginx高可用
在两台nginx上安装keepalive,实现高可用。
可参考https://blog.csdn.net/yabingshi_tech/article/details/52038332