企业如何从DevOps中获益

简介: 本文讲的是企业如何从DevOps中获益【编者的话】作者是ServiceNow的CTO,他负责为公司制定长远的技术路线与规划;这是他从DevOps的实战经验中总结出来的4个准则,值得参考。
本文讲的是企业如何从DevOps中获益【编者的话】作者是 ServiceNow 的CTO,他负责为公司制定长远的技术路线与规划;这是他从DevOps的实战经验中总结出来的4个准则,值得参考。

【上海站|3天烧脑式微服务架构训练营】培训内容包括:DevOps、微服务、Spring Cloud、Eureka、Ribbon、Feign、Hystrix、Zuul、Spring Cloud Config、Spring Cloud Sleuth等。

多数企业都知道DevOps的重要性,但是只有少数知道如何实施DevOps,并从中获益。这篇文章将介绍4个实施策略来确保你能从DevOps的理念中获得实实在在的收益。

毋庸置疑DevOps的时代来了,对于效率、速度至上的现代企业来说更快速、更高效的开发与部署应用程序至关重要;这也能解释为什么 94%的企业都在实施自己的DevOps方案

但是,关键的问题是如何实施DevOps才能从中获益?比起明白DevOps的重要性来说,很多公司,对于如何去实施都是一头雾水。以我的经验,只要遵循4个法则,所有的情况就会变得不同。

1、DevOps不是简单的将Dev与Ops组合在一起

就像DevOps这个单词,它把开发与运维组合在了一起;但是由于很多企业岗位是严格区分的,所以开发人员与运维人员坐在一起办公,共同开发一个应用还是一个新鲜事。而你要明白的是,开发与运维人员不能像“强迫的婚礼”一样,生硬的将两拨人组合在一起完事。

问题的根源在企业的管理制度上,每个公司都有自己的一套复杂的根深蒂固的管理流程与制度,改变开发的流程就意味着要变更管理制度——这将会产生巨大的管理成本。比如,在许多公司,当开发部门完成一个应用的开发后就直接扔给运维部门进行上线与日常运维;这会给运维部门的人员带来很多压力,因为大多数情况下他们并不知道应用的开发细节以及如何监控线上程序运行指标与性能。所以传统的开发流程跟DevOps所倡导的那种开发与运维高度合作与融合的理念完全不一样。

要想成功实施DevOps,你就要下定决心去改变公司现有的管理文化——去释放这些潜在的压力。要想线上的应用365天7*24小时的平稳运行,你就必须让开发人员与运维人员一起工作,去为应用程序开发运行状况与性能监控工具;以后就没有单独的研发部与运维部了——只有一个部门DevOps部。

企业观念与管理文化的改变是DevOps能成功实施的首要法则,达到这点我们再继续看第二个法则。

2、获得公司高层的支持

举个实际的例子,Joe在研发部工作,为了能更好的开发一个应用,他想跟在运维部的Sally一起工作,但是,这需要获得Sally所在部门领导的授权,但是这种授权会对现有的管理流程造成改变,所以是困难的。但是,幸运的是,Joe与Sally争取到了机会给公司更高层领导阐述了DevOps的理念以及带来的益处,然后很快就获得了授权。现在,Joe与Sally的直接领导在获得了公司老板的许可下得以一起工作并更好的推进项目的进展。

所以,为了确保你的DevOps计划的顺利进行,在实施的“最早期”你就必须与公司的执行管理层取得一致,同时确保他们理解DevOps不是简单的让两个部门在一起工作,不仅仅是公司组织结构与项目推进模式的变化,而是一种能够带来长远收益的开发方法的改变。

3、自动化工具的使用

诚然,获取管理层的授权与改变管理制度、流程非常困难,但是要想从DevOps获益还需要更进一步——开发或者使用自动化工具来实实在在的缩短开发时间,提高开发效率。

举个例子,在升级线上应用之前,很多公司都是手动做回归测试来确保本次更新不会对线上系统造成性能问题或者引入新的bug;但是手动做回归测试确实是一件非常枯燥而且漫长的过程。所以我认为,开发人员与运维人员必须联合起来开发或者采用一套自动化的测试工具——用于单元、功能与回归测试,来加速整个开发上线的过程。在我实际的工作中,所有的开发与运维人员均会被投入到软件质量与测试工具的研发、实施过程中;而且我认为,只有这样才能让双方都有同样的参与感与责任感。

在系统整个开发的生命周期中,除开测试需要自动化以外,我觉得还有以下几个方面可以做自动化,以提高效率:自动代码省查(将提交的代码自动路由到相应的省查者)、自动化集成部署工具、自动化日志分析系统与自动系统故障分类诊断系统等。

4、让运维团队持续参与

