操作系统: CentOS6.5   JDK软件版本:jdk1.7.0_65  Tomcat软件版本:apache-tomcat-7.0.54


案例环境:拓扑图和案例环境

wKiom1bPpFShUsLIAABKytCvIq4683.jpg

wKioL1bPp9SRIj_8AAC7gk5Pe5E633.jpg


一、在对应的服务器上分别安装Nginx和Tomcat

1.Nginx的安装方法大家可以参考:Nginx的源码安装 

2.Tomcat的安装方法大家可以参考:Tomcat的安装与配置


注意:如果防火墙没有关闭的朋友,在安装完成之后,分别在对应的服务器上创建防火墙规则

Nginx服务器上防火墙规则

wKiom1bPv6rgwMocAAA-aI6-kSc243.jpg

Tomcat服务器上防火墙规则

wKiom1bPv8Ci_LR9AAA-aei2wjc897.jpg


二、配置Nginx服务器反向代理两个Tomcat站点并实现负载均衡

1.修改Nginx的配置文件nginx.conf

wKiom1bPwTnhy7ATAAAXtQ6pYzM719.jpg


第一是在“http {}”界定中添加配置项upstream

wKioL1bPxFvArBwcAABkc2us-BM370.jpg

这里说一下“weight”,其含义就是权重的意思,如果tomcat服务器权重数值越大,则“.jsp”的请求分配到该服务器的概率越大,生产环境中要看哪台tomcat服务器的性能好,性能好的可以权重大一些,也就是让性能好的服务器处理的请求多一些,这里为了比较测试效果就设置为一样了。


第二是在“http {}”界定的子界定“server {}”中添加新的“location / {}”

wKioL1bPyFfBhVeJAABuuN2ehzA775.jpg


2.修改好配置文件后重启nginx服务

wKiom1bPyg-B0k1OAAAQF0oJIRk584.jpg


3.分别在两台tomcat服务器上创建测试页,为了更加直观的显示负载均衡效果,第一台tomcat服务器测试页内容为“tomcat-1”,第二台tomcat服务器测试页内容为“tomcat-2”

第一台Tomcat服务器测试页

wKiom1bPzDHgz7OcAABF1qW0fvc321.jpg

第二台Tomcat服务器测试页

wKioL1bPzOXh2iPYAABE8ow6g4w741.jpg



4.访问测试页,查看反向代理和负载均衡效果

首先访问Nginx测试页:192.168.100.100,我们看到可以正常浏览Nginx的测试页

wKiom1bPzXiwCC7BAAC400s2148349.jpg


然后访问以“.jsp”结尾的测试页:192.168.100.100/index.jsp,我们可以看到Nginx服务器反向代理了Tomcat站点,这里显示的是第一台Tomcat服务器测试页

wKiom1bPzdzjx3cAAAB1raVIjRA061.jpg


最后在当前页面做刷新操作:“F5”,可以看到页面自动变成了第二台Tomcat的测试页

wKiom1bPzqOi66sxAAB2LUT_H1U920.jpg

这样就实现了Nginx + Tomcat的负载均衡集群