标签:集成 CI Kubernetes 代码 持续 CD 交付
软件开发是需要快速高质量的交付给客户,微服务也一样。如何将微服务快速高质量的交付到线上环境,也是微服务重点解决的问题。
实践证明持续集成(CI:Continuous Integration), 持续交付(CD:Continuous Delivery)和 持续部署(Continuous Delivery, CD):是可以解决这种问题的最佳实践。
CI 持续集成:
当开发人员将代码提交到版本控制系统后(如git),后续的构建,单元测试后续各个环节都尽可能的自动化,而持续集成(CI)就可以帮助开发人员更加频繁地将代码更改合并到共享分支或“主干”中。一旦开发人员对应用所做的更改被合并,系统就会通过自动构建应用并运行不同级别的自动化测试(通常是单元测试和集成测试)来验证这些更改,确保这些更改没有对应用造成破坏。这意味着测试内容涵盖了从类和函数到构成整个应用的不同模块。如果自动化测试发现新代码和现有代码之间存在冲突,CI 可以更加轻松地快速修复这些错误。
持续集成有很多开源的软件,如常用的Jenkins,也有一些成熟的云服务,比如Travis CI,circleci。
CD 持续交付:
完成 CI 中构建及单元测试和集成测试的自动化流程后,持续交付可自动将已验证的代码依次发布到各个存储库(测试环境->预发布环境->生产环境)。为了实现高效的持续交付流程,务必要确保 CI 已内置于开发管道。持续交付的目标是拥有一个可随时部署到生产环境的代码库。
CD 持续部署:
将最终产品发布到生成环境、给用户使用。
CI/CD流水线
对于支持CI/CD相关工具集成起来,再配合企业的软件治理流程所组成的软件交付链路就称为CI/CD流水线。
k8s的好处:
- 简化应用部署
- 提高硬件资源利用率
- 健康检查和自修复
- 自动扩容缩容
- 服务发现和负载均衡
标签:集成,CI,Kubernetes,代码,持续,CD,交付 来源: https://www.cnblogs.com/songgj/p/14397633.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。