当前位置: 首页 > news >正文

Jenkins升级

以现有生产环境jenkins打镜像为基础OS

镜像名称 JKS_OS_BAK_20240123

升级方式

本次升级采用并行双跑模式,整个升级过程不影响再有生产环境,二套Jenkins独立运行

原有环境  https://jks.qiangyun.com

升级之后 https://10.1.0.248:8080

升级路径

目前版本 2.289.3  升级至 2.426.2

升级版本一览

 

  • Upgrading to Jenkins 2.452.x
    • Upgrading to Jenkins 2.452.1
  • Upgrading to Jenkins 2.440.x
    • Upgrading to Jenkins 2.440.3
    • Upgrading to Jenkins 2.440.2
    • Upgrading to Jenkins 2.440.1
  • Upgrading to Jenkins 2.426.x
    • Upgrading to Jenkins 2.426.2
    • Upgrading to Jenkins 2.426.1
  • Upgrading to Jenkins 2.414.x
    • Upgrading to Jenkins 2.414.3
    • Upgrading to Jenkins 2.414.2
    • Upgrading to Jenkins 2.414.1
  • Upgrading to Jenkins 2.401.x
    • Upgrading to Jenkins 2.401.3
    • Upgrading to Jenkins 2.401.2
    • Upgrading to Jenkins 2.401.1
  • Upgrading to Jenkins 2.387.x
    • Upgrading to Jenkins 2.387.3
    • Upgrading to Jenkins 2.387.2
    • Upgrading to Jenkins 2.387.1
  • Upgrading to Jenkins 2.375.x
    • Upgrading to Jenkins 2.375.4
    • Upgrading to Jenkins 2.375.3
    • Upgrading to Jenkins 2.375.2
    • Upgrading to Jenkins 2.375.1
  • Upgrading to Jenkins 2.361.x
    • Upgrading to Jenkins 2.361.4
    • Upgrading to Jenkins 2.361.3
    • Upgrading to Jenkins 2.361.2
    • Upgrading to Jenkins 2.361.1
  • Upgrading to Jenkins 2.346.x
    • Upgrading to Jenkins 2.346.3
    • Upgrading to Jenkins 2.346.2
    • Upgrading to Jenkins 2.346.1
  • Upgrading to Jenkins 2.332.x
    • Upgrading to Jenkins 2.332.4
    • Upgrading to Jenkins 2.332.3
    • Upgrading to Jenkins 2.332.2
    • Upgrading to Jenkins 2.332.1
  • Upgrading to Jenkins 2.319.x
    • Upgrading to Jenkins 2.319.3
    • Upgrading to Jenkins 2.319.2
    • Upgrading to Jenkins 2.319.1
  • Upgrading to Jenkins 2.303.x
    • Upgrading to Jenkins 2.303.3
    • Upgrading to Jenkins 2.303.2
    • Upgrading to Jenkins 2.303.1

 

