温馨提示×

centos jenkins更新步骤是什么

小樊
38
2025-11-16 03:32:54
栏目: 智能运维

CentOS 上 Jenkins 更新步骤

一 升级前准备

  • 备份关键数据:建议完整备份 JENKINS_HOME(默认 /var/lib/jenkins) 与关键配置,命令示例:
    • 创建备份目录:sudo mkdir -p /opt/jenkins_backup/$(date +%F)
    • 备份主目录:sudo rsync -a /var/lib/jenkins/ /opt/jenkins_backup/$(date +%F)/jenkins_home/
    • 备份配置文件:sudo cp /etc/sysconfig/jenkins /opt/jenkins_backup/$(date +%F)/jenkins_sysconfig.bak
    • 备份插件目录:sudo rsync -a /var/lib/jenkins/plugins/ /opt/jenkins_backup/$(date +%F)/plugins/
  • 检查并准备 Java:Jenkins 2.357+ 要求 Java 11 起;部分新版本(如 2.463)建议 Java 17+。执行 java -version 确认版本,必要时安装:
    • 安装 OpenJDK 11:sudo yum install java-11-openjdk-devel -y
    • 如需 Java 17(按需):sudo yum install java-17-openjdk-devel -y
  • 确认当前版本与运行方式:
    • 查看版本:管理页面底部或执行 sudo systemctl status jenkins 观察版本信息
    • 确认 WAR 或 RPM 运行方式:ps -ef | grep jenkinsrpm -q jenkins
  • 选择升级策略:优先选择 LTS 版本,不建议使用 Weekly 版本作为生产环境。

二 升级方式

  • 方式 A RPM/YUM 升级(推荐,适用于通过 RPM 安装)
    1. 检查可用更新:sudo yum check-update jenkins
    2. 执行升级:sudo yum upgrade jenkins -y
    3. 重启服务:sudo systemctl restart jenkins
    4. 验证版本:访问 http://服务器IP:8080,页面底部应显示新版本号
  • 方式 B 替换 WAR 文件(适用于 WAR 运行或 RPM 包中 WAR 位置明确)
    1. 停止服务:sudo systemctl stop jenkins
    2. 备份旧 WAR:先定位 WAR 位置(常见为 /usr/lib/jenkins/jenkins.war/usr/share/jenkins/jenkins.war),执行:
      • sudo cp /usr/lib/jenkins/jenkins.war /usr/lib/jenkins/jenkins.war.bak-$(date +%F)
    3. 下载新 WAR(示例为稳定版镜像,可按需替换为最新 LTS 链接):
      • sudo wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/latest/jenkins.war -O /usr/lib/jenkins/jenkins.war
    4. 启动服务:sudo systemctl start jenkins
    5. 验证版本:访问 http://服务器IP:8080 确认升级成功
  • 方式 C Web 界面自动升级(仅限小版本,谨慎使用)
    • 系统管理 中使用内置的自动升级功能,适合小版本快速升级;升级前务必做好备份。

三 升级后验证与回滚

  • 验证要点
    • 访问 http://服务器IP:8080,确认页面底部版本号已更新
    • 查看服务状态:sudo systemctl status jenkins
    • 检查日志:sudo journalctl -u jenkins -xe,确保无启动报错
    • 抽查关键任务与 插件 是否可用
  • 常见故障与处理
    • Java 不兼容:升级到 Java 11/17 后重启;必要时在 /etc/sysconfig/jenkins 中设置 JENKINS_JAVA_CMD 指向正确 java
    • 权限问题:确保 /var/lib/jenkins 属主为 jenkins:jenkinssudo chown -R jenkins:jenkins /var/lib/jenkins
    • 插件不兼容:先升级关键插件,必要时临时禁用问题插件再逐步恢复
  • 回滚方案
    • RPM 回滚:sudo yum downgrade jenkins -y && sudo systemctl restart jenkins
    • WAR 回滚:停止服务,将备份 WAR 拷回原路径并重启:
      • sudo systemctl stop jenkins
      • sudo cp /usr/lib/jenkins/jenkins.war.bak-YYYY-MM-DD /usr/lib/jenkins/jenkins.war
      • sudo systemctl start jenkins

四 注意事项

  • 生产环境优先选择 LTS 版本,避免 Weekly 版本的不稳定性
  • 升级前务必完成 完整备份(主目录、插件、配置文件)
  • 升级后及时在 插件管理 中更新插件,并观察兼容性
  • 明确 Java 版本要求2.357+ 需 Java 11;部分新版本(如 2.463)建议 Java 17+
  • 不建议直接删除 /var/lib/jenkins 目录;若必须重建,应先备份并在恢复后校验权限与数据完整性。

0