记录一次jenkins的升级

背景

内网有一台项目组用的jenkins,ip 192.168.0.170.版本为1.235.3的版本。部署方式为 tomcat war包+nginx代理。正好有时间想把jenkins升级到最新版本。说干就干,下面记录一下升级的痛苦过程…

1. jenkins升级的痛苦过程

按照官方的文档也一般的安装过程就是下载最新jar包替换这样的流程。故:

1. 停止 jenkins服务

####远古项目centos7还是默认的service
service tomcat stop
###centos 8 可以systemctl
systemctl stop tomcat

当然了 如果是jar的方式启动的 可以kill了 jar进程。

2. 备份jenkins服务

先备份jenkins数据目录文件和版本部署文件
我的集成环境使用的oneinstck安装的java nginx环境。配置文件在/home/www./jenkins目录下
jar包部署在/data/wwwroot/default目录。先做个备份

####
cd /home/www/
cp -Ra .jenkins/ .jenkinsold/
cd /data/wwwroot
cp -Ra default defaultold

3. 下载最新war包更新到服务器并启动服务

https://get.jenkins.io/war-stable/下载了最新的2.277.3版本,关于 lts版本与weekly版本:

  1. 稳定版 (LTS)
  2. 定期发布 (每周)

默认反正我个人是tls稳定版了。

image.png
我tomcat的目录在/data/wwwroot/default。 将jar包加压到目录下(war包可以直接解压的)。重新启动tomcat服务:

service tomcat start

4. 验证更新后服务是否正常启动

web访问http://192.168.0.170
image.png
what?出现异常了。不能访问…。看了一眼tomcat的日志:
image.png
更新到最新版本以失败告终…,log中截取了报错信息如下:

enkins.model.Jenkins.save An attempt to save Jenkins'' global configuration before it has been loaded has been made during milestone Configuration for all jobs updated.  This is indicative of a bug in the caller and may lead to full or partial loss of configuration

2. 复盘更新

1. 万能的百度orgoogle

将log中报错复制到了百度搜索,找到了stackoverflow中的一个类似的更新失败案例:
https://stackoverflow.com/questions/65441139/how-to-fix-jenkins-java-lang-illegalstateexception-an-attempt-to-save-the-globa。得到一下两个方案:

1. 降级:

image.png

2. 更新role-strategy-3.1.hpi

image.png
按照这里面的方案试一下了…

2. 将jenkins 2.235.3更新到2.263版本

重复1.1-1.4过程。当然了 只是变成了下载war包下载2.263.1的war包。嗯更新完可以正常进入:
任务就忽略了,瞎写着测试的…
image.png
接着把版本升级到1.263.4的版本看一眼,嗯 也成功了
image.png
这个时候如果想抱着直接升级到2.277.3就能成功的侥幸还是打错特错的…

3. jenkins2.263版本安装插件

仔细观察我的jenkins中右上角提示信息里面有那么一堆,看了一眼

  •   Icon Shim Plugin
    
  •   jQuery UI plugin
    
  •  Pipeline: Declarative Agent API
    

这几个插件我也是没有用的。还有一些插件也都过时了…我就把能看到的这些插件都卸载了…
image.png

image.png
其他插件类似…不相干的插件还是少安装了…
然后下载role-straegy.hpi并上传到jenkins:
系统管理-插件管理-高级-上传插件。整完以后重启tomcat
image.png

4. 继续更新jenkins

重新执行1.1-1.4流程,嗯版本总算更新成功了
image.png
查看tomcat log:
image.png

总结:

通过这次更新个人的总结:

  1. 更新升级前要做好程序与配置文件的备份(比较有些配置文件与程序是分开的)
  2. 深入了解一下版本的更新文档?jenkins在1.277版本应该就是做了什么的更改的。1.235-1.263是可以直接升级的。
  3. 尽量少安装不必要的插件。以免引起版本更新过程中的不兼容问题。
  4. 善于查看日志并用各种搜索工具…
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

对你无可奈何2008

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值