在项目的初期,研发人员的工作量会比较大,而运维人员可能会比较闲,这时,你可以分配一些非功能性的工作给他们去完成——重要但是不需要太多研发技能的活儿。

比如,你的运维团队可以提前开发一些系统监控工具,或是想些办法能快速定位系统的性能问题,或是像上节所说的,参与软件质量维护与测试工具开发之中。总之,这个时期,运维人员可以多做一些预见性的工作或者上线准备工作,以保持在项目的整个研发、测试与上线过程中所有人员都持续的有活儿干;这样一来,对于项目的上线风险就会小很多,人力资源的利用率也会提高很多。

DevOps在路上

DevOps时代已经来临,你很有可能身处其中,只要能够灵活使用以上4条准则,就能保证在DevOps实施过程中获得实实在在的收益。

原文链接:How to Succeed With DevOps(翻译:肖劲)

原文发布时间为:2017-03-15

本文作者:肖劲

本文来自云栖社区合作伙伴Dockerone.io,了解相关信息可以关注Dockerone.io。

原文标题:企业如何从DevOps中获益

相关文章
|
1月前
|
敏捷开发 测试技术 持续交付
阿里云云效产品使用合集之如何将个人账号下的Git仓库转移到企业账号下
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
29天前
|
运维 监控 Devops
DevOps文化下的企业运维转型
【8月更文挑战第22天】在数字化转型的浪潮中,DevOps不仅仅是一种技术实践,更是一种企业文化。本文将探讨如何在DevOps文化的引导下,实现企业运维的高效转型,包括理念更新、流程优化和团队协作等方面。我们将一起思考如何打破传统壁垒,构建一个更加灵活、高效和协同的运维体系,以应对不断变化的市场和技术挑战。
33 1
|
7天前
|
运维 Cloud Native Devops
云原生架构的崛起与实践云原生架构是一种通过容器化、微服务和DevOps等技术手段,帮助应用系统实现敏捷部署、弹性扩展和高效运维的技术理念。本文将探讨云原生的概念、核心技术以及其在企业中的应用实践,揭示云原生如何成为现代软件开发和运营的主流方式。##
云原生架构是现代IT领域的一场革命,它依托于容器化、微服务和DevOps等核心技术,旨在解决传统架构在应对复杂业务需求时的不足。通过采用云原生方法,企业可以实现敏捷部署、弹性扩展和高效运维,从而大幅提升开发效率和系统可靠性。本文详细阐述了云原生的核心概念、主要技术和实际应用案例,并探讨了企业在实施云原生过程中的挑战与解决方案。无论是正在转型的传统企业,还是寻求创新的互联网企业,云原生都提供了一条实现高效能、高灵活性和高可靠性的技术路径。 ##
18 3
|
1月前
|
敏捷开发 测试技术 持续交付
阿里云云效产品使用合集之缺陷等级管理是否是企业自己划定
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
1月前
|
运维 Devops 应用服务中间件
阿里云云效操作报错合集之从企业仓库里拉取依赖报错403,该如何解决
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
阿里云云效操作报错合集之从企业仓库里拉取依赖报错403,该如何解决
|
1月前
|
弹性计算 监控 Devops
"揭秘!阿里云云效如何以戏剧性飞跃,重塑企业门户网站部署,一键解锁DevOps魔法,让您的网站秒变行业巨星!"
【8月更文挑战第8天】阿里云云效企业门户网站部署解决方案是一站式DevOps平台,集成云效Flow、Codeup、Testplan等,支持自动化构建、部署与测试。通过ECS实例等资源准备、云端代码托管、持续集成与部署、及全方位监控,实现网站高效稳定运行。采用YAML配置简化流程,确保快速迭代与优化,适用于各类企业的数字化转型。
65 3
|
1月前
|
Kubernetes Devops 测试技术
DevOps实践:持续集成和持续部署(CI/CD)在现代企业中的应用
随着软件开发行业的迅猛发展,DevOps文化及其核心实践—持续集成(Continuous Integration, CI)与持续部署(Continuous Deployment, CD)—已成为提升软件交付速度和质量的关键策略。本文将深入探讨CI/CD的理论基础,并结合真实案例分析其在现代企业中的实际应用效果,旨在为读者提供一套可行的实施指南。
|
1月前
|
敏捷开发 测试技术 持续交付
阿里云云效产品使用合集之如何管理企业的组织架构
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
1月前
|
敏捷开发 测试技术 API
阿里云云效产品使用合集之一个企业可以绑定几个云效
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
2月前
|
敏捷开发 Java Devops
阿里云云效产品使用合集之将代理仓库关闭,之前通过代理同步的jar包会继续存在于企业仓库中吗
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。