nginx + tomcat多实例

 
1、tomcat 配置多实例(修改两个端口:server端口,tomcat端口)
搭建以前,先确保已安装java和tomcat
jdk安装:http://note.youdao.com/noteshare?id=4eb8cbd7335c01a0e1d63a4e4423eb04&sub=CAF7C0E8A1274F8EACB0A45CBE05D19F
tomcat安装:http://note.youdao.com/noteshare?id=9d69288430ccafeadae081f26c957d5e&sub=F7AB1418907B4EF68A6EF7A80BDFBB39
 
 
一、java目录: /usr/local/jdk1.8.0_121/
二、tomcat目录: /usr/local/tomcat/
 
具体步骤:
一、在/usr/local/tomcat_instance/  下分别建立三个tomcat实例的目录,组成一个集群
mkdir /usr/local/tomcat_instance/tomcat1 
... tomcat2 
... tomcat3 
 
 
二、拷贝原tomcat安装目录下的相关目录,分别放入tomcat 三个实例的目录中
(1)cd /usr/local/tomcat
(2)cp -r 如下五个目录
bin conf logs temp work
到  /usr/local/tomcat_instance/tomcat1/
 
 
三、在tomcat实例下建立实例启动和中止脚本(放到tomcat实例的bin目录下)
(1)cp /usr/local/tomcat/bin/startup.sh   /usr/local/tomcat_instance/tomcat1/bin
(2)cp /usr/local/tomcat/bin/shutdown.sh   /usr/local/tomcat_instance/tomcat1/bin
(3)chmod +x    /usr/local/tomcat_instance/tomcat1/bin
 
【1】启动脚本startup.sh

【2】中止脚本shutdown.shhtml

 
四、修改tomcat实例中server.xml中的两个端口(Server,HTTP)
ps:不要和其它实例的端口或系统已经占用的端口发生冲突
 
(1) <Server port="9001" shutdown="SHUTDOWN">
(2) <Connector port="8001" protocol="HTTP/1.1"...>
tomcat2实例:Server port : 9002 Connector port: 8002
tomcat3实例:Server port : 9003 Connector port: 8003
(3)重启tomcat实例
 
五、建立tomcat实例的项目目录
mkdir -p  /export/App/webapps
ps:全部实例的app默认都部署到 /export/App/webapps 目录下,
注意修改server.xml中Host节点的 appBase属性的值。
eg,第一个tomcat实例

 

六、启动服务(每一个tomcat实例都要指定)
/usr/local/tomcat_instance/tomcat1/bin/startup.sh  -config /usr/local/tomcat_instance/tomcat1/conf/server.xml
  
if 关闭服务,
/usr/local/tomcat_instance/tomcat1/bin/shutdown.sh
ps:
保证每一个tomcat实例下的bin目录至少要有 shutdown.sh  startup.sh
 
七、查看端口:
netstat -anp |grep java
 
##########################
tomcat1
/export/App/aaa
(1)Server port   
 
(2)HTTP/1.1
 
(3)Host, Context
 

tomcat2java

Host name: www.456.com       docBase: ./bbbnginx

tomcat3web

Host name: www.789.com       docBase: ./cccwindows

##########################
 
八、测试

(1)curl测试后端

curl -xlocalhost:8001 www.123.com/8001
curl -xlocalhost:8002 www.456.com/8002
curl -xlocalhost:8003 www.789.com/8003

 

(2)浏览器测试浏览器

(i)windows写hoststomcat

(ii)访问app

 

2、 nginx+tomcatcurl

nginx充当一个代理,请求发送到后端3个tomcat

一、一台机器,一个nginx代理,三个tomcat实例
二、tomcat配置
项目目录: /export/App
(1)分别在aaa,bbb,ccc下写index.jsp
eg: tomcat 实例1
<html>
<body>
<h1>Tomcat 1 jsp test page</h1>
<%=new java.util.Date()%>
</body>
</html>
 
(2)三个tomcat实例 的 server.xml,
Host name 都改回成 "localhost" ,
这样浏览器访问能够直接:192.168.37.128:8001
这样作的好处是:方便nginx配置负载衡均虚拟主机配置文件

 

三、nginx反向代理配置
(1)主配置文件,在http模块上,开启
include vhosts/*.conf
注意: 主配置文件不须要监听端口! ——》 默认安装的配置文件是有的,要改
 
(2)nginx虚拟主机配置文件
vhosts 目录下建立 lb.conf

 

四、windows绑定hosts
C:\Windows\System32\drivers\etc\hosts
写入:
192.168.37.128 tomcat.ljy.com
 
五、关防火墙,启动nginx,tomcat
六、测试
(1)浏览器访问 tomcat.ljy.com

刷新,三个tomcat能够切换

 

(2)curl -xlocalhost:80 tomcat.ljy.com

相关文章
相关标签/搜索