DevOps教程:DevOps 生命周期
【注】本文译自:
DevOps定义了运营与开发之间的敏捷关系 。 从产品的开始到最终阶段 , 开发团队和运营工程师共同实践这一过程 。
文章插图
不了解 DevOps 生命周期阶段的话 , 就不能完整地学习 DevOps 。 DevOps 生命周期包括以下七个阶段:
1) 持续开发 此阶段涉及软件的计划和编码 。 在规划阶段确定项目的远景 。 开发人员开始为应用开发代码 。 计划不需要任何 DevOps 工具 , 但是有几种工具可以维护代码 。
2) 持续集成【DevOps教程:DevOps 生命周期】 此阶段是整个DevOps生命周期的核心 。 这是一种软件开发实践 , 开发人员需要更加频繁地对源代码进行更改 。 可能是每天或每周提交 , 然后会构建每个提交 , 如果存在问题则可以尽早发现问题 。 构建代码不仅涉及编译 , 而且还包括单元测试、集成测试、代码审查和打包 。
支持新功能的代码与现有代码不断集成在一起 。 因此 , 软件在持续开发 。 更新后的代码需要与系统持续续流畅地集成 , 从而将变更反映给最终用户 。
文章插图
Jenkins 是这个阶段使用的流行工具 。 每当 Git 存储库中发生变更时 , Jenkins都会获取更新的代码并准备该代码的构建 , 生成 war 或 jar 形式的可执行文件 。 然后将此构建转发到测试服务器或生产服务器 。
3) 持续测试 在此阶段 , 开发好的软件被持续测试 , 以发现错误 。 持续测试中可以使用自动化测试工具 , 如 TestNG、JUnit、Selenium 等 。这些工具使 QA 可以完全并行地测试多个代码库 , 以确保功能上没有缺陷 。 这个阶段可以使用 Docker 容器模拟测试环境 。
文章插图
Selenium 进行自动化测试 , TestNG生成报告 。 Jenkins 这个持续集成工具的帮助下 , 整个测试阶段可以自动化 。
自动化测试节省了执行测试所需的时间和精力 , 而不是手动执行 。 除此之外 , 报告生成是一大优势 。 评估测试套件中失败的测试用例这样的任务 , 变得更加简单 。 同样 , 我们可以安排在预定的时间执行测试用例 。 测试后的代码将与现存代码持续集成 。
4) 持续监控 监视阶段涉及整个DevOps流程的所有操作因素 , 在此阶段将记录并仔细处理有关软件使用的重要信息 , 以发现趋势并确定问题域 。 通常 , 监视被集成在软件应用的操作能力之内 。
监控数据可能是文档文件的形式 , 也可能在持续使用时生成关于应用参数的大规模数据 。 此阶段解决了系统错误 , 例如服务器无法访问、内存不足等 。它维护服务的安全性和可用性 。
5) 持续反馈 通过分析软件操作的结果 , 持续改进应用开发 。 由此 , 要设置一个当前运营的软件应用和下一版本开发之间的关键阶段 , 来接受持续反馈 。
在 DevOps 中 , 连续性是至关重要的因素 , 因为它消除了开发软件所需要的不必要的步骤 , 使用它来发现问题然后生成一个更好的版本 。 这可能会降低应用程序的效率 , 并减少感兴趣的客户数量 。
6) 持续部署 在此阶段 , 将代码部署到生产服务器 。 同样 , 必须确保在所有服务器上正确使用该代码 。
文章插图
新代码不断部署 , 配置管理工具在频繁且快速地执行任务中起着至关重要的作用 。 以下是此阶段使用的一些流行工具 , 例如 Chef、Puppet、Ansible 和 SaltStack 。
容器化工具在部署阶段也起着至关重要的作用 。 Vagrant 和 Docker 是用于此目的的流行工具 。 这些工具有助于在开发、阶段、测试和生产环境中实现一致性 。 它们还有助于柔和地伸缩实例 。
推荐阅读
- iOS 14系统可以支持自主更换图标了,教程赶紧收藏了
- 中国工程院院士吴志强:城市“生命体”正不断智化 智慧治理面临五大技术突破
- 迈向协和新百年 | 北京协和医院与华为战略合作签约,让创新服务于人民生命健康
- 来,拿去!你们想要的手机广告屏蔽教程
- 人工智能和机器学习如何改变DevOps
- 国内首个全生命周期数字化智慧型海上风电场并网数字化驱动新能源
- 人工智能|万物|《机器人与人工智能教程》:基础教育如何教授人工智能
- 从零到进阶架构,覆盖全网所有技术点3283页笔记、pdf教程
- 操作|微信两根毛表情怎么打出来?左右小辫子符号苹果安卓手机教程介绍
- web 安全之 Spring Security 入门教程