写点什么

企业 DevOps:实施过程中需要关注的各项要点

  • 2015-08-31
  • 本文字数:2375 字

    阅读完需:约 8 分钟

不要对 DevOps 实践的发展进程抱有过高期望

与其它有价值物事物一样,DevOps 文化的实现推行也需要投入大量时间。我建议大家遵循从小处入手且循序渐进的执行方式,同时认真衡量每项组织变更给企业带来的实际影响——接纳实际起效的作法、并从未能奏效的举措当中总结经验教训。如此一来,相信持续改进这一文化体系必将在企业当中生根发芽。而且在整个实施过程中,最困难的无疑当数起步阶段。当大家已经逐渐适应了 DevOps 文化所带来的各种变化之后,接下来企业可能会面临着一系列独一无二的实际挑战——不过请大家坚定信心,这些困难出现的同时也意味着我们距离理想的解决方案已经不远了。

当初我们在道琼斯公司推广 DevOps 理念时,起步阶段仅仅组织起一个四人团队,并采取了一种相当缓慢的规模拓展方式——每月从其它 IT 领域借调一到两位成员加入队伍当中。如此一来,我们得以构建起一整套经验与最佳实践体系,而且始终保证当前项目数量能够与我们应用 DevOps 的节奏相统一。我并不建议大家在这个阶段采取过于迅猛的推进态度。缓慢而经过深思熟虑的增长能够帮助我们设定出与相关人员(也包括我们自己的这支队伍)的期望更为契合的发展目标,而一旦速度太快,情况很容易超出控制。另外,这种方式还能够保证资源消耗水平与整体业务收益保持平衡,这样我们就不必担心在资源分配方面受到过多的政策性干预。

整个发展过程大约用去了十八个月时间,这时我们感觉自己已经构建起一套足够庞大的最佳实践、自动化机制以及治理模式储备,可以开始将更大比例的基础设施资源划拨给 DevOps 团队了。在这方面变更当中,我们的目标在于让各位成员利用 DevOps 团队随时间积累下的经验对自身的传统角色定位进行转换。人们不可能在一夜之间彻底颠覆自己的固有工作方式,因此我们需要将这种转变划分成一个个组成部分,并由成员们自行调整相关系统的管理习惯。

在 DevOps 的实施范围及实施方法方面采取开放态度

毫无疑问,并不存在一种能够应对各类实际状况的 DevOps 实现与经验积累办法。每一家企业都拥有自身独特的情况与需求,而且并不是每家企业都需要——或者说应该——针对 DevOps 作出调整与变更。大家应当做好对相关举措的实际效果进行量化的心理准备,同时寻求一种将 DevOps 理念以及 / 或者相关团队同业务收益相结合的可行途径——这种业务收益可能体现在 IT 的任何一个方面。目前业界通常强调的是 DevOps 理念的实现方式以及创新文化在产品开发中的具体应用,不过我个人亲眼见证过很多成功的案例,证明 DevOps 也完全可以在后端办公、最终用户计算乃至 IT 的其它侧面发挥重要作用。总而言之,请大家以开放的心态看待当前正在推进的各类项目,这将帮助各位始终专注于 DevOps 团队的培养工作,并了解其该以何种方式带来令人满意的成果。

下面我们来了解企业在实现成熟 DevOps 文化之后所体会到的实际收益:

动中取静——保障一致性。DevOps 文化的实际表现应当被视为频度更高且规模更小的一系列变更的集合体。我曾经在此前的文章当中探讨过这一点,并列举了由此带来的各类收益,包括带来更理想的执行效率、分配给业务需求的资源更为丰富以及更出色的运营效果等等。这一切最终都将给客户带来更令人满意的使用体验(无论是内部客户还是外部客户)。但与此同时,大家需要准备好对业务相关者们的预期进行管理,而且不要任由他们抱有错误的预期。这绝不是危言耸听,事实上很多相关人员都会将持续变更的产品或者环境视为一种潜在风险。我们需要投入时间并拿出理想的成熟度来建立并证明 DevOps 是一套负责任的执行理念。最根本的一点就是建立信任,而建立信任绝不可能一蹴而就。总而言之,如果达成了预期目标、同时却失去了客户的支持,那么我们相当于不战而败。

全球性分布式应用。作为一名 IT 从业者,最令我感到振奋、或者说让我感到自己的工作有所回报的时刻,就是看着一款应用程序在世界各时区范畴之内不断进行着规模伸缩。由于大家的 DevOps 团队已经了解到如何以自动化方式管理跨越不同区域的整套资源储备,因此将应用程序推向分布式与全球化就成了顺理成章的下一步工作。让服务交付设施与客户距离更近能够有效降低延迟、使系统执行效率更高、更具成本效益,当然同时也能提高客户的满意程度。当大家掌握了 DevOps 的奥秘,将应用程序以分布式机制拓展到全球范围并不是什么难事。

