如何在同一台机部署多个tomcat服务

如何在同一台机部署多个tomcat服务,第1张

不同版本的 tomcat 与 jdk  放到不同的目录

配置 /etc/profile

在57行左右加入下面两句

‍PATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:$PATH

exportJAVA_HOME CATALINA_HOME PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

如果有下面四句,则注释掉局部的。

#JAVA_HOME=/usr/local/jdk180_60                               # 注释掉局部的

#CATALINA_HOME=/usr/local/apache-tomcat-8028          # 注释掉局部的

PATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:$PATH

exportJAVA_HOME CATALINA_HOME PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

在两个不同的 tomcat 的下面的 bi目录下面的shutdownsh文件跟startupsh文件第二行加入下面五句

exportJAVA_HOME=/opt/jdk180_45      # 对应的jdk 所在的目录

exportTOMCAT_HOME=/opt/apache-tomcat-8020   # tomcat所在的目录

exportCATALINA_HOME=/opt/apache-tomcat-8020  # tomcat所在的目录

exportCLASS_PATH=$JAVA_HOME/bin/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tooljar

exportPATH=$PATH:/opt/jdk180_45/bin:/opt/apache-tomcat-8020/bin 

# 对应上面两行的文件路径

修改相对应的的 tomcat 下面的/conf/serverxml    修改(三个地方)如下:

<Server port="8005" shutdown="SHUTDOWN">   

8005 改为 8006(其他不用的端口也可以)

<Connector port="8080" protocol="HTTP/11"        

connectionTimeout="20000"   

redirectPort="8443" />  

8080 改为 8081(其他不用的端口也可以)

<Connector port="8009" protocol="AJP/13" redirectPort="8443" />      

8009 改为 8010(其他不用的端口也可以)

重启 tomcat 其他配置都一样的,看自己所需要

  1、到阿里云官网购买一台服务器

  2、给阿里云服务器挂盘,阿里云有教程这里不讲解,自己看。

Linux 系统挂载数据盘

视频:Linux服务器挂载数据盘

  3、下载tomcat http://apachearvixecom/tomcat/tomcat-7/v7054/bin/apache-tomcat-7054zip

4、准备三个Java Web项目

web-home 官网项目

web-api 接口项目

web-admin 管理后台项目

开始配置环境:

  1、登录申请成功的阿里云服务器中

  2、编辑bashrc文件

1

vim bashrc

  文件中默认内容是

# bashrc

# User specific aliases and functions

alias rm='rm -i'

alias cp='cp -i'

alias mv='mv -i'

#ource global definitions

if [ -f /etc/bashrc ]; then

/etc/bashrc

fi

  3、添加Tomcat 环境变量

# bashrc

# User specific aliases and functions

alias rm='rm -i'

alias cp='cp -i'

alias mv='mv -i'

CATALINA_1_BASE=/alidata/server/tomcat-web-admin-6011

CATALINA_1_HOME=/alidata/server/tomcat-web-admin-6011

CATALINA_1_TMPDIR=/alidata/server/tomcat-yunmai-admin-8011/temp

export CATALINA_1_BASE CATALINA_1_HOME CATALINA_1_TMPDIR

CATALINA_2_BASE=/alidata/server/tomcat-web-home-6022

CATALINA_2_HOME=/alidata/server/tomcat-web-home-6022

CATALINA_2_TMPDIR=/alidata/server/tomcat-web-home-6022/temp

export CATALINA_2_BASE CATALINA_2_HOME CATALINA_2_TMPDIR

CATALINA_3_BASE=/alidata/server/tomcat-web-api-6033

CATALINA_3_HOME=/alidata/server/tomcat-web-api-6033

CATALINA_3_TMPDIR=/alidata/server/tomcat-web-6033/temp

export CATALINA_3_BASE CATALINA_3_HOME CATALINA_3_TMPDIR

#ource global definitions

if [ -f /etc/bashrc ]; then

/etc/bashrc

fi

  4、重启服务器 reboot

 

1

reboot

  

配置Tomact服务:

  1、把下载下来的apache-tomcat-7054zip 复杂3份,重命名

     tomcat-web-admin-6011zip

1

tomcat-web-home-6022zip

1

tomcat-web-api-6033zip<br> <strong>2、把刚重命名的三个Tomcat把上次到 阿里云云服务器中</strong><br> cd /alidata/server/ <br>   本解压文件

