写点什么

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

  • 2018-12-06
  • 本文字数:1858 字

    阅读完需:约 6 分钟

五个举措:现代化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


2018-12-06 17:542474

评论 1 条评论

发布
暂无评论
发现更多内容

Redis Cluster 数据分片

月明风清

redis redis cluster 数据切片

运维进阶训练营 -W03H

b1a2e1u1u

运维

玩转MySQL表之间的各种连接查询

闫同学

MySQL 数据库 11月月更

汽车产业“芯事”何解?

易观分析

汽车芯片

Zebec Chain有望成为公链赛道新兴生力军,地平线计划持续进击

西柚子

Vue基础学习(五)

Studying_swz

Vue 11月月更

Python进阶(二十六)多线程实现同步的四种方式

No Silver Bullet

Python 多线程 11月月更

Python进阶(二十九)Python时间&日期&时间戳处理

No Silver Bullet

Python 日期处理 11月月更

JVM 引用数据类型分析

Andy

设计模式之美-面向对象对比面向过程有哪些优势?面向过程过时了吗?

GalaxyCreater

设计模式

CSS学习笔记(六)

lxmoe

CSS 前端 学习笔记 11月月更

【LeetCode】分割数组Java题解

Albert

算法 LeetCode 11月月更

Java实现List中集合的元素进行排序

共饮一杯无

Java List 11月月更

opensd开源啦 !这套自动化部署OpenStack工具你值得拥有

openEuler

开源 操作系统 openEuler OpenStack

涨姿势了,这 4 个场景可用 CSS 完全取代 JS ~

掘金安东尼

前端 11月月更

MySQL事务底层原理和MVCC机制

闫同学

MySQL 数据库 MVCC 11月月更

玩转子网划分和超网汇聚

闫同学

网络 子网划分 11月月更 超网汇聚

湖仓一体电商项目(七):业务需求和分层设计及流程图

Lansonli

湖仓一体电商项目 11月月更

聚焦银行APP用户体验,易观千帆GX指数即将独家首发

易观分析

易观

部署和体验Helm(2.16.1版本)

程序员欣宸

Kubernetes Helm 11月月更

Vue基础学习(四)

Studying_swz

Vue 11月月更

定了,2022双11 技术进化开启新未来

阿里技术

双11

计算机网络:随机访问介质访问控制之令牌传递协议

timerring

令牌桶 11月月更

SAP UI5 数据绑定中的工厂函数

汪子熙

SAP Fiori SAP UI5 ui5 11月月更

Java Web(五)Web

浅辄

tomcat javaWeb 11月月更

湖仓一体电商项目(六):大屏可视化工具腾讯云图

Lansonli

湖仓一体电商项目 11月月更

探知数字化研发1-前言篇

薛飞

数字化 软件研发

麒麟信安携手 openEuler 支撑国家电网首批数字换流站试点项目安全高效运行

openEuler

Python进阶(二十五)Python读写文件

No Silver Bullet

Python 文件读写 11月月更

就这一次!带你彻底搞清MySQL行级锁的加锁规则

Java永远的神

MySQL 数据库 索引 Java 面试题

湖仓一体电商项目(八):业务实现之编写写入ODS层业务代码

Lansonli

湖仓一体电商项目 11月月更

五个举措:现代化Jenkins 和终结“Jenkinsteins”_数据库_Manuel Pais_InfoQ精选文章