数据中心迁移。IT 部门的一切工作都应受到业务需求的直接驱动。而当 IT 管理者能够将某种传统 IT 举措提取出来并作为真正的商业实例加以运营时,他或者她就不再仅仅是一位 IT 负责人、而开始转型成为商务领导者了。利用现有自动化与全球化分布式应用程序储备,大家能够开发出令人瞩目的商业安全,并将一部分或者整体数据中心迁移至云环境当中。在过去的一年中,我亲眼见证了越来越多此类案例的出现。

我个人的基础设施迁移工作出现在道琼斯公司运行自有 DevOps 团队的大约十个月之后。当时我们在香港租用的数据中心再有几个月就要到期了,这意味着我们必须尽快找到新的基础设施托管平台。我意识到我们已经拥有强大的 DevOps 实践与云专业知识储备,因此继续畏首畏尾地将自身局限在数据中心之内不单是一种退缩、更是一种耻辱。

在克服了一系列阻力之后,DevOps 团队掌握了困扰工程师们的各类主观障碍,并在六周之内将数据中心负载整体迁移到了 AWS 当中。尽管那时候的具体部署方式与当下的主流机制大相径庭,但最终我们还是顺利完成了迁移工作,而且直到现在我也认为这是对专业知识储备与期望管理效果的一种最具实效的证明手段。如果没有过去积累到的一系列经验,我们根本不可能完成这项迁移壮举。


感谢刘羽飞对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群InfoQ 好读者)。

2015-08-31 12:343329

评论

发布
暂无评论
发现更多内容

梦回战国,领略两千多年前公孙龙如何将面向对象运用得炉火纯青

迷彩

Java 面向对象 签约计划第三季 8月月更 面向过程编程

「控制反转」和「依赖倒置」,傻傻分不清楚?

蝉沐风

ioc 依赖倒置原则 DIP DI 控制反转

语音聊天app开发——对用户更具吸引力的设计

开源直播系统源码

软件开发 语聊房 开源源码 语音直播系统 语音源码

数据库不推荐使用外键的9个理由!

TimeFriends

8月月更

左益豪:用代码创造一个新世界|OneFlow U

OneFlow

实习 社区之星

阿里云云原生加速器企业硬之城携手阿里云 Serverless 应用引擎(SAE)打造低代码平台

阿里巴巴云原生

阿里云 Serverless 云原生 合作伙伴

2022秋招前端面试题(六)(附答案)

helloworld1024fd

前端面试题

开源一夏 | 牛plus,多层嵌套动态JSON该如何解析总结

知识浅谈

开源 8月月更

高层次综合(HLS)

贾献华

8月月更

《MySQL入门很轻松》第2章:MySQL管理工具介绍

乌龟哥哥

8月月更

STM32F103ZE+SHT30检测环境温度与湿度(IIC模拟时序)

DS小龙哥

8月月更

HMS Core分析服务智能运营6.5.1版本上线

HarmonyOS SDK

【LeetCode】受限条件下可到达节点的数目Java题解

Albert

LeetCode 8月月更

头脑风暴:除数博弈

HelloWorld杰少

8月月更

Shell脚本中常用命令复习

Albert Edison

Linux centos 运维 shell脚本编程 8月月更

产品经理必备的19类工具网站

爱吃小舅的鱼

开源一夏|Flutter实现搜索的三种方式

坚果

开源 OpenHarmony 8月月更

Spring(五、注解开发)

开源 8月月更

2022秋招前端面试题(五)(附答案)

helloworld1024fd

前端面试题

结合实际聊聊防反接电路(防反接电路总结)

矜辰所致

防反接电路设计 8月月更

项目管理流程及各环节要点

爱吃小舅的鱼

国内最主流的5大项目工时管理系统

爱吃小舅的鱼

用户权限-Linux系统ACL控制

Albert Edison

Linux centos 运维 服务器 8月月更

提升领导力的有效方法

宇宙之一粟

领导力 8月月更

数据治理(三):数据质量管理

Lansonli

大数据 数据治理 8月月更

Redis 定长队列的探索和实践

vivo互联网技术

redis 数据结构 消息队列 Lua脚本

部署spark2.2集群(standalone模式)

程序员欣宸

spark 8月月更

图数据科学和机器学习图数据科学GDS概览

flow

8月月更

面试突击72:输入URL之后会执行什么流程?

王磊

Java 面试

Python逆向之 eval 函数解析,看着一篇就会了,案例掌房

梦想橡皮擦

Python 爬虫 8月月更

业务缓存之体系化设计与开发

Qunar技术沙龙

系统开发

企业DevOps:实施过程中需要关注的各项要点_亚马逊云科技_Stephen Orban_InfoQ精选文章