DevOps工具链

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

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

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

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

DevOps工具链_第1张图片

 图2持续部署基本工具链

DevOps工具链_第2张图片

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

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

协作开发

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

持续集成

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

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

部署工具

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

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

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

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

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

警告&分析工具

维护工具

DevOps工具链_第3张图片

 全开源DevOps平台

DevOps工具链_第4张图片

DevOps工具链_第5张图片 

DevOps2009年~2017年历史发展过程

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

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

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

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

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

你可能感兴趣的:(devops,运维)