版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 DevOps 发展现状及趋势研究摘要:近年来,DevOps作为新兴软件开发管理范型,得到了广泛关注。它通过整合开发和运维,实现了软件产品和服务的持续交付,从而 让企业提高效能,降低成本。本文先简述了DevOps概念及优势,其次从采用率、使用成效及工具几个方面研究了DevOps的发展现状,最后分 析了DevOps未来发展趋势。关键词: Devops ;开发与运维;持续交付;IT 工作流目 录 TOC o 1-3 h z u HYPERLINK l _Toc14615771 1.引言 PAGEREF _Toc14615771 h 3 HYPERLINK l _Toc14615772 2.DevO
2、ps介绍 PAGEREF _Toc14615772 h 3 HYPERLINK l _Toc14615773 2.1.DevOps概念 PAGEREF _Toc14615773 h 3 HYPERLINK l _Toc14615774 2.2.DevOps优势 PAGEREF _Toc14615774 h 4 HYPERLINK l _Toc14615775 3.DevOps的发展现状 PAGEREF _Toc14615775 h 6 HYPERLINK l _Toc14615776 3.1.DevOps采用率 PAGEREF _Toc14615776 h 6 HYPERLINK l _Toc
3、14615777 3.2.DevOps使用成效 PAGEREF _Toc14615777 h 7 HYPERLINK l _Toc14615778 3.3.DevOps工具 PAGEREF _Toc14615778 h 8 HYPERLINK l _Toc14615779 4.DevOps的发展趋势 PAGEREF _Toc14615779 h 9 HYPERLINK l _Toc14615780 5.结语 PAGEREF _Toc14615780 h 10引言随着互联网信息技术的快速发展,软件和服务的生命周期迭代间隔不断缩短,用户都期望能够在第一时间获得最新产品及服务, 也希望缺陷能够在最短
4、时间内修复,快速交付能力成为企业的核心竞争力。DevOps提出将开发与运维结合,其持续部署、持续交付技术能够有效提高产品和服务交付能力,帮助企业提升效能,因而得到了广泛关注。随着这几年不断的探索与实践,DevOps已从最初的流行词转化为行业的焦点技术,DevOps正在给传统软件开发模式带来巨大的变革。DevOps介绍DevOps概念DevOps(英文Development 和Operations的组合)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合,如图1。图1 DevOps 概念示意图DevOps概念最早在2009年的欧
5、洲被提出,它的出现是由于软件行业逐渐清晰的认识到,当前主流的敏捷开发带来的是持续测试的能力,这种开发模式并未消除开发与运维之间的隔阂,将开发团队与运维团队独立开的传统方式,已成为提高交付速度的障碍。为了填补开发和运维之间的信息鸿沟, 改善团队之间的协作关系,DevOps应运而生,旨在促进开发和运维紧密合作,实现按时交付软件产品和服务的目标。DevOps优势在软件开发过程中,存在技术的价值流,它体现在从需求提出到开发、测试、部署、发布、运营整个流动过程。技术价值流关注从提出商业需求,到把设想利用技术转化为服务,最终交付价值给客户。在技术价值流中,缩短每个环节的时间,确保流程高效和高质量流动,有助
6、于提高价值与效能。而DevOps就是从软件交付的全局出发,构建的一个完整的IT工作流( 如图2 ) , 以I T 自动化及持续集成( C I , Continuous Integration)、持续交付、持续部署为基础,优化开发、测试、系统运维 等所有环节。DevOps的核心原则是快速流动、快速反馈与持续学习,其主要优势表现在以下几方面:(1)支持高效交付,缩短软件开发周期。传统的软件开发模式中, 开发、测试、运营各部门分离,沟通较少,往往上游环节很大程度制约了下游环节的开展,造成开发流程推进缓慢,开发周期长问题。而DevOps开发管理模式中,开发、运维及质量部门紧密结合,通过利用完整的工具链
7、实现最大程度自动化部署、测试,从而有效的缩短了开发周期,达到高效交付的目标。图2 DevOps 模式的IT工作流图3 DevOps 部门与行业比例示意图(2)快速获取反馈,提升软件质量及稳定性。在软件开发过程中, 出现问题是不可避免的,如何快速发现并解决问题是关键。传统的软件开发模式中,开发人员将产品开发完成后,交由测试部门人员进行部署测试,往往在工作周期的后期才发现问题,这种反馈是非常慢的。而DevOps使用持续集成、测试与持续交付的方式,代码提交几分钟后就可以得到反馈,如有问题,可快速发现并解决。这大大降低了投产过程中产生问题的可能性。另外,由于在之前环节各部门已紧密沟通,因此即使投产中出
8、现问题,也可以一起快速定位并处理问题,从而提升软件的质量与稳定性。(3)改善公司文化,促进持续学习与沟通。随着DevOps在各大组织的逐步实践,人们越发意识到DevOps不单单是一种模式,更是一种文化。DevOps成功与否在于公司组织是否善于协作沟通,这不仅仅指开发运维部门的协作,也是和最终产品相关的所有人的协作, 以及领导层的支持。也就是说,DevOps的成功需要整个组织的合作参与。这对传统的公司文化是个巨大的变革,使用DevOps的公司已经采取了各种措施促进这种文化的建立,如建立共享平台,各部门员工可共享高质量和一致性的信息,促进知识复用与学习;开展全组织例会,加强员工之间的沟通,加快遇到
9、问题时处理速度,提高工作效率等。协作的公司文化也有助于增加员工成就感和对工作的满足感,从而更好的投入工作。DevOps的发展现状DevOps采用率在过去的几年里,DevOps采用率逐步增长。在国外,很多全球知名的公司如Google、Facebook、Amazon、LinkedIn、Netflix等都在采用DevOps或提供相关支持产品。在近3年由Puppet与DevOps研 究与评估协会组织的DevOps调查中发现,使用DevOps的部门比例 已从2014年的16%增长到2017年的27%,如图3。世界500强企业的DevOps员工比前三年更是增长了两倍之多。很多公司聘用专门的DevOps工程
10、师协助团队使用超前的自动化工具做快速的交付。而 在De v O p s 使用行业分布方面, 也呈现出扩展趋势。几年前使用DevOps主要为科技行业,而现在DevOps已深入到包括金融、零售、 电信和教育等众多行业。调查中还发现,未使用DevOps的人也有32%表示将计划部署仅有20%的人表示无意采用DevOps。可见, DevOps的采用率可能将继续增长。目前,DevOps在国内还不算流行,虽然部分知名企业,如腾 讯、华为、阿里巴巴等已经采用DevOps,但大部分传统行业还没有DevOps实践。在DevOps中国社区发布的DevOps中国.2017年度调查报告中显示,国内DevOps参与者主要
11、集中在科技和互联网行业,其他行业对DevOps了解略显不足。另外,设立DevOps部门 的比例为1 3 % , 与全球水平有一定差距。通过对比来看, 目前DevOps在中国的发展还处于起步阶段,不过,有很多DevOps中国 社区成员及其他DevOps从业者也正在通过努力促进DevOps在中 国的认知和推广。DevOps使用成效DevOps旨在通过加强自动化,加快软件发布和部署速度,降低系统出错频率,更快地消除宕机和错误的影响,从而提高效能,降低成本。我们一般可以用软件交付力和系统稳定性来衡量IT效能。2017年DevOps现状调查报告中显示,使用DevOps的组织现 已经可以按需每日进行多次部
12、署,每年可高效部署1400次以上,部署频率比未使用DevOps的组织高46倍。变更周期时间指标上,使用DevOps的组织部署变更到生产环境的前置时间已少于1小时,而未使用DevOps的组织使用时间为一周到一个月。而在稳定性方面,使用DevOps时,故障恢复时间(MTTR)可以达到1小时之内,变更失败的概率平均值是7.5%;而未使用DevOps时,故障恢复时间为1天到 1周,变更失败的概率为38.5%。可见,使用DevOps较大推动了工作流流动及反馈,提高了企业组织效率。众所周知,在IT行业竞争日益激烈的今天,延迟发布更新产品或停机所带来的损失是巨大的,有时会产生不可估量的影响。提高企业效能也意
13、味着降低成本为企业带来收益。DevOps工具近几年DevOps的发展实践也得益于配套工具的技术发展,目 前DevOps的构建、部署、运维等各阶段都有多种不同的工具供支持。其中常用的构建工具有Ant、Maven、Rake、Gradle等,持续集成工具有Jenkins、TeamCity、Bamboo等,配置管理工具有Puppet、Chef、 Ansible等,日志工具有Loggly、Graylog等,监控工具 有Nagios、 New Relic、Cacti等,如图4。每个公司可以根据自己的项目情况搭建适用于自己的DevOps工具链。据调查显示,Jenkins、Chef和Puppet依然是DevO
14、ps团队使用率最高的工具。随着容器技术的发展,Docker成为使用量增长最快的工具。而也有部分企业,在已有工具的基础上,开发使用适用于自己的自动化工具。图4 常用DevOps 工具DevOps的发展趋势(1)DevOps将出现在更多的行业领域。在当今瞬息万变、信息量巨大的时代,业务的灵活可靠高效是各企业追求的目标。DevOps实 践显示,DevOps给企业的财务指标还有非财务指标都带来了价值。随着DevOps相关概念和技术不断的深入发展,更多行业领域将能 找到自己关注的特性。因此DevOps渗入到更多行业是必然趋势,各 行业都可以通过DevOps获取技术改进对组织效能的积极影响。(2)自动化流
15、程标准化。DevOps最直观的一个价值就是自动化, 自动化构建、自动化测试、自动化部署等等。自动化的价值是清晰的,但目前自动化还处于各种工具、平台、语言相对独立的阶段。每个公司每个项目都在各自搭建自动化流程,这需要花费相当一部分时间与精力去配置、测试和管理。比如JAVA项目团队通过调研测试 制定了一套可以很好实现自动化流程的机制,但其他项目很可能不能直接复用,还需重新构建自己的流程和规范,这就使自动化的价值没有发挥到最高。随着对DevOps不断的摸索反馈,未来一定会制定一套统一的自动化流程标准,让各项目更容易的去应用DevOps,从而释放更多时间精力去做更能产生价值的工作。(3)将安全融入到D
16、evOps工作流。在传统的开发模式中, 开发人员通常在构建软件时认为功能需求优先于安全。虽然安全编码起着重要作用,但对于需赶在最后期限前构建应用的团队来讲,它往往被降到功能需求之后。但随着自动化安全在D e v O p s 实践中提出, 这种思维也逐渐发生改变。DevSecOps的新型理念将安全融入到DevOps工作流,通过在 软件周期中加入安全测试技术,在持续整合平台中增加自动化安全分析等方式,来增强应用程序安全性,同时不拖累发布和部署周期。DevSecOps鼓励开发人员思考如何将应用程序的安全融入日常代码中,主动保证安全并打败攻击,这将对交付安全产生积极影响。(4)架构松耦合化。在DevOps的实践过程中,人们越来越感受到系统架构与持续交付和IT性能的紧密关联。经调查发现,松耦合的架构和团队能够提高实施持续交付的能力。松耦合架构,更易于在不依赖关联组件或服务的变更下修改独立的组件或服务。就组织而言,团队 也可以不依赖其他团队完成工作。但是如何更好的解耦也一直是实践的难点之一。随着近年新型应用设施方式的出现(如微服务架构),更多新的架构技术将与DevOps实践结合,实现架构松耦合化,更好
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年长护险基金会计核算补充规定实施指南
- 2026年智能网联汽车路测与场景数据集应用
- 2026年浙江金台丘陵山区农机集群1900家企业协同创新经验
- 2026年碳普惠与绿色普惠金融融合创新实践手册
- 2026年高通骁龙可穿戴平台至尊版与AI PC技术同源分析
- 2026年深海采矿车与扬矿系统对接技术规范
- 2026年风光火储一体化项目利益共享机制设计
- 2026年粮油单产提升丘陵山区急需农机装备推广应用项目可行性报告
- 2026广东南山二外(集团)海德学校招聘教师2人备考题库带答案详解(模拟题)
- 2026中国电信云南公司春季校园招聘备考题库完美版附答案详解
- 扶贫致富电商培训课件
- 化州介绍教学课件
- 2026年全国中学生天文知识竞赛(中学组)经典试题及答案
- 药店课件教学课件
- 现场勘查课件
- 2025年高效能项目管理系统开发项目可行性研究报告
- 建筑项目施工安全检查表含整改措施
- 2026年安徽卫生健康职业学院单招职业技能考试题库及参考答案详解
- 投资银行并购业务课件
- 油品泄漏应急处置措施
- 建筑工地洗车槽施工方案
评论
0/150
提交评论