Centos中搭建多台Tomcat服务器[通俗易懂]

Centos中搭建多台Tomcat服务器[通俗易懂]为了满足业务需求,我们需要在同一台Centos服务器中搭建多个Tomcat服务器,下面,就让我们一起来看看吧1、安装JDKhttps://blog.csdn.net/qq_40065776/article/details/1010001012、安装Tomcathttps://blog.csdn.net/qq_40065776/article/details/101000175…

大家好,又见面了,我是你们的朋友全栈君。

为了满足业务需求,我们需要在同一台 Centos 服务器中搭建多个 Tomcat 服务器,下面,就让我们一起来看看吧

1、安装 JDK

https://blog.csdn.net/qq_40065776/article/details/101000101

2、安装 Tomcat

https://blog.csdn.net/qq_40065776/article/details/101000175

以上两步都非常简单,可以参考我的这两篇博客,在这里就不赘述了

3、开放端口 8080,8081

参考我的博客:Ctntos7防火墙命令学习笔记

https://blog.csdn.net/qq_40065776/article/details/96313045

我们主要用到:

永久开放 8080,8081 端口

firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --add-port=8081/tcp --permanent

重启防火墙

firewall-cmd --reload

如果我们使用的是阿里云的云服务器,我们还需要登录 阿里云官网,进入控制台,更改防火墙设置,开放 8080,80801端口

4、复制一份 Tomcat

cp ./apache-tomcat-8.5.34/ ./apache-tomcat2-8.5.34/ -r

我们一定要加上 -r,因为解压后的 Tomcat 本身是一个文件夹,而在此目录下还存在有文件夹

参数说明:

-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答”y”时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。

5、修改环境变量(只配置一台 Tomcat 是不需要此步骤的)

vim /etc/profile

如图所示:
环境变量配置
在文章的末尾加上以下内容:

# tomcat1
export CATALINA_BASE=/usr/local/apache-tomcat-8.5.34
export CATALINA_HOME=/usr/local/apache-tomcat-8.5.34
export TOMCAT_HOME=/usr/local/apache-tomcat-8.5.34

# tomcat2
export CATALINA_2_BASE=/usr/local/apache-tomcat2-8.5.34
export CATALINA_2_HOME=/usr/local/apache-tomcat2-8.5.34
export TOMCAT_2_HOME=/usr/local/apache-tomcat2-8.5.34

多个 Tomcat 照此类推

保存退出:

ESC + CTRL + :
wq 回车

启用/etc/profile配置

source /etc/profile

6、修改第二台(或者第三台) Tomcat 的 /bin/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

即指明环境变量中配置的参数

7、修改第二台(或者第三台)的服务端口号 /conf/server.xml

一共需要修改三个地方:
(1)

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

修改为:

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

(2)

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

修改为:

<Connector port="8081" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

(3)

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

修改为:

<Connector port="9009" protocol="AJP/1.3" redirectPort="8443" />

你也不一定非要跟我改的端口一致,只需要和第一台 Tomcat 使用不同的端口就行

8、启动两个 Tomcat 服务器

启动第一个:

./startup.sh

启动第二个:

这时使用第一种启动方式无法正常启动,执行

chmod +x *.sh

再执行

sh startup.sh

启动成功

9、访问服务器

我们分别在浏览器中访问

ip:8080

第一台tomcat

ip:8081

第二台tomcat
出现了两台 Tomcat 的启动页面,证明我们多台 Tomcat 服务器搭建成功

如您在阅读中发现不足,欢迎留言!!!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149960.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 驼峰命名法规则_RS命名法举例

    驼峰命名法规则_RS命名法举例三种流行的命名法则目前,业界共有四种命名法则:驼峰命名法、匈牙利命名法、帕斯卡命名法和下划线命名法,其中前三种是较为流行的命名法。驼峰命令法(Camel): 也称骆驼式命名法正如它的名称所表示的那样,是指混合使用大小写字母来构成变量和函数的名字例如,下面是分别用骆驼式命名法和下划线法命名的同一个函数:程序代码printEmployeePaychecks();print_em…

    2022年10月25日
  • c语言入门教程–-18指针

    c语言入门教程–-18指针

    2021年3月12日
  • java正则表达式验证手机号码_java邮箱判断合法正则表达式

    java正则表达式验证手机号码_java邮箱判断合法正则表达式java手机号正则表达式目前是截止2019年6月最新,适配各种手机号,满足常见号码验证importjava.util.regex.Matcher;importjava.util.regex.Pattern;importorg.apache.commons.lang3.StringUtils;/***@authorkpzc*三大运营商号码均可验证(不含卫星通信1349)*/publicclassmobile{/*<br>     2019

    2022年9月17日
  • Matlab代码之plot函数的坐标点显示

    Matlab代码之plot函数的坐标点显示plot函数的xlabel、ylabel、title、text、legend1、在图像某个位置显示文字信息,2、用text()显示plot函数的坐标点;3、用legend()在一张图同时显示不同曲线;4、用xlabel()、ylabel()、title()显示横纵坐标和标题;5、用subplot在一张画布上画多个图像;新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个

    2022年10月15日
  • 四旋翼飞行器姿态控制(四轴飞行器姿态解算)

    笔者最近在做四旋翼飞行器的研究工作,所以在这里总结一下关于姿态解算的小知识点。知识点比较零碎,涉及到:飞行器导航的基本原理、四元数的理解、加速度计和陀螺仪的理解、欧拉角的理解、飞行器的数据融合方案、卡尔曼滤波等。不足之处还望多多指教,目前的工作进展是已经将硬件搭建出来,正在撰写飞行控制代码。欢迎个人前来讨论和批评指出~

    2022年4月17日
  • commandname「建议收藏」

    commandname「建议收藏」你怎么还是采用asp的方式来实现呢?  既然用了datagrid再后面加一个然后为你的DataGrid添加  ItemCommand事件(this.MyList.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.MyList_ItemCommand))  在这个事

    2022年10月22日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号