温馨提示×

如何在Ubuntu上更新Tomcat版本

小樊
45
2025-11-27 07:46:47
栏目: 智能运维

在 Ubuntu 上更新 Tomcat 的推荐做法

一 准备与环境检查

  • 确认当前版本与运行状态:在旧版 Tomcat 的 bin 目录执行:./version.sh;必要时用 ps -ef | grep tomcat 查看进程。
  • 检查 Java 版本:Tomcat 9 需要 Java 8+,建议 OpenJDK 11。命令:java -version。
  • 规划版本策略:同主版本的小版本升级(如 9.0.x → 9.0.y)通常更稳妥;跨主版本需充分回归测试。
  • 备份关键数据:建议完整备份旧目录、数据库及配置(见下一步)。

二 两种升级方案

  • 方案A 使用符号链接的“无缝切换”(推荐)

    1. 停止服务:sudo systemctl stop tomcat(若使用脚本启动则运行旧版的 bin/shutdown.sh)。
    2. 备份:tar -zcvf tomcat-backup-$(date +%F).tar.gz /opt/tomcat。
    3. 下载并解压新版本到 /opt/tomcat:tar -xf apache-tomcat-9.0.NN.tar.gz -C /opt/tomcat。
    4. 同步必要目录(按需):将旧版的 confwebapps、以及自定义的 server.keystore 等复制到新目录;为降低攻击面可删除新版的 webapps/ROOT、docs、manager、examples
    5. 调整权限与符号链接:
      • chown -R tomcat: /opt/tomcat
      • chmod +x /opt/tomcat/apache-tomcat-9.0.NN/bin/*.sh
      • 将符号链接切换至新版本:ln -sfn /opt/tomcat/apache-tomcat-9.0.NN /opt/tomcat/latest
    6. 启动并验证:sudo systemctl start tomcat;访问 http://服务器IP:8080;在新版 bin 目录执行 ./version.sh 确认版本。
  • 方案B 使用包管理器 APT(适用于发行版仓库版本)

    • 更新索引并安装新版本:sudo apt update && sudo apt install tomcat9(或 tomcat8)。
    • 注意:仓库版本通常滞后于官网,适合稳定环境;升级后核对 /etc/tomcat9/ 下的配置与应用部署路径。

三 升级后的验证与回滚

  • 功能与日志:访问应用首页与管理端(如启用),查看 catalina.outlocalhost.log* 是否有异常;必要时回滚到备份。
  • 快速回滚:
    • 符号链接方式:ln -sfn /opt/tomcat/旧版本目录 /opt/tomcat/latest && sudo systemctl restart tomcat;
    • 包管理方式:sudo apt install tomcat9=旧版本号(或降级命令)。

四 常见问题与注意事项

  • 端口与防火墙:确保 8080 端口开放;如使用 ufw,执行 sudo ufw allow 8080/tcp。
  • 内存与 GC:在 CATALINA_OPTS 中合理设置 -Xms/-Xmx(如 -Xms512M -Xmx1024M),避免 OOM。
  • 管理应用安全:生产环境不建议对外暴露 /manager/host-manager;若必须远程访问,请在对应的 context.xml 中配置 RemoteAddrValve 限制来源 IP。
  • 兼容性:升级小版本一般兼容,但跨主版本需验证 Servlet/JSP 规范与依赖库(如数据库驱动、JCE 策略等)。

0