jenkins升级后报错回退旧版本

发布 : 2022-10-25 分类 : jenkins 浏览 :

jenkins升级后报错回退旧版本

某一天的下午,看到Jenkins小铃铛提示,因为之前升级都很顺滑,理所当然的认为这次也没事,手残点了升级,然后问题就来了

之前旧版本是在jdk8运行的,现在Jenkins最新版起步就要jdk11,jdk17,所以一直启动不成功,
看来攻略下载了一个jdk17 并且把Jenkins配置成jdk17启动,还是报了一堆错误,安装的一些插件在jdk17没办法启动 如:jruby

只能退回之前jdk8版本
根据这个网站看到jdk8支持的版本,并下载
https://mirrors.jenkins.io/war-stable/

https://mirrors.jenkins.io/war-stable/2.346.1/jenkins.war

因为是用yum安装的Jenkins,所以使用 rpm -ql jenkins

查看安装Jenkins位置

1
2
3
4
5
6
7
8
9
10
11
12
13
/var/lib/jenkins                # jenkins数据
/etc/init.d/jenkins # 服务启动脚本
/etc/logrotate.d/jenkins
/etc/sysconfig/jenkins # 服务启动脚本配置
/usr/bin/jenkins # 运行脚本
/usr/lib/systemd/system/jenkins.service #服务运行配置
/usr/sbin/rcjenkins
/usr/share/java/jenkins.war #这个是war
/usr/share/jenkins
/usr/share/jenkins/migrate
/var/cache/jenkins #运行war解压后的文件
/var/lib/jenkins #默认的JENKINS_HOME 运行产生的数据都在这个目录
/var/log/jenkins #jenkins日志文件

把上面下载的war覆盖掉/usr/share/java/jenkins.war这个文件 就完成退回操作

就到使用/etc/init.d/jenkins start 启动

如果没有问题Jenkins就还原到jdk8的版本了

最后还有系统服务启动配置
执行启动

1
2
3
4
5
6
7
systemctl daemon-reload   #服务配置更新

systemctl start jenkins.service #启动服务

systemctl status jenkins.service #查看运行状态

journalctl -xe #查看运行报错

报错问题

1. 端口占用报错

解决办法

1
2
3
4
netstat -antp |grep 8443  # 8443的默认端口
ps -ef |grep 10000 # 10000是上面查出来的pid 查看一下这个pid的启动配置

kill -9 10000 #关闭运行程序

2. invalid Java version 不能启动服务

这个是 Java版本判断问题
vim /usr/bin/jenkins

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 加上1.8
check_java_version() {
printf '%s' "${JENKINS_OPTS}" | grep -q '\--enable-future-java' && return 0

java_version=$("${JENKINS_JAVA_CMD}" -version 2>&1 |
sed -n ';s/.* version "\([0-9]\{2,\}\|[0-9]\.[0-9]\)\..*".*/\1/p;')

if [ -z "${java_version}" ]; then
return 1
elif [ "${java_version}" != "1.8" ] && "${java_version}" != "17" ] && [ "${java_version}" != "11" ]; then
return 1
else
return 0
fi
}

3. Unrecognized VM option ‘MaxPermSize 运行参数

Starting Jenkins Unrecognized VM option 'MaxPermSize=512m'

/etc/systemd/system/jenkins.service.d/override.conf 服务运行配置 如果有MaxPermSize参数需要删掉

本文作者 : zhouinfo
原文链接 : http://blog.zhouinfo.site/2022/10/25/jenkins%E5%8D%87%E7%BA%A7%E5%90%8E%E6%8A%A5%E9%94%99%E5%9B%9E%E9%80%80%E6%97%A7%E7%89%88%E6%9C%AC/
版权声明 : 本博客所有文章除特别声明外,均采用 CC Apache License 2.0 许可协议。转载请注明出处!
留下足迹