文章目录
一、nginx+tomcat实现负载均衡
在上一篇博客中,我们已经实现了客户端访问动态页面,现在我们来实现负载均衡
实验环境
主机(版本:ip) | 功用 |
---|---|
虚拟机server1(rhel7.3:172.25.2.1) | lnmp环境主机 |
虚拟机server2(rhel7.3:172.25.2.2) | tomcat1服务器 |
虚拟机server2(rhel7.3:172.25.2.3) | tomcat2服务器 |
真机(rhel7.3:172.25.2.250) | 测试机 |
实验原理
nginx作为反向代理服务器,转发多个tomcat服务器,实现负载均衡。
配置后端tomcat服务器,实现动态访问
在server2和server3中(做相同的操作):
step1 解压安装包到指定目录/usr/local/:
tar zxf jdk-7u79-linux-x64.tar.gz -C /usr/local/
tar zxf apache-tomcat-7.0.99.tar.gz -C /usr/local/
cd /usr/local/
ls
ln -s jdk1.7.0_79/ java
ln -s apache-tomcat-7.0.99/ tomcat
step2 配置java环境:
vim /etc/profile
写入:
export JAVA_HOME=/usr/local/java
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile #重新加载配置文件
step3 测试java环境是否配置成功:
cd
vim test.java
写入:
public class test
{
public static void main(String[] args)
{
System.out.println("Hello World");
}
}
javac test.java #javac编译.java脚本
java test #运行脚本
step4 启动tomcat:
cd /usr/local/tomcat/
bin/startup.sh
netstat -antlp #查看到8080端口开启,说明启动成功
step5 测试:
访问172.25.2.2:8080和访问172.25.2.3:8080 #查看到tomcat默认页面
在tomcat中的负载均衡
step1 给server2和server3添加测试页面:
cd /usr/local/tomcat/webapps/ROOT/ #tomcat默认发布目录
vim test.jsp
写入:
server2-The time is: <%=new java.util.Date() %>
发给server3:
scp test.jsp root@172.25.2.3:/usr/local/tomcat/webapps/ROOT/
在server3中修改:
vim test.jsp
修改2为3:
server3-The time is: <%=new java.util.Date() %>
step2 测试:
step3 代理服务器:
在server1中:
/usr/local/openresty/nginx/sbin/nginx -s stop #关闭之前使用的openresty(没有做过可忽略)
cd /usr/local/lnmp/nginx/conf/
vim nginx.conf
17 http {
18 include mime.types;
19 default_type application/octet-stream;
20 upstream tomcat {
21 server 172.25.254.2:8080; #后端服务器
22 server 172.25.254.3:8080; #后端服务器
23 }
47 location / {
48 root /usr/local/tomcat/webapps/ROOT;
49 index index.html index.htm;
50 }
63 location ~ \.jsp$ {
64 proxy_pass http://tomcat;
65 }
nginx -t
nginx -s reload
step4 测试:
访问172.25.254.1/test.jsp #看到server2和server3的测试页,刷新一次改变一次(轮询)