unzip tomcat-web-admin-6011zip

unzip tomcat-web-home-6022zip

unzip tomcat-web-api-6033zip

1

<strong>3、修改tomcat-web-admin-6011配置 </strong> <br>  <strong>修改文件conf\serverxml文件</strong><br>  

cd /alidata/server/tomcat-web-admin-6011/conf

vim serverxml

找到配置<Server port="8005" shutdown="SHUTDOWN">

修改成<Server port="16011" shutdown="SHUTDOWN">

找到配置<Connector port="8080" protocol="HTTP/11" connectionTimeout="20000" redirectPort="8443" />

修改成<Connector port="6011" protocol="HTTP/11" connectionTimeout="20000" redirectPort="8443" />

找到配置 <Connector port="8009" protocol="AJP/13" redirectPort="8443" />

修改成<Connector port="6110" protocol="AJP/13" redirectPort="8443" />

1

在<Host> </Host>中间添加下面代码,配置Web项目访问路径 <br><Context path="" docBase="/alidata/www/web-admin" />

1

<strong> 修改bin\catalinash 文件 </strong>

cd /alidata/server/tomcat-web-admin-6011/bin

vim catalinash

替换一下配置

CATALINA_BASE 修改替换称 CATALINA_1_BASE

CATALINA_HOME 修改替换称 CATALINA_1_HOME

CATALINA_TMPDIR 修改替换称 CATALINA_1_TMPDIR

cd /alidata/server/tomcat-web-home-6022/conf

vim serverxml

找到配置<Server port="8005" shutdown="SHUTDOWN">

修改成<Server port="16022" shutdown="SHUTDOWN">

找到配置<Connector port="8080" protocol="HTTP/11" connectionTimeout="20000" redirectPort="8443" />

修改成<Connector port="6022" protocol="HTTP/11" connectionTimeout="20000" redirectPort="8443" />

找到配置 <Connector port="8009" protocol="AJP/13" redirectPort="8443" />

修改成<Connector port="6220" protocol="AJP/13" redirectPort="8443" />

1

在<Host> </Host>中间添加下面代码,配置Web项目访问路径 <br><Context path="" docBase="/alidata/www/web-home" />

1

<strong> 修改bin\catalinash 文件</strong>

cd /alidata/server/tomcat-web-home-6022/bin

vim catalinash

替换一下配置

CATALINA_BASE 修改替换称 CATALINA_2_BASE

CATALINA_HOME 修改替换称 CATALINA_2_HOME

CATALINA_TMPDIR 修改替换称 CATALINA_2_TMPDIR

cd /alidata/server/tomcat-web-api-6033/conf

vim serverxml

找到配置<Server port="8005" shutdown="SHUTDOWN">

修改成<Server port="16033" shutdown="SHUTDOWN">

找到配置<Connector port="8080" protocol="HTTP/11" connectionTimeout="20000" redirectPort="8443" />

修改成<Connector port="6033" protocol="HTTP/11" connectionTimeout="20000" redirectPort="8443" />

找到配置 <Connector port="8009" protocol="AJP/13" redirectPort="8443" />

修改成<Connector port="6330" protocol="AJP/13" redirectPort="8443" /><br><br><span>在<Host> </Host>中间添加下面代码,配置Web项目访问路径<span> <br><Context path="" docBase="/alidata/www/web-api" /></span></span>

1

<em>  </em><strong>修改bin\catalinash 文件</strong><em><br></em>

cd /alidata/server/tomcat-web-api-6033/bin

vim catalinash

替换一下配置

CATALINA_BASE 修改替换称 CATALINA_3_BASE

CATALINA_HOME 修改替换称 CATALINA_3_HOME

CATALINA_TMPDIR 修改替换称 CATALINA_3_TMPDIR

  

配置Web项目:

  1、创建Java Web项目 web-admin 到服务器上

   cd /alidata/www/

   上传web-adminzip 解压unzip web-adminzip

2、创建Java Web项目 web-home 到服务器上

    cd /alidata/www/

   上传web-homezip 解压unzip web-homezip

3、创建Java Web项目 web-api 到服务器上

    cd /alidata/www/

   上传web-apizip 解压unzip web-apizip

