不以落地为目的的 DevOps,都是耍流氓!!

导读

2016年最新的DevOps新趋势调查报告显示,DevOps的接受度在企业中持续攀升,81%的大企业开始接受DevOps,而中小企业占比为70%,越来越多的企业开始了解并接受DevOps的理念。

DevOps是一种新兴的过程管理方法,它提倡通过加强沟通、协作的方式,优化开发(Dev)、质量(QA)、运维(Ops)的流程,使开发运维一体化。同时,DevOps更强调了“自动化”的重要性,通过高度自动化的工具与流程,有效连接了软件构建、测试、发布、部署、质量管控等各个环节,从而大大的提高企业的信息化生产效率。

企业信息化研发运维现状

在当前的互联网形式下,产品的交付速度和交付质量至关重要,传统的瀑布型(开发-测试-发布)模式下,研发和运维各自为战,缺少有效的沟通和配合,严重影响IT交付业务价值的速度。

从研发的角度来看:

传统企业的研发过程缺少有效的自动化流程,从研发到生产环境部署的整个过程,主要还是依靠人。随着项目不断的扩大,人员和时间成本很难控制。同样,在研发管理方面,也没有完善的缺陷管理和研发相关的自动化统计分析功能, 项目管理人员很难了解项目的真实情况。

从运维的角度来看:

研发和运维部门之间存在看不见的“沟通屏障”,程序在生产环境下出问题更是屡见不鲜。结果导致新功能迟迟无法交付,严重影响项目进度。

从以上两个方面来看,研发和运维由于工作目标和预期的不同,在传统信息化管理过程中,很难有效沟通和协作,对内耗掉的时间成本和沟通成本也无法进行有效控制,严重影响企业持续创新、持续交付的能力。

DevOps势在必行

当下,“快速变化”已经成为互联网世界基本态势,快速响应、自动化和持续交付的能力越发重要。通过实践DevOps,可以将开发、测试、运维之间的工作串联起来,以持续构建、自动化测试、持续发布为目标,将所有流程全部自动化,最大化减少了重复性的人力投入。同时,基础环境的自动化构建也降低了由于人的原因带来的意外风险。

DevOps所能带来的改变,逐渐让企业用户意识到实施DevOps的必要性,但是在DevOps实施的过程中,会遇到很多问题,成为企业实践DevOps痛点。

1、DevOps流程涉及的技术领域非常宽泛,技术门槛高;

2、自动化虚拟容器技术复杂,企业内部信息化团队缺少相关专业人员;

3、缺少有效的自动化测试工具;

4、缺少功能丰富的研发过程管理、监控、统计、分析工具。

(参考Intel Enterprise Cloud、Intel HPC、Intel Machine Learning)

DevOps流程可以分为持续集成、持续交付、持续部署、应用监控、智能分析等部分。本次,东软特别针对DevOps持续交付部分,抓住了企业研发运维的“痛点”,推出了东软DevOps持续交付最佳实践:

一台终端机!

简单安装!

轻松实现和企业用户既存代码库的关联!

自动化的项目管理、测试、部署、发布工作!

帮助企业快速实现DevOps持续集成落地!

东软DevOps持续交付最佳实践是以东软UniEAP Platform企业应用开发平台和东软SaCa Aclome敏捷云管理平台为基础,所有自动化流程均基于Docker虚拟化技术实现,无需用户搭建任何额外环境,只需要一台16G内存的终端即可!

1

基础设施容器化

东软DevOps持续交付最佳实践内嵌了Jenkins、FindBugs、OWASP ZAP、Apache JMeter等开源工具,并提供Docker自动化容器创建技术,实现基础设施的快速创建。

没有Jenkins环境的用户:

可以通过DevOps工具一键创建包含Jenkins的Docker虚拟环境,即装即用。

既存Jenkins环境的用户:

可以在Jenkins中配置DevOps工具插件,在原先的Jenkins流程中快速集成DevOps插件。

2

开发模式主线化

在向DevOps演进的过程中,使用主干开发是最佳实践之一。主干开发的好处是每个开发人员都是基于同一套代码进行开发,开发人员每天在主干上签入、签出他们的代码,不断地集成,测试和修复,代码和周边产品(配置,数据,脚本,测试用例,结果)统一作为产品资源被管理起来,上线仅需要一个版本号即可。

3

各类测试自动化

东软DevOps持续交付最佳实践内部包含了各种测试组件,并且在DevOps自动化链条中支持按需配置,基于K8S的Docker集群管理,自动创建Docker容器,这些容器被用于每次自动化测试过程中的环境搭建、应用部署、测试环境资源自动回收。

在提升自动化测试能力方面,东软DevOps持续交付最佳实践提供了UniEAP UTF自动化测试框架。UniEAP UTF是东软全生命周期开发平台UniEAP的重要组成部分,是一款通用、可扩展的自动化测试产品,同时支持Web应用和移动应用的自动化测试。提供图形化的管理工具、参数化的测试数据、多样化的结果断言以及可视化的测试报告。极大的降低了测试用例维护和测试结果分析的成本,提升了脚本复用度和执行有效性。适用于功能回归测试、兼容性测试、稳定性测试及移动客户端和浏览器端性能测试。

4

研发过程可视化

在提升研发过程管理方面,东软DevOps持续交付最佳实践提供了研发过程可视化分析工具 —— SaCa DataInsight。

东软SaCa DataInsight是专门为机器数据分析而设计,主要面向机器数据领域的数据管理、分析服务。SaCa DataInsight提供了基于GitLab的研发过程监控、分析的支持。

没有GitLab环境的用户:

可以通过DevOps工具一键创建包含GitLab的Docker虚拟环境,即装即用。

既存GitLab环境的用户:

可以在GitLab中配置SaCa DataInsight工具,快速实现对现有研发过程的监控分析,并会生成可视化仪表盘。

2019-07-01T10:32:24+00:00