2021年五大CI/CD工具值得期待
2021年五大CI/CD工具值得期待
自动化和持续集成/持续开发(CI/CD)可以对开发人员和IT运营的工作方式产生巨大的积极影响。例如,我从GitLab 2020年全球开发secops调查CI/CD工具是如何通过消除人工干预任务(如测试、依赖项检查、合并代码和从一个环境推到另一个环境)来提高开发和运维的效率的。
当然,为了最大限度地利用您的CI/CDDevOps管道,您需要正确的文化、实践和工具。对于CI/CD工具的所有选项,初学者可能很难知道从哪里开始。为了帮助您快速上手,我们列出了目前最常用的5个CI/CD工具。对于每个工具,我们将为您提供关于它是什么以及它的功能和好处的速成课程。
#1: GitHub动作
是什么?
GitHub已经是代码存储库领域的巨头,GitHub Actions使团队能够在GitHub平台上本地实现CI/CD工作流。
GitHub Actions是一个事件驱动的自动化工具。这意味着对于任何GitHub事件——例如提交、问题创建或拉请求——您都可以自动触发工作流。例如,可以将拉请求配置为自动运行一套测试。
GitHub Actions的价值很简单:以前需要多个集成和服务的CI/CD进程可以直接在你的GitHub存储库中运行。这意味着开发管道中的复杂性和摩擦更少。
特点和优点:
直接从Github构建、测试和部署
自动工作流可以由任何GitHub事件(推送、拉取、问题创建等)发起。
实时日志
内置秘密存储
用于创建自定义动作的大型库
支持大多数主流平台和语言
网站:
https://github.com/features/actions
注册免费或付费级别:
# 2: GitLab
是什么?
GitLab是一个开源的(您可以查看GitLab上的源代码)基于web的服务,将自己标榜为“一个完整的DevOps平台”。像GitHub一样,GitLab的主要功能之一是充当源代码存储库的能力。然而,GitLab不仅仅是一个代码存储库和许多DevOps CI/CD特性中的层,以帮助团队自动化他们的管道。GitLab背后的想法是将源代码管理和CI/CD工具的特性放在一个屋顶下构建、测试和部署代码。
GitLab的一个缺点是,并不是所有的功能都可以在所有层中使用,而且黄金/终极层可能会非常昂贵。
特点和优点:
源代码管理
构建/部署/测试功能
基于云的SaaS(软件即服务)和内部部署产品
时间跟踪
分析
静态应用程序安全性测试
网站:
免费试用链接:
https://about.gitlab.com/free-trial/
# 3: CircleCI
是什么?
CircleCI是一个基于云的CI/CD工具,是Jenkins最流行的现代替代品之一。它以速度、性能和可伸缩性而闻名。许多大公司——包括Facebook和Spotify——使用CircleCI作为他们CI/CD工作流程的一部分。
CircleCI与BitBucket和GitHub集成,使开发团队能够在每次提交后测试他们的代码,并为大规模DevOps管道创建足够复杂的工作流。CircleCI也非常强调速度。例如,该平台支持并行使用多个执行器(运行自动化测试的虚拟机或容器)来提高吞吐量。
尽管CircleCI是一个企业级工具,但它也很容易上手。一个简单的基于yaml的配置和频繁更新的HTML5 GUI(图形用户界面)使得开始使用CircleCI很容易。
特点和优点:
简单的初始配置
与GitHub和BitBucket集成
可伸缩的云平台
部署到各种各样的环境,包括AWS、Heroku、NPM和JFrog Artifactory
SSH可以在构建环境中进行调试吗
对速度进行了优化,可以在付费层上运行80+并行执行器
网站:
免费试用链接:
#4:《逃离德黑兰》CD
是什么?
在过去的几年中,Argo CD已经成为Kubernetes (k8)最流行的“GitOps”工具之一。它如此受欢迎的部分原因是它是云原生和开源的最爱。Argo是在Apache 2.0许可下发布的,是一个CNCF(云原生计算基金会)孵化项目,拥有95%的核心基础设施计划最佳实践得分。
Argo使用基于git的存储库(如GitHub)作为基于kubernetes的应用程序所需状态的真实来源。然后,它作为Kubernetes控制器监控应用程序,可以主动识别和重新同步偏离预期状态的集群。
特点和优点:
自动化K8s部署
支持多种配置管理模板(YAML、Helm等)
广泛的单点登录支持(Oauth2, LDAP, GitHub, SAML等)
回滚到受支持的存储库中的任何配置
配置漂移检测
Webhook集成
支持蓝色/绿色等复杂部署
监控应用程序的运行状况状态报告
网站:
从《逃离德黑兰》开始:
https://argoproj.github.io/argo-cd/getting_started/
#5: JFrog管线
是什么?
随着DevOps CI/CD工作流的扩展,它们可能变得难以管理和维护。JFrog Pipelines是下一代CI/CD管道自动化和工作流编排工具,提供多个管道的集中管理。它允许您跨多个环境和CI/CD工具(例如GitLab, Jenkins等)管理管道。此外,与更广泛的JFrog平台的本地集成允许组件分析、安全性和遵从性扫描以及策略执行。
特点和优点:
带有实时指标的交互式仪表板
基于云的SaaS(软件即服务)和内部部署产品
不需要脚本,本机步骤简化了复杂管道的创建
具有简单YAML语法的管道即代码
细粒度的安全
可伸缩——可以在一个HA(高可用性)环境中支持数千个用户
可扩展——支持多种操作系统和技术栈,并与最流行的DevOps CI/CD工具集成
与JFrog平台的本地集成
网站:
免费试用链接:
//www.si-fil.com/artifactory/start-free/
下一步:开始使用您的第一个CI/CD管道
我们列出的这些工具对于研究开发运维管道需要哪些CI/CD工具是很好的起点。如果您已经准备好开始您的第一个CI/CD管道演示项目,欢迎查看我们的管道分步教程.