以下是我的运用方式(公司硬性要求用tomcat,和同一服务器部署多个项目。项目已在市场上销售,环境暂未遇到什么问题。个人经验为一年半,仅供参考,有不妥的地方请回复):

1、配置多个tomcat,共用一个jdk。

2、路径如下:/usr/local/tomcat1、/usr/local/tomcat2

3、修改tomcat2的serverxml里的8005、8080、8009端口,要与tomcat1的端口号不同。8080就是项目访问端口。

4、启动tomcta时采用赋值变量方式,如下:

# 编辑/usr/local/tomcat1/bin/startupsh,在开头加入:

# 赋值catalina_base,catalina_home的变量

export CATALINA_HOME=/usr/local/tomcat1

export CATALINA_BASE=/usr/local/tomcat1

# 编辑/usr/local/tomcat2/bin/startupsh,在开头加入:

# 赋值catalina_base,catalina_home的变量

export CATALINA_HOME=/usr/local/tomcat2

export CATALINA_BASE=/usr/local/tomcat2

5、启动方式(建议将tomcat加入chkconfig服务,方便启动停止)。

# 进入到tomcat1目录必不可少

cd /usr/local/tomcat1/bin

# 启动tomcat1

bash startupsh

# 进入到tomcat1目录必不可少

cd /usr/local/tomcat2/bin

# 启动tomcat2

bash startupsh

6、建议固定catalinaout文件的输出位置,如果项目中配置logback或log4j,日志输出位置也建议固定写死。(答主的服务器为批量生产,日志统一管理,情况不同,自行取舍)

这个方法挺low,肯定还有更好的解决方式,我还没有见识到。请多交流。

1解压两个tomcat文件夹

2配置环境变量,sudo vim /etc/profile,空白处加上

修改结束后执行  source  /etc/profile  使环境变量生效

3编辑tomcat2/bin/catalinash,将CATALINA_BASE和CATALINA_HOME替换成环境变量中tomcat2的对应参数

4修改tomcat2/conf/serverxml,将其中8005,8080,8009端口号+1000,修改成9005,9080,9009。当使用VIM编辑文本时,可以通过“/${关键字快速定位}”,如‘/8080’。

tomcat这3个端口的作用分别是:

8005端口是用来关闭TOMCAT服务的端口。

连接器监听8009端口,负责和其他的HTTP服务器建立连接。在把Tomcat与其他HTTP服务器集成时,就需要用到这个连接器。

连接器监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器

5如果是在虚拟机或服务器上,之前限制过端口号,则需要将新的9080端口添加到防火墙。sudo vim /etc/sysconfig/iptables

之后重启防火墙,sudo /etc/initd/iptables restart。

6分别启动tomcat/bin的/startupsh。访问127001:8080,127001:9080就都能访问了。替换Tomcat2/webapps/ROOT/tomcatpng的,以区分两个端口访问的是不同的应用

7修改浏览器所在地的host,将本地127001赋值给一个域名。vim  /etc/hosts,添加如下域名。

之后通过访问  wwwmiercom:8080 与wwwmiercom:8090就能访问虚拟机上着两个应用了。

8修改nginx/config目录下的nginxconf文件,引入扩展域名解析文件,在http{}内加入如下命令。

9然后在nginx/config目录下创建vhost文件夹,在其中新增一个6步骤中域名开头的conf文件,如wwwmiercomconf。

保存退出后,重启nginx,sudo nginx/sbin/nginx -s reload。此时访问wwwmiercom,会以设置的权重比例访问到对应的tomcat服务。

项目部署在windows服务器上,(真心不造经济学院为什么要买一台windows服务器)

在服务器上部署多个项目的时候,由于第二个项目自己偷懒就复制了第一个项目的webxml,没想到连webAppRootKey也一起复制过去了,于是造成冲突。

查看日志:Web app root system property already set to different value: 'app1root' = [D:\apache\apache-tomcat-8512-windows-x64\webapps\teachers\] instead of [D:\apache\apache-tomcat-8512-windows-x64\webapps\teachers_files\] - Choose unique values for the 'webAppRootKey' context-param in your webxml files!

不得不说日志是个好东西,记录了项目的行为

另外项目的webAppRootKey就不复制了,他们的值都是相同的。

解决方法:因此两个项目中paran-value应该是不一样的。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何在同一台机部署多个tomcat服务

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情