最常见的两个Jenkins问题,以及解决方法

Jenkins是当今最流行的持续集成工具之一,据有关报告估算,超过70%的CI流水线都在使用Jenkins,它还是很多技术团队第一个使用的自动化工具。但它也有一个明显弱点:难以达到企业级管理和扩展,这同时催生了很多问题。

阅读本篇文章,您能了解到最常见的两个Jenkins问题:Jenkinsteins(大量的项目和团队使用了大量臃肿集中的安装工具集,导致性能低下,以及依赖关系和管理的噩梦)和Jenkins孤岛,以及应对这两个问题的解决方法。

如需了解更多Jenkins企业版——CloudBees的相关信息,请联系CloudBees授权合作伙伴——龙智。

最常见的两个Jenkins问题,以及解决方法_第1张图片

持续集成和持续交付 (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
邮箱:[email protected]

你可能感兴趣的:(ci)