前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何设置可靠的DevOps生命周期?

如何设置可靠的DevOps生命周期?

作者头像
DevOps云学堂
发布2022-10-04 15:03:46
2670
发布2022-10-04 15:03:46
举报
文章被收录于专栏:DevOps持续集成

了解DevOps生命周期的不同阶段以及使用哪些工具 原文链接:https://betterprogramming.pub/how-to-set-up-a-solid-devops-lifecycle-e3bd1456201

DevOps是将IT开发和运营结合在一起的一组实践。它主要是为了减少提交变更和生产变更之间的时间。这些实践促进了开发人员和运营工程师之间的协作,因此可以实现连续的软件交付,而解决的挑战不那么复杂,并且可以更快地解决所出现的问题。

DevOps生命周期可以分为多个阶段:

1. 开发阶段

Plan 计划

计划阶段包括在开始实际编码之前发生的所有活动。通常,软件公司会根据其产品愿景和客户反馈来制定产品路线图。路线图可以分为史诗,功能和用户故事。用户案例说明了功能,涉众以及预期的输出。DevOps团队通常会记录产品路线图,并使用软件工具为每个用户故事设置重要性和预计的实施时间。

流行的代码计划工具:

  • Jira
  • Azure DevOps
  • Asana

Code 代码

对于编码,可以使用多种不同的编码语言和IDE。IDE代表集成开发环境,通常包括源代码编辑器,构建自动化工具和调试器。一些最受欢迎的编码语言包括Python,Java和JavaScript。

为了维护代码,通常使用版本控制工具,例如Git,GitHub和Bitbucket。这些工具还被广泛用于促进开发和运营团队之间的沟通,对于确保DevOps团队内部的沟通至关重要。

流行的IDE:

  • PyCharm
  • Visual Studio
  • Eclipse

Build 构建

构建代码包括生成可执行文件所需的所有步骤。这些过程中最重要的过程之一就是编译代码,这就是将源代码转换为机器代码。通常是构建代码一部分的其他过程是执行测试(例如,单元测试,集成测试等),打包,运行运行状况检查以及生成报告。

流行的构建工具:

  • Ant
  • Maven
  • Gradle

Test 测试

DevOps团队构建代码后,通常会将代码部署到暂存环境中。在此执行一组手动和自动测试。可以使用Selenium,TestNG或JUnit之类的工具来完成自动测试,而Docker容器通常用于模拟测试环境。Jenkins是一个持续集成工具,可以使整个测试过程自动化。

流行的测试自动化工具:

  • Selenium
  • TestNG
  • JUnit

2. 部署阶段

Release 发布

发布是DevOps生命周期中准备部署代码的阶段。至此,代码已经通过了一系列手动和自动测试,并且团队应该确信在部署到生产环境时不会出现任何问题。

根据使用的工具和设置的原则,一些组织在发布阶段添加了手动批准过程。这样做是为了仅允许组织内的某些人员授权发布到生产中。

Deploy 部署

部署是将变更从一种环境推向另一种环境的过程。通常,这是在将产品推入生产时使用的短语。部署构建后,就可以在实时生产环境中查看更改。

  • Jenkins
  • Spinnaker
  • ArgoCD

3. 运营阶段

Operate 运维

将代码部署到生产环境后,确保一切按预期运行非常重要。此外,运营团队通常会进行技术和基础架构管理,并与客户进行互动,以确保产品能够满足他们的需求。在进一步开发产品时,客户洞察力也至关重要,并且在计划阶段应将其考虑在内。

Monitor 监控

在监控阶段(这是DevOps生命周期的最后阶段),DevOps团队将监控解决方案。这包括收集有关客户行为,性能,错误等的数据。分析数据以获得洞察力,然后将其用于支持决策。

当DevOps团队随后重新开始DevOps生命周期时,在运营阶段收集的所有信息和见解至关重要。对于DevOps团队,通常没有起点或终点,而是产品的不断发展。

  • Prometheus
  • Zabbix

4. CI/CD

CI / CD包括持续集成,持续交付或持续部署。

持续集成是提交,构建和测试代码的过程。它是DevOps生命周期的核心。鼓励开发人员频繁提交代码,然后构建每次提交以允许及早发现问题。Jenkins是最常用的持续集成工具之一。

持续交付是持续集成的扩展。除了提交,构建和测试代码外,它还包括将代码更改部署到测试和/或生产环境。重要的是要注意,部署到生产环境是手动阶段,其中其他大多数阶段都是自动化的。

持续部署比持续交付要走的更远。对于连续部署,到生产的部署也将自动进行。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-08-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DevOps云学堂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 开发阶段
    • Plan 计划
      • Code 代码
        • Build 构建
          • Test 测试
          • 2. 部署阶段
            • Release 发布
              • Deploy 部署
              • 3. 运营阶段
                • Operate 运维
                  • Monitor 监控
                  • 4. CI/CD
                  相关产品与服务
                  持续部署
                  CODING 持续部署(CODING Continuous Deployment,CODING-CD)用以管理软件在经过构建之后的发布和部署交付过程,可以无缝对接上游 Git 仓库、制品仓库实现全自动化部署,同时支持 Webhook 等外部对接能力,方便集成各种开发、运维工具。在配以合适的技术架构、运维工具的基础上,可以方便地实现蓝绿发布、灰度发布(金丝雀发布)、滚动发布、快速回滚等功能。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档