1、准备工作
首先准备两台服务器,这里我们准备了两台虚拟机,ip 地址分别为 192.168.32.128 和 192.168.32.129,以此模拟两台服务器。
在这两台服务器上分别启动了 tomcat 服务器, 并且都在 tomcat 的 webapps 目录下新建 mySystem 目录,在该目录下新建 a.html,以此模拟在多台服务器上都部署了同一个项目。不过我们在不同服务器上的 a.html 文件的显示内容上做了一些不同修改,以便做负载均衡时能区分出来是不是请求发送到了不同服务器上(当然,实际生产时多台服务器上的资源应该是保持一致的)。
在 192.168.32.128 服务器上启动 Nginx,并在该服务器上的 Nginx 做负载均衡。
Nginx的安装可参考:https://www.cnblogs.com/wenxuehai/p/14966724.html#autoid-h2-2-3-0
在Linux上安装启动tomcat可参考:https://www.cnblogs.com/wenxuehai/p/14974657.html#_label0
2、配置负载均衡
我们需要实现的效果如下:
也就是通过 Nginx 将请求转发至两台服务器上。
打开 192.168.32.128 服务器的 Nginx 配置文件,即 /usr/local/nginx/conf/nginx.conf 文件,配置负载均衡。
修改内容如下:
配置完成后,启动两台服务器的 tomcat ,并且启动 192.168.32.128 服务器的 Nginx。我们通过浏览器访问 http://192.168.32.128/mySystem/a.html ,多次刷新可以看到效果如下:
可以看到请求被平均分发到两台服务器上,也就是这一次请求的是 192.168.32.128 上的资源,下一次请求的就是 192.168.32.129 服务器上的资源。由此,我们就实现了负载均衡。