关于CI/CD在云原生中的讨论(笔记)

  1. CI/CD介绍

        ontinuous integration/持续部署continuous deployment(CI/CD)管道是每个 DevOps 计划的基础。 CI/CD 管道使开发和运营团队能够在整个软件开发生命周期中进行协作。

形成 CI/CD 管道的阶段是将不同的任务子集分组为 管道阶段。典型的管道阶段包括:
构建:开发人员编译应用程序代码。
测试:质量保证(QA)团队使用自动化测试工具和策略测试应用程序代码。
发布:开发团队将应用程序代码交付到代码库。
部署:DevOps 团队将应用程序代码分阶段投入生产。
安全性和合规性:QA 团队根据项目要求验证构建。这是组织部署容器扫描工具的阶段,这些工具Common Vulnerabilities and Exposures(CVE)根据常见漏洞和暴露检查容器镜像的质量。

2.CI/CD的好处

        更快的测试和发布周期:CI/CD管道自动化了软件构建、测试和部署过程,消除了手动干预和人为错误的可能性,大大加快了应用程序的发布周期。持续的集成、交付和部署使开发团队能够频繁提交代码更改,并自动构建、测试和部署应用程序,从而更快地将新功能和修复程序推向生产环境。

        提高质量和可靠性:通过自动化的测试和部署过程,CI/CD管道可以在代码集成和部署之前自动执行各种测试,如单元测试、集成测试和端到端测试。这有助于在早期阶段检测和修复代码缺陷,从而提高应用程序的质量和可靠性。此外,自动化部署过程还可以减少人工操作造成的人为错误和潜在的故障风险。

        提高团队协作和可见性:CI/CD管道提供了一个集中的平台,该平台依赖于打破开发人员、测试人员和运营之间的传统竖井,鼓励学科之间的协作,并比传统方法更快地向用户提供有效的软件。经过充分的准备,CI/CD管道使团队能够尽快交付有效的软件,并及时收到有关最新更改的反馈。

3. 可以在CI/CD应用到云原生应用中使用的工具

        Gir:Git通常用于CI/CD管道中的源代码管理,包括代码提交、分支管理和版本控制。

        Jenkins:Jenkins是一个开源的自动化构建和持续集成工具,用于在指定的环境中构建、测试和部署应用程序。

        Kubernetes:Kubernetes是一个广泛使用的容器编排平台,可以与CI/CD工具集成,通过定义声明性配置文件来动态管理和部署基于容器的应用程序。

        Helm:Helm是Kubernetes的一个包管理器,它与CI/CD工具集成,在部署应用程序时自动化Helm Chart的安装和配置。

        Istio:Istio可以与CI/CD工具集成,在应用程序部署过程中自动化服务网格的配置和管理,确保微服务在云原生应用程序中的顺利部署和运行。

4.应用CI/CD的实例

        Netflix基于亚马逊云计算服务(AWS)及其自己的内容分发网络Open Connect运营,而Netflix则以亚马逊云计算服务(AWS)和自己的内容发布网络Open Connect为基础运营。与此同时,Netflix是一家全球流媒体娱乐服务公司,以其DevOps文化和对CI/CD实践的高度重视而闻名,这也使得他们2023年第一季度的收入超过80亿美元。

备注: 算是一个学习笔记,记录一下,如果有错误,还请指出。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值