导入官方 repoistory

  1. 导入官方源

    [19:51:39] root@ALI-HZ-SYS-OPS-CICD-0-248:~ # wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
    --2024-01-23 19:52:09--  https://pkg.jenkins.io/redhat-stable/jenkins.repo
    正在解析主机 pkg.jenkins.io (pkg.jenkins.io)... 151.101.110.133, 2a04:4e42:8c::645
    正在连接 pkg.jenkins.io (pkg.jenkins.io)|151.101.110.133|:443... 已连接。
    错误: 无法验证 pkg.jenkins.io 的由 “/C=US/O=Let's Encrypt/CN=R3” 颁发的证书:颁发的证书已经过期。
    要以不安全的方式连接至 pkg.jenkins.io,使用“--no-check-certificate”。

     

  2. 解决报错方法,如下

    [19:53:38] root@ALI-HZ-SYS-OPS-CICD-0-248:~ # yum install ca-certificates

     

  3. 重新导入

    [19:53:52] root@ALI-HZ-SYS-OPS-CICD-0-248:~ # wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
    --2024-01-23 19:53:56--  https://pkg.jenkins.io/redhat-stable/jenkins.repo
    正在解析主机 pkg.jenkins.io (pkg.jenkins.io)... 151.101.110.133, 2a04:4e42:8c::645
    正在连接 pkg.jenkins.io (pkg.jenkins.io)|151.101.110.133|:443... 已连接。
    已发出 HTTP 请求,正在等待回应... 200 OK
    长度:85
    正在保存至: “/etc/yum.repos.d/jenkins.repo”100%[======================================================================================================================================================================>] 85          --.-K/s 用时 0s2024-01-23 19:53:58 (6.46 MB/s) - 已保存 “/etc/yum.repos.d/jenkins.repo” [85/85])

     

  4. 导入官方仓库密钥

    rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.keyrpm --import https://pkg.jenkins.io/redhat/jenkins.io.key

     

  5. 查看导入公钥,如下

    [20:21:05] root@ALI-HZ-SYS-OPS-CICD-0-248:/etc/yum.repos.d #  rpm -qa gpg-pubkey*
    gpg-pubkey-d88e42b4-52371eca
    gpg-pubkey-51312f3f-621fa7a9
    gpg-pubkey-621e9f35-58adea78
    gpg-pubkey-5072e1f5-58a70520
    gpg-pubkey-35dfa027-60ba0235
    gpg-pubkey-f4a80eb5-53a7ff4b
    gpg-pubkey-d50582e6-4a3feef6
    gpg-pubkey-6ba75a4e-64486ab3
    gpg-pubkey-ef5975ca-6421ce2b

     

  6. 查看指定的仓库的密钥详细信息

    [20:24:36] root@ALI-HZ-SYS-OPS-CICD-0-248:/etc/yum.repos.d # rpm -qi gpg-pubkey-ef5975ca-6421ce2b
    Name        : gpg-pubkey
    Version     : ef5975ca
    Release     : 6421ce2b
    Architecture: (none)
    Install Date: 2024年01月23日 星期二 20时21分01秒
    Group       : Public Keys
    Size        : 0
    License     : pubkey
    Signature   : (none)
    Source RPM  : (none)
    Build Date  : 2023年03月28日 星期二 01时11分07秒
    Build Host  : localhost
    Relocations : (not relocatable)
    Packager    : Jenkins Project <jenkinsci-board@googlegroups.com>
    Summary     : gpg(Jenkins Project <jenkinsci-board@googlegroups.com>)
    Description :
    -----BEGIN PGP PUBLIC KEY BLOCK-----
    Version: rpm-4.11.3 (NSS-3)

     

  7. 查看可用版本的jenkins

    <root@iZbp1fk3wym1rcd169fjw3Z ~># yum --showduplicates list jenkins

     

  8. 执行yum upgrade 更新一些基础包,排除jenkins

    yum upgrade --exclude=jenkins

     

升级步骤

保持服务正常运行,一切正常,具体操作过程如下

  1. 升级前为jenkins 仓库配置代理,加快下载速度

    <root@iZbp1fk3wym1rcd169fjw3Z ~># cat /etc/yum.repos.d/jenkins.repo 
    [jenkins]
    proxy=http://proxy.qiangyun.com:1087
    name=Jenkins-stable
    baseurl=http://pkg.jenkins.io/redhat-stable
    gpgcheck=1

     

  2. 升级到Jenkins 2.303.1

    yum install -y jenkins-2.303.1-1.1

     

  3. 检查登录、发布等操作(jenkins) http://10.1.0.248:8080
  4. 验证是否能重启jenkins服务

    systemctl restart jenkins

     

后续升级步骤如上

具体升级过程

jenkins-2.303.3-1.1

  • yum install -y jenkins-2.303.3-1.1

jenkins-2.319.1-1.1

  • yum install -y jenkins-2.319.1-1.1

 jenkins-2.319.3-1.1

  • yum install -y jenkins-2.319.3-1.1

升级至319.3时,启动服务会超时,如下

-- Unit jenkins.service has begun starting up.
1月 24 11:32:35 ALI-HZ-SYS-OPS-CICD-0-249 runuser[2308]: pam_unix(runuser:session): session opened for user nflow by (uid=0)
1月 24 11:37:35 ALI-HZ-SYS-OPS-CICD-0-249 systemd[1]: jenkins.service start operation timed out. Terminating.
1月 24 11:37:35 ALI-HZ-SYS-OPS-CICD-0-249 systemd[1]: Failed to start LSB: Jenkins Automation Server.
-- Subject: Unit jenkins.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit jenkins.service has failed.
--
-- The result is failed.
1月 24 11:37:35 ALI-HZ-SYS-OPS-CICD-0-249 systemd[1]: Unit jenkins.service entered failed state.
1月 24 11:37:35 ALI-HZ-SYS-OPS-CICD-0-249 systemd[1]: jenkins.service failed.
1月 24 11:48:36 ALI-HZ-SYS-OPS-CICD-0-249 runuser[2308]: pam_unix(runuser:session): session closed for user nflow
1月 24 11:48:36 ALI-HZ-SYS-OPS-CICD-0-249 jenkins[2295]: Starting Jenkins
1月 24 11:48:53 ALI-HZ-SYS-OPS-CICD-0-249 systemd[1]: Starting LSB: Jenkins Automation Server...
-- Subject: Unit jenkins.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit jenkins.service has begun starting up.
1月 24 11:48:53 ALI-HZ-SYS-OPS-CICD-0-249 runuser[4208]: pam_unix(runuser:session): session opened for user nflow by (uid=0)
1月 24 11:53:53 ALI-HZ-SYS-OPS-CICD-0-249 systemd[1]: jenkins.service start operation timed out. Terminating.
1月 24 11:53:53 ALI-HZ-SYS-OPS-CICD-0-249 systemd[1]: Failed to start LSB: Jenkins Automation Server.
-- Subject: Unit jenkins.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit jenkins.service has failed.

