五个举措:现代化Jenkins 和终结“Jenkinsteins”

摘要:Jenkins和CloudBees首席技术官川口耕介(Kohsuke Kawaguchi)上月在尼斯的Jenkins World上发表了演讲,谈到了现代化这款流行的CI/CD工具的五个正在进行的项目。川口耕介想要解决随着老化出现的痛点,他倡议围绕Jenkins Evergreen、Jenkins Pipeline (Blue Ocean)、Jenkins Configuration-as-Code、Jenkins X和云原生Jenkins这五个项目着手解决。他们每一个都处于不同的发展阶段,而且彼此间保持着独立。

Jenkins和CloudBees首席技术官川口耕介(Kohsuke Kawaguchi)上月在尼斯的Jenkins World上发表了演讲,谈到了现代化这款流行的CI/CD工具的五个正在进行的项目。川口耕介想要解决随着老化出现的痛点,今年早些时候在一篇文章中讨论到,特别要注意所谓的“Jenkinsteins”出现了:大量的项目和团队使用了大量臃肿集中的安装工具,导致性能低下,以及依赖关系和管理的噩梦。他倡议围绕Jenkins Evergreen、Jenkins Pipeline (Blue Ocean)、Jenkins Configuration-as-Code、Jenkins X和云原生Jenkins这五个项目着手解决。他们每一个都处于不同的发展阶段,而且彼此间保持着独立。

Jenkins Evergreen的目标是更快的开箱即用的体验,它提供预置模版,极大地降低了管理和配置的工作量。此外, Blue Ocean(目前已得到广泛使用的一个插件,专注于使流水线更清晰可视化)将成为默认UI(具体的时间尚未公布),那么每次需要修改时就不必再切换到经典UI了。川口耕介称,Jenkins Evergreen还将提供自我升级功能,对用户来说基本上是透明的。Evergreen目前处于测试阶段,还不推荐用于生产。

川口耕介告诉InfoQ,Evergreen最终将能够持续交付Jenkins本身。它将支持运行post bootstrap自助测试和诊断,将信息发送回相应的团队,以监控错误和趋势。还将内建自动回滚,以防万一升级失败。当被问及用户是否能够添加自己的post bootstrap诊断时,川口耕介说,做这个项目的团队应该考虑这种可能性。

Jenkins Configuration as Code(Jenkins配置即代码,也称为JCasC)旨在支持以YAML格式对Jenkins的设置(具有合理的缺省值)进行编码,以便能够完全自动化对交付系统的安装和更新。然后,团队可以像处理任何其他代码提交和拉取请求一样处理对Jenkins配置的更改,并在出现问题时回滚。最后,删除对Jenkins UI的依赖可以加速其设置和管理,减少出错的可能性,提高可重复性。JCasC插件的1.0版本于9月初发布,已经可以投入生产使用。

Jenkins X 是一个完全独立于Jenkins的解决方案(尽管它们在幕后共享相同的流水线引擎),Jenkins在今年早些时候引入了这个解决方案。它为基于 GitOps方式的云本地(基于Docker和Kubernetes)应用程序交付提供了很有独道见解的视图。它的优点之一是通过使用常见的第三方工具(Helm 图表、 Skaffold,和 Prow的1.3版本)以及快速入门功能,使新用户可以快速上手特定栈的通用流水线自动化。 jx 命令行工具进一步支持管理任务的自动化和流水线及Kubernetes集群和环境的设置。Jenkins X已经可以用于生产了。

当被问及创建像Jenkins X这样的独立解决方案是否会让人感到困惑或者增加采用的阻力时,川口耕介告诉InfoQ,Jenkins X与Jenkins“有着相同的DNA”,只是侧重点不同而已。Jenkins X针对特定的用例和工作流,减少了UI界面。他还认为,随着人们的接受程度不断提高,Jenkins X将在某个时候与经典Jenkins 捆绑在一起。川口更喜欢把生态系统看作一个整体:

Jenkins正在变得越来越大,不仅仅是一个web应用程序和一堆插件。它是一个自动化的平台。真正让Jenkins成为Jenkins的是这种生态系统的力量,许多人在此基础上构建和试验,并且走的是不同的方向。如果你关注Jenkins X, 会非常明显地看到其Jenkins DNA。

最后,将Jenkins现代化,使其在Kubernetes中作为一个完整的云本地应用程序运行,从而受益于更高的可用性和性能,这是云本地特殊兴趣组( Cloud Native special interest group)的目标。为了摆脱传统的客户机/服务器设计,这个团队将对Jenkins架构进行增量改进。例如,支持Jenkins数据的可插拔外部存储(当前保存在服务器的文件系统中),并向无状态Jenkins服务发展。目前还没有完成这一倡议或其任何部分的时间表。
我们非常渴望从InfoQ读者这里得到反馈。在与Jenkins一起成长的过程中,你是否遇到过什么痛点?你认为正在进行的计划会消除这些痛点吗?如果有什么意见建议,欢迎在下面评论。

查看英文原文:
https://www.infoq.com/news/2018/11/jenkins-world-initiatives

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
[root@jenkins JDk17_rpm]# systemctl status jenkinsjenkins.service - Jenkins Continuous Integration Server Loaded: loaded (/usr/lib/systemd/system/jenkins.service; enabled; vendor preset: disabled) Active: activating (start) since Tue 2023-07-11 10:24:54 EDT; 28s ago Main PID: 2806 (java) CGroup: /system.slice/jenkins.service └─2806 /usr/bin/java -Djava.awt.headless=true -jar /usr/share/java/jenkins.war --webroot=%C/jenkins/war --httpPort=8080 Jul 11 10:25:22 jenkins jenkins[2806]: at winstone.Launcher.main(Launcher.java:492) Jul 11 10:25:22 jenkins jenkins[2806]: at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) Jul 11 10:25:22 jenkins jenkins[2806]: at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorI...ava:77) Jul 11 10:25:22 jenkins jenkins[2806]: at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodA...ava:43) Jul 11 10:25:22 jenkins jenkins[2806]: at java.base/java.lang.reflect.Method.invoke(Method.java:568) Jul 11 10:25:22 jenkins jenkins[2806]: at executable.Main.main(Main.java:347) Jul 11 10:25:22 jenkins jenkins[2806]: 2023-07-11 14:25:22.778+0000 [id=1] INFO o.e.j.s.handler.ContextHandler#d...ns/war} Jul 11 10:25:22 jenkins jenkins[2806]: 2023-07-11 14:25:22.802+0000 [id=1] INFO o.e.j.server.AbstractConnector#d...0:8080} Jul 11 10:25:22 jenkins jenkins[2806]: 2023-07-11 14:25:22.816+0000 [id=1] INFO org.eclipse.jetty.server.Server#...27942ms Jul 11 10:25:22 jenkins jenkins[2806]: 2023-07-11 14:25:22.817+0000 [id=24] INFO winstone.Logger#logInternal: Wi...isabled Hint: Some lines were ellipsized, use -l to show in full. [root@jenkins JDk17_rpm]# 这是jenkins的状态,怎么解决??
07-12

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值