CentOS 安装并运行 Tomcat 的完整指南
在 CentOS 系统中安装和运行 Apache Tomcat 是部署 Java Web 应用的常见需求。本文将详细介绍如何在 CentOS 上安装 Tomcat、运行 Tomcat 服务,并配置多个 Tomcat 实例以实现负载均衡。
1. 安装 Tomcat
1.1 下载 Tomcat
首先,访问 Tomcat 官网 下载所需的 Tomcat 版本。以下是 Tomcat 8 和 Tomcat 9 的下载链接:
# Tomcat 8.5.76
wget https://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.5.76/bin/apache-tomcat-8.5.76.tar.gz
# Tomcat 9.0.83
wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.83/bin/apache-tomcat-9.0.83.tar.gz
1.2 解压 Tomcat
下载完成后,使用以下命令解压 Tomcat 安装包:
# 解压 Tomcat 8
tar -zxvf apache-tomcat-8.5.76.tar.gz
# 解压 Tomcat 9
tar -zxvf apache-tomcat-9.0.83.tar.gz
解压后,Tomcat 的文件将存储在解压目录中。
1.3 启动 Tomcat
进入 Tomcat 的 bin
目录并启动 Tomcat:
cd /path/to/apache-tomcat-8.5.76/bin
./startup.sh
1.4 测试 Tomcat 是否运行成功
使用 curl
命令测试 Tomcat 是否成功启动:
curl 127.0.0.1:8080
如果返回以下 HTML 内容,说明 Tomcat 已成功运行:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Apache Tomcat/8.5.76</title>
<link href="favicon.ico" rel="icon" type="image/x-icon" />
<link href="tomcat.css" rel="stylesheet" type="text/css" />
</head>
</html>
2. 同时运行多个 Tomcat 实例
在某些场景下,可能需要在一台服务器上运行多个 Tomcat 实例,例如实现负载均衡。以下是配置多个 Tomcat 实例的详细步骤。
2.1 配置环境变量
编辑 /etc/profile
文件,为每个 Tomcat 实例配置独立的环境变量:
vim /etc/profile
在文件末尾添加以下内容:
# Tomcat 1 配置
export CATALINA_HOME=/home/tomcat/apache-tomcat-8.5.76
export CATALINA_BASE=/home/tomcat/apache-tomcat-8.5.76
export TOMCAT_HOME=/home/tomcat/apache-tomcat-8.5.76
# Tomcat 2 配置
export CATALINA_HOME2=/home/tomcat2/apache-tomcat-8.5.77
export CATALINA_BASE2=/home/tomcat2/apache-tomcat-8.5.77
export TOMCAT_HOME2=/home/tomcat2/apache-tomcat-8.5.77
保存并退出后,加载环境变量:
source /etc/profile
2.2 修改 Tomcat 2 的 server.xml
文件
为了避免端口冲突,需要修改第二个 Tomcat 实例的端口配置。编辑 /home/tomcat2/apache-tomcat-8.5.77/conf/server.xml
文件:
<!-- 修改 Server 端口 -->
<Server port="8006" shutdown="SHUTDOWN"> <!-- 默认 8005 改为 8006 -->
<!-- 修改 HTTP 连接端口 -->
<Connector port="8081" protocol="HTTP/1.1" <!-- 默认 8080 改为 8081 -->
connectionTimeout="20000"
redirectPort="8443" />
<!-- 修改 AJP 连接端口 -->
<Connector port="8010" protocol="AJP/1.3" redirectPort="8443" /> <!-- 默认 8009 改为 8010 -->
2.3 修改 Tomcat 2 的启动脚本
编辑 /home/tomcat2/apache-tomcat-8.5.77/bin/startup.sh
和 shutdown.sh
文件,添加以下内容:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/bin
export CATALINA_HOME=$CATALINA_HOME2
export CATALINA_BASE=$CATALINA_BASE2
2.4 修改 catalina.sh
文件
编辑 /home/tomcat2/apache-tomcat-8.5.77/bin/catalina.sh
文件,添加以下内容:
export CATALINA_BASE=$CATALINA_BASE2
export CATALINA_HOME=$CATALINA_HOME2
export TOMCAT_HOME=$TOMCAT_HOME2
2.5 启动并测试多个 Tomcat 实例
分别启动两个 Tomcat 实例:
# 启动 Tomcat 1
/home/tomcat/apache-tomcat-8.5.76/bin/startup.sh
# 启动 Tomcat 2
/home/tomcat2/apache-tomcat-8.5.77/bin/startup.sh
在浏览器中访问以下地址,测试两个 Tomcat 实例是否正常运行:
- Tomcat 1:
http://<服务器IP>:8080
- Tomcat 2:
http://<服务器IP>:8081
如果两个页面都能正常显示,说明配置成功。
3. 总结
通过本文的步骤,您可以在 CentOS 系统上成功安装并运行 Tomcat,同时配置多个 Tomcat 实例以满足负载均衡的需求。以下是关键点总结:
- 下载并解压 Tomcat:从官网或镜像站点获取 Tomcat 安装包。
- 配置环境变量:为每个 Tomcat 实例设置独立的环境变量。
- 修改端口配置:避免多个 Tomcat 实例的端口冲突。
- 启动并测试:确保每个 Tomcat 实例都能正常运行。
通过以上配置,您可以轻松管理多个 Tomcat 实例,为 Java Web 应用提供高可用性和负载均衡支持。