Jenkins 是当今最风行的继续集成工具之一,据无关报告估算,超过 70% 的 CI 流水线都在应用 Jenkins,它还是很多技术团队第一个应用的自动化工具。但它也有一个显著弱点:难以达到企业级治理和扩大,这同时催生了很多问题。
浏览本篇文章,您能理解到最常见的两个 Jenkins 问题:Jenkinsteins(大量的我的项目和团队应用了大量臃肿集中的装置工具集,导致性能低下,以及依赖关系和治理的噩梦)和 Jenkins 孤岛,以及应答这两个问题的解决办法。
如需理解更多 Jenkins 企业版——CloudBees 的相干信息,请分割 CloudBees 受权合作伙伴——龙智。
继续集成和继续交付 (CI/CD) 之所以成为当今软件流水线的规范,是有起因的。在 CI/CD 之前,测试和交付过程是手动的。可重复性简直是不可能的,而公布则是件压力很大的事件,须要在最初时刻争先恐后地修复重大缺点。一个繁忙的团队当然做不出最好的作品,雪上加霜的是,软件品质往往不尽如人意。
Jenkins 在流水线自动化方面的广泛应用(寰球 70% 的开发人员都在应用它!)扭转了所有。软件组织依附 Jenkins 来反对统一的、可反复的、晚期和经常性的测试,这反过来又意味着更频繁的提交和更高质量的软件更快地进入市场。显然,开源的 Jenkins 是一个杰出的 CI/CD 解决方案,但它有一个显著弱点:为企业治理和扩大 Jenkins 是一场艰辛的战斗。
为了解决与治理、开销治理、插件治理、基础设施治理和团队动静相干的挑战,催生了两种常见(且令人厌恶)的场景:Jenkinsteins 和 Jenkins 孤岛。
“Jenkinsteins”——单体服务器
创立一个 Jenkins 单体服务器并让组织中的每个人都应用它,这就是 Jenkinstein 办法。尽管看起来很正当,但它会使您的服务器变得十分软弱,并有可能使业务增长停滞。让咱们看看 Jenkins 单体服务器在理论利用中的四个次要问题。
- 迟缓的服务器:当服务器过载时,会间接影响构建和测试工夫,从而影响您疾速翻新的能力。
- 单点故障:如果您惟一的 Jenkins 服务器呈现故障,整个软件组织的生产就会暂停,直到故障失去解决。
- 插件抵触:插件是 Jenkins 平凡的一部分,然而因为各个团队的不同要求,领有一个 Jenkins 单体服务器可能会产生插件抵触。
- 集体依赖:所有都取决于组织中“Jenkins 搭档”配置和保护软弱的设置。
当这些摩擦呈现时,许多团队抉择自行出击,这就产生了 Jenkins 孤岛。
“Jenkins 孤岛”——断开连接的控制器
通常,组织内的每个团队都有本人的 Jenkins 控制器。这的确避免了 Jenkinsstein 问题,但也带来了新的麻烦。所有这些独自的服务器,都营造出每个团队在只有本人的孤岛上生存的感觉。后果呢?
- 没有治理:让每个团队都依照本人的规定和实际工作是一场治理噩梦。简直不可能管制谁有权拜访什么,并且不会呈现最佳实际。
- 合规性挑战:没有适当的机制来确保团队始终如一地运行测试。例如,一些团队可能会将平安扫描内置到其流水线的每个局部中,而其余团队可能不会。您将永远无奈实现合规性。
- 不足合作:很难在不同且断开连接的 Jenkins 控制器之间切换工作。如果一个团队发现了一种更无效地做事的新办法,他们没有方法与其余孤立的团队共享这些信息。
- 隐性老本:工程师不应该节约他们贵重的工夫和资源来保护一系列 Jenkins 实例和配置。
请记住:没有人是一座孤岛,Jenkins 控制器也一样。
优化和扩大 Jenkins,实现更快、更牢靠的 DevOps
无论是 Jenkins 扩张、单体控制器、插件破绽、耗时的治理工作,还是一直收缩的基础设施老本,治理和扩大开源 Jenkins(更不用说发明一种文化,突破孤岛,每个人都在一个共享的愿景)都是一项艰巨的工作。为了实现这所有,您须要为所有运行 Jenkins 的开发团队提供共享、集中管理、受管控的体验——这正是 CloudBees CI 所提供的。
文章起源:https://www.cloudbees.com/blo…
如需理解更多 CloudBees CI 的相干信息,请分割 CloudBees 受权合作伙伴——龙智:
官网:www.shdsd.com
电话:400-775-5506
邮箱:marketing@shdsd.com