【51CTO.com快译】DevOps目前业已成为每家企业最希望达成的转型目标,但与大多数技术潮流一样,其中也存在着大量对DevOps定位与能力的误解。在今天的文章中,我们将从八大传闻出发,探讨您印象中的DevOps与其真实情况间是否吻合。
1. DevOps代表由开发者执行运营工作:错误
DevOps的自动化组件当中涉及大量代码,这导致很多人误以为开发者需要负担其中的大部分相关工作。事实上,DevOps最终目标在于实现基础设施即代码,即让运营团队看起来更类似于开发团队。
2.原有项目应被淘汰:错误
项目代表的是系统及故障的演进过程。将其视为完成后即无需打理的事物显然是种误读。事实上,在采用DevOps与敏捷性方法后,我们相当于利用产品生命周期取代原有基于项目的实现方案,而非彻底淘汰原有项目。
3. DevOps不适用于复杂环境:错误
DevOps事实上正是扎根于高复杂度环境。它唯一无法适应的情况在于不现实及/或不合适的业务目标。复杂环境通常源自对当前状态、变更方向以及互连系统相关信息的不畅沟通。在另一方面,DevOps鼓励通过沟通与协作解决问题,从而立足根源避免此类挑战。
4.很难让业务团队接纳DevOps:错误
DevOps的优势与企业中的业务层密切相关。然而,采取简单粗暴的“抽调功能资源用于建立新型IT技术”这种态度明显无法令业务团队认同。事实上,DevOps会对企业整体带来深远影响。虽然在起步阶段可能遭遇阻力,但只要在认同与拒绝之间找到平衡点,整个业务一定能够遵循 DevOps指导顺利完成过渡。
5.敏捷性只适用于懒散的工程师:错误
DevOps的***优势在于有效清除不必要的日常负担。通过自动化机制,企业能够显著削减说明文档、会议甚至是手动操作任务数量,确保团队成员拥有更多时间专注于更为重要的优先事务。只要生产效率得到提升,即可证明团队已经在DevOps领域迈出了成功的***步。
然而,DevOps本身也存在着众多“枯燥繁琐”的流程,其中包括大量测试规划与代码审计。敏捷性能够消除资源浪费,但前期的必要投入仍然不可避免。
6.如果无法编程,则不可能成功实现DevOps:正确
之所以正确,是因为DevOps中的自动化要素完全体现在基础设施即代码(简称IaC)层面。这通常意味着相关人员应当掌握模块化开发、自动化测试以及持续集成(简称CI)等软件开发技能。无论规模如何,我们都应尽可能实现自动化机制,而这必然要以软件开发技能作为前提。
7.管理者将逐步消失:错误
相反,管理者在DevOps当中将扮演不同于以往的角色。事实上,他们对于团队而言仍然非常重要。管理者负责维持整个DevOps团队处于正常运作轨道之上。经典的管理任务也许会逐步消失,但这完全是因为管理性角色的专注重点开始出现变化。
8.不实施DevOps必然导致失败:正确
目前众多市场***厂商已经建立起自己的先进DevOps结构。随着行业越来越多地将IT与业务相结合,我们也将亲眼见证DevOps成为现代企业中的必要元素,而无法实现这一目标的企业则将遭到淘汰。
具体来讲,DevOps并不是一剂能够让您的企业百病不侵的灵药。相反,DevOps能够避免多种失败问题的发生,且将成为您无法拒绝的重要疫苗——然而,这仍不足以解决企业发展中面临的各种“病痛”。
原文标题:8 DevOps Myths Debunked,作者:Divesh Rupani
【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】