Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验

目录

1.实验准备

2.部署Tomcat多实例

3.部署Nginx 和Tomcat动静分离

3.1 Nginx配置

 3.2 Tomcat配置

1.实验准备

nginx服务器:

192.168.112.99

Tomcat服务器:

1. 192.168.112.100

2. 192.168.112.101

2.部署Tomcat多实例

首先准备好jdk的安装

安装好之后,配置Tomcat的环境变量

vim /etc/profile.d/tomcat.sh
#tomcat1
export CATALINA_HOME1=/usr/local/tomcat/tomcat1
export CATALINA_BASE1=/usr/local/tomcat/tomcat1
export TOMCAT_HOME1=/usr/local/tomcat/tomcat1

#tomcat2
export CATALINA_HOME2=/usr/local/tomcat/tomcat2
export CATALINA_BASE2=/usr/local/tomcat/tomcat2
export TOMCAT_HOME2=/usr/local/tomcat/tomcat2


source /etc/profile.d/tomcat.sh
记得刷新环境变量

为了不让两个服务之间的端口号冲突,我们需要修改第二台实例的端口号

vim /usr/local/tomcat/tomcat2/conf/server.xml
		#22行,修改Server prot,默认为8005 -> 修改为8006
 修改为8081
	#116行,修改Connector port AJP/1.3,默认为8009 -> 修改为8010

----------------------------------------------------------------------------------------------------------
第一个连接器默认监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器。
第二个连接器默认监听8009端口,负责和其他的HTTP服务器建立连接。在把Tomcat与其他HTTP服务器集成时,就需要用到这个连接器。
----------------------------------------------------------------------------------------------------------

Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第1张图片

完成之后,我们需要修改两个服务的启动和关闭文件,以精确控制两个服务 

vim /usr/local/tomcat/tomcat1/bin/startup.sh 
# -----------------------------------------------------------------------------
# Start Script for the CATALINA Server
# -----------------------------------------------------------------------------
##添加以下内容
export CATALINA_BASE=$CATALINA_BASE1
export CATALINA_HOME=$CATALINA_HOME1
export TOMCAT_HOME=$TOMCAT_HOME1


vim /usr/local/tomcat/tomcat1/bin/shutdown.sh
# -----------------------------------------------------------------------------
# Stop script for the CATALINA Server
# -----------------------------------------------------------------------------
export CATALINA_BASE=$CATALINA_BASE1
export CATALINA_HOME=$CATALINA_HOME1
export TOMCAT_HOME=$TOMCAT_HOME1


vim /usr/local/tomcat/tomcat2/bin/startup.sh 
# -----------------------------------------------------------------------------
# Start Script for the CATALINA Server
# -----------------------------------------------------------------------------
export CATALINA_BASE=$CATALINA_BASE2
export CATALINA_HOME=$CATALINA_HOME2
export TOMCAT_HOME=$TOMCAT_HOME2


vim /usr/local/tomcat/tomcat2/bin/shutdown.sh
# -----------------------------------------------------------------------------
# Stop script for the CATALINA Server
# -----------------------------------------------------------------------------
export CATALINA_BASE=$CATALINA_BASE2
export CATALINA_HOME=$CATALINA_HOME2
export TOMCAT_HOME=$TOMCAT_HOME2

 启动服务Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第2张图片

这两个端口已经开启

我们通过浏览器来访问一下

Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第3张图片Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第4张图片

Tomcat多实例部署完成

3.部署Nginx 和Tomcat动静分离

3.1 Nginx配置

首先准备一台已经安装Nginx的服务器——安装Nginx过程详见“Nginx网站服务”——外Nginx服务器设置静态页面的主页,和动态页面的转发

在Nginx更目录下修改主页

Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第5张图片

Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第6张图片

 修改nginx配置文件

nginx.conf

upstream tomcat_server {
		server 192.168.112.101:8080 weight=1;
		server 192.168.112.100:8081 weight=1;
	}
	
	server {
		listen 80;
		server_name www.czh.com;
	
		charset utf-8;
	
		#access_log logs/host.access.log main;
		
		#配置Nginx处理动态页面请求,将 .jsp文件请求转发到Tomcat 服务器处理
		location ~ .*\.jsp$ {
			proxy_pass http://tomcat_server;
#设置后端的Web服务器可以获取远程客户端的真实IP
##设定后端的Web服务器接收到的请求访问的主机名(域名或IP、端口),默认HOST的值为proxy_pass指令设置的主机名。如果反向代理服务器不重写该请求头的话,那么后端真实服务器在处理时会认为所有的请求都来自反向代理服务器,如果后端有防攻击策略的话,那么机器就被封掉了。
			proxy_set_header HOST $host;
##把$remote_addr赋值给X-Real-IP,来获取源IP
			proxy_set_header X-Real-IP $remote_addr;
##在nginx 作为代理服务器时,设置的IP列表,会把经过的机器ip,代理机器ip都记录下来
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		}
		
		#配置Nginx处理静态图片请求
		location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|css)$ {
			root /usr/local/nginx/html;
			expires 10d;
		}
		
		location / {
			root html;
			index index.html index.htm;
		}
......
	}
......
}

Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第7张图片Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第8张图片

Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第9张图片

 配置完成后验证一下文件是否有误

 3.2 Tomcat配置

配置192.168.112.101

在tomcat配置文件中创建主页

Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第10张图片

 修改配置文件

vim /usr/local/tomcat/conf/server.xml
#由于主机名 name 配置都为 localhost,需要删除前面的 HOST 配置

	
	


/usr/local/tomcat/bin/shutdown.sh 
/usr/local/tomcat/bin/startup.sh 

同样的配置192.168.112.100

 Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第11张图片

 修改配置文件

vim /usr/local/tomcat/tomcat2/webapps/test/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>


JSP test2 page   #指定为 test2 页面


<% out.println("动态页面 2,http://www.test2.com");%>

 完成后,测试一下

负载均衡

Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第12张图片

 Tomcat多实例部署及Nginx和Tomcat动静分离+负载均衡实验_第13张图片

 访问图片和静态页面直接交给nginx来处理

你可能感兴趣的:(tomcat,nginx,java)