软件测试我的收藏自动化测试

整理了一份史上最全的DevOps 工具链

2019-07-24  本文已影响17人  爱学技术的小仙女酱

    在列出DevOps 工具链之前,介绍一下什么是DevOps,虽然DevOps这个概念现在还没有标准的定义,但我们可以追溯一下其过去九年的历史发展过程(从2009年~2017年),列出几个相对明确又有所不同不同的定义,从而能够比较全面了解DevOps的内涵。

测试运维交流学习群:243771258

【2009】 DevOps是一组过程、方法与系统的统称,用于促进开发、技术运营和QA部门之间的沟通、协作与整合

【2011】快速响应业务和客户的需求,通过行为科学改善IT各部门之间的沟通, 以加快IT组织交付满足快速生产软件产品和服务的目

【2015】DevOps强调沟通、协作、集成、自动化和度量,以帮助组织快速开发软件产品,并提高操作性能和质量保证;强调自动化软件交付和基础设施变更的过程,以建立一种文化和环境,通过构建、测试和发布软件等方法,可以快速、频繁地、更可靠地发布软件

【2016】 DevOps的目标是建立流水线式的准时制(JIT)的业务流程,以获得最大化业务成果,例如增加销售和利润率,提高业务速度、减少运营成本。

【2017】一个软件工程实践,旨在统一软件开发(Dev)和软件操作(Ops),与业务目标紧密结合,在软件构建、集成、测试、发布到部署和基础设施管理中大力提倡自动化和监控。DevOps的目标是缩短开发周期,增加部署频率,更可靠的发布。

测试运维交流学习群:243771258

图上体现DevOps 流水线的速度(如测试20s左右)

    简单地说,DevOps是敏捷研发中持续构建(Continuous Build,CB)、持续集成(Continuous Integration,CI)、持续交付(Continuous Delivery,CD)的自然延伸,从研发周期向右扩展到部署、运维,不仅打通研发的“需求、开发与测试”各个环节,还打通“研发”与“运维”。DevOps 适合“软件即服务(SaaS)”或“平台即服务(PaaS)”这样的应用领域,其显著的特征就是:

*打通用户、PMO、需求、设计、开发(Dev)、测试、运维(Ops)等各上下游部门或不同角色

*打通业务、架构、代码、测试、部署、监控、安全、性能等各领域工具链。

下面我们就展开DevOps的工具链:

测试运维交流学习群:243771258

  上图持续集成的基本工具链 [1]

测试运维交流学习群:243771258

上图持续部署基本工具链 [1]

测试运维交流学习群:243771258

上图自助式DevOps [1]

    上面相对比较简单地展示了DevOps基本工具链的主要工具,相对全的工具,需要覆盖大概十四类工具:

    编码版本控制:维护和控制源代码库中的变更

    协作开发

    构建:版本控制、代码合并、构建状态

    持续集成

    测试:自动化测试及测试报告

    打包:二进制仓库、Docker镜像仓库

    部署工具

    容器:容器是轻量级的虚拟化组件,它以隔离的方式运行应用负载。它们运行自己的进程、文件系统和网络栈,这些资源都是由运行在硬件上的操作系统所虚拟化出来的

    发布:变更管理、自动发布

    编排:当考虑微服务、面向服务的架构、融合式基础设施、虚拟化和资源准备时,计算系统之间的协作和集成就称为编排。通过利用已定义的自动化工作流,编排保证了业务需求是和你的基础设施资源相匹配的

    配置管理:基础设施配置和管理,维护硬件和软件最新的、细节的记录-包括版本、需求、网络地址、设计和运维信息

    监视:性能监视、用户行为反馈

    警告&分析工具

    维护工具

更完整的结构,如图5所示。

测试运维交流学习群:243771258

图5 全开源DevOps平台 [1]

经过一个月的不断收集和完善,形成下列目前最全的DevOps工具链:

测试运维交流学习群:243771258 测试运维交流学习群:243771258

原创: 朱少民

朋友们学习交流可以加我微信:xiang520and 或者QQ群:243771258一起探讨。

上一篇下一篇

猜你喜欢

热点阅读