服务本身没有问题,目前没有查到是哪里的问题

jenkins-2.332.1-1-1

从此版本Jenkins对服务管理升级至systemctl管理

但是本次会失败,由于上次319失败,因为启动服务依赖于systemd

jenkins-2.361.1-1-1

升级此版本注意替换jdk,推荐17

1月 24 13:21:49 ALI-HZ-SYS-OPS-CICD-0-249 systemd[1]: Starting Jenkins Continuous Integration Server...
-- Subject: Unit jenkins.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit jenkins.service has begun starting up.
1月 24 13:21:49 ALI-HZ-SYS-OPS-CICD-0-249 jenkins[8282]: Jan 24, 2024 1:21:49 PM executable.Main verifyJavaVersion
1月 24 13:21:49 ALI-HZ-SYS-OPS-CICD-0-249 jenkins[8282]: SEVERE: Running with Java class version 52, which is older than the Minimum required version 55. See https://jenkins.io/redirect/java-support/
1月 24 13:21:49 ALI-HZ-SYS-OPS-CICD-0-249 jenkins[8282]: java.lang.UnsupportedClassVersionError: 52.0
1月 24 13:21:49 ALI-HZ-SYS-OPS-CICD-0-249 jenkins[8282]: at executable.Main.verifyJavaVersion(Main.java:145)
1月 24 13:21:49 ALI-HZ-SYS-OPS-CICD-0-249 jenkins[8282]: at executable.Main.main(Main.java:109)
1月 24 13:21:49 ALI-HZ-SYS-OPS-CICD-0-249 jenkins[8282]: Jenkins requires Java versions [17, 11] but you are running with Java 1.8 from /usr/local/jdk8u402-b06/jre
1月 24 13:21:49 ALI-HZ-SYS-OPS-CICD-0-249 jenkins[8282]: java.lang.UnsupportedClassVersionError: 52.0
1月 24 13:21:49 ALI-HZ-SYS-OPS-CICD-0-249 jenkins[8282]: at executable.Main.verifyJavaVersion(Main.java:145)
1月 24 13:21:49 ALI-HZ-SYS-OPS-CICD-0-249 jenkins[8282]: at executable.Main.main(Main.java:109)
1月 24 13:21:49 ALI-HZ-SYS-OPS-CICD-0-249 systemd[1]: Failed to start Jenkins Continuous Integration Server.
-- Subject: Unit jenkins.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel

 

http://www.rkmt.cn/news/98312.html

相关文章:

  • K8S-EFK日志收集实战指南
  • 7878678678
  • ansible部署nfs
  • K8s蓝绿发布实战:零停机部署秘籍
  • 【Qt】配置安卓创建环境
  • (20)回顾反射机制
  • Flutter + OpenHarmony 架构演进:从单体到模块化、微前端与动态能力的现代化应用体系
  • 数字电路模拟程序迭代及课堂测验总结 - 23207101
  • 直流微电网混合储能模型Simulink仿真探索
  • java-BlockingQueue、CountDownLatch讲解
  • 39、高级Shell脚本编程技巧与概念
  • 27、Unix 系统中的文档格式化与打印
  • # 深度解析:爬虫工艺获取淘宝商品详情并封装为API的全流程应用
  • 30、编写脚本与项目搭建入门指南
  • 31、Shell编程:从基础到高级应用
  • Python学习3
  • C 语言转义序列 | 标准空白字符特性与常用转义符用法
  • 基于SpringBoot特色农产品销售系统毕业设计项目源码
  • NCHU-数字电路模拟程序-23207332
  • 基于SpringBoot学生成绩管理系统毕业设计项目源码
  • 3分钟极速定位:Pinpoint零成本监控Nacos元数据异常全攻略
  • YashanDB数据库的缓存机制及性能提升策略探究
  • YashanDB数据库的缓存机制与访问加速技术
  • YashanDB数据库的集成与互操作性问题探讨
  • RAG - 高阶检索范式 - 基于表示 - ColBERT - 迟交互机制
  • 17、深入了解Swerve Web服务器
  • 18、Swerve Web Server:功能测试、性能评估与代码设计解析
  • 21、节点系统的详细设计与实现
  • 瑞雪覆村暖人心 义工行动护出行——赵官屯村三支队伍义工清扫积雪保平安
  • 22、服务器模块详细设计解析