单个云服务器部署多个Tomcat

发布时间 2023-04-11 17:12:23作者: 三之日up

单个云服务器部署多个Tomcat

环境准备:

以下是我的环境,供参考:

1,阿里云轻量服务器 centOs8.2

2,apache-tomcat-8.5.87.tar.gz

3,jdk 1.8.0_361 安装jdk这步省略,可通过java -version判断服务器中是否有jdk

4,在阿里云安全组开放端口8080、9999、8006、8008,后面会使用到

开始:

1,上传apache-tomcat-8.5.87.tar.gz至服务器的某个目录下,我放在了/opt/software目录下了

2,tar -zxvf apache-tomcat-8.5.87.tar.gz

3,mv apache-tomcat-8.5.87 tomcat1 这一步的作用是改文件名

4,再一次解压apache-tomcat-8.5.87.tar.gz,建议放在其他目录下

5,tar -zxvf apache-tomcat-8.5.87.tar.gz /home/software

6,mv apache-tomcat-8.5.87 tomcat2

上面操作完成后,我们就有了两个tomcat了,但是是无法同时启动的,接下来要做一些配置

1,打开配置文件 vim /etc/profile

2,在配置文件中加入

第一个Tomcat####

export CATALINA_BASE=opt/software/tomcat1
export CATALINA_HOME=opt/software/tomcat1
export TOMCAT_HOME=opt/software/tomcat1

第二个Tomcat####

export CATALINA_2_BASE=/home/software/tomcat2
export CATALINA_2_HOME=/home/software/tomcat2
export TOMCAT__2_HOME=/home/software/tomcat2

3,修改完刷新 source /etc/profile

4,cd /home/software/tomcat2/bin

5,vim catalina.sh 注释代码 # OS specific support. $var must be set to either true or false. 并在这段代码下加以下内容

export CATALINA_BASE=$CATALINA_2_BASE
export CATALINA_HOME=$CATALINA_2_HOME

目的是为了tomcat2启动的时候能通过该文件的里的$CATALINA_2_BASE 和 $CATALINA_2_HOME找到/etc/profile配置文件里我们刚才配好的路径,以便完成tomcat2的启动过程。

完成以上操作后我们要修改两个tomcat中的一个的端口配置,为了是防止端口冲突

1,cd /home/software/tomcat2/conf

2,vim server.xml

3,修改以下三个端口

第一个:tomcat监听的关闭端口(默认为8005端口):
<Server port="8006" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.startup.VersionLoggerListener" />

第二个:http访问端口(默认为8080端口):
<Connector port="9999" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
第三个:负责接收其他http服务器的请求端口(默认为8009):
<Connector port="8008" protocol="AJP/1.3" redirectPort="8443" />

修改完端口之后,要重启tomcat,并且在防火墙里也要开放以上端口,这一步我们在环境准备阶段就完成了。

4,启动 测试 ip:8080 ip:9999

至此,配置两个tomcat完成

补充:

tomcat能够以  ./startup.sh 或者 catalina.sh run两种方式启动
startup.sh的启动也是调用的catalina.sh启动的,故我们需要关注的是catalina.sh文件
1  首先 tomcat在启动的时候会查找tomcat的安装目录,也就是它的根目录,然后通过CATALINA_BASE和CATALINA_HOME 这两个变量去查找,所以一台服务器上的多台不同tomcat的根目录以及上述两个变量的值是不一样的,因此我们要设置一下上面的两个变量。
2  就是设置每服务器的三个端口,要让每台tomcat的该三个对应的端口都不一样,这样才能保证同时启动多台tomcat成功