毕业论文
您现在的位置: 版本控制 >> 版本控制发展 >> 正文 >> 正文

从Jenkins迁移到JenkinsX一

来源:版本控制 时间:2022/11/22

作者

VincentBehar

译者

无明

这篇文章将介绍dailymotion(一家总部位于巴黎的视频分享网站)从Jenkins迁移到JenkinsX的故事,包括他们遇到的问题以及他们如何解决它们。

背景

在dailymotion,我们信奉DevOps最佳实践,并且重度使用了Kubernetes。我们的部分产品(并非全部)已经部署在Kubernetes上。在迁移我们的广告技术平台时,为了赶时髦(作者你这么直白的吗?)我们希望完全采用“Kubernetes方式”或云原生!这意味着我们需要重新定义我们的整个CI/CD管道,并使用按需分配的动态环境来替代永久性的静态环境。我们的目标是为我们的开发人员提供最好的支持、缩短产品上市时间并降低运营成本。

我们对新CI/CD平台的初始要求是:

如果可能的话,尽量避免从头开始:我们的开发人员已经习惯使用Jenkins和声明性管道,目前这些东西都还好。

采用公有云基础设施——谷歌云平台和Kubernetes集群。

与gitops兼容——因为我们需要版本控制、评审和自动化。

CI/CD生态系统中有不解决方案,但只有一个符合我们的要求,也就是JenkinsX,它基于Jenkins和Kubernetes,原生支持预览环境和gitops。

JenkinsX:Kubernetes上的Jenkins

JenkinsX是一个高度集成化的CI/CD平台,基于Jenkins和Kubernetes实现,旨在解决微服务体系架构下的云原生应用的持续交付的问题,简化整个云原生应用的开发、运行和部署过程。

你猜的没错,JenkinsX只能在Kubernetes集群上运行。

JenkinsX的搭建过程非常简单,官方网站上已经提供了很好的文档。由于我们已经在使用GoogleKubernetesEngine(GKE),因此jx命令行工具可以自行创建所有的内容,包括Kubernetes集群。在几分钟内就可以获得一个完整的可运行系统真的让人印象深刻。

JenkinsX提供了很多快速入门和模板,不过我们想重用现有代码库中的Jenkins管道。所以,我们决定另辟蹊径,并对我们的声明性管道进行重构,让它们与JenkinsX兼容。

实际上,重构工作并不是只针对JenkinsX,而是为了能够使用Kubernetes插件(

转载请注明:http://www.0431gb208.com/sjszyzl/2554.html

  • 上一篇文章:
  • 下一篇文章: 没有了