「本文主要讲解了实施DevOps整个流程以及应对方法」


随着越来越多的企业争相借助技术手段来击败竞争对手,软件开发已不仅仅是一项可靠的投资。它是现代企业的主要收入渠道和主要战略手段。这就是为什么确保产品的质量、性能和安全性以及快速上市的时间至关重要。

在过去的十年中,世界各地的企业和软件开发团队一直依靠敏捷方法来提高团队效率和适应性。但是,随着对软件产品商业价值的日益关注,传统方法已不够。需要一种更有效的方式来构建和部署软件。结果,DevOps 方法出现了,试图为软件开发和交付创建更全面、端到端的方法。

什么是 DevOps,它如何运作?为什么需要它?带来什么收益?而且,最重要的是,您如何在组织中实施 DevOps?继续阅读以找到这些问题的答案。


1、什么是 DevOps?它如何工作以及为什么需要它

作为软件开发中的一个相对较新的现象,它经常引起混乱。实际上,仍然没有统一的 DevOps 定义。例如,  Atlassian  将 DevOps 解释为使软件开发和IT 团队之间的流程自动化的一组实践。「根据   Microsoft 的 Sam Guckenheimer 的说法,该术语表示人员,流程和产品的结合,从而能够为我们的最终用户持续交付价值。」两种定义都是正确的。

您可以说 DevOps 允许您通过自动化流程并改善工程和IT团队之间的协作,为最终用户提供价值。总而言之,DevOps 转移了对人员的重视,消除了开发和运营之间的障碍,并为他们提供了作为一个多学科团队一起工作的工具和实践。


2、DevOps 如何运作

作为一种软件生命周期管理模型,DevOps 通过消除工程师,IT员工和利益相关者之间的差距,专注于端到端流程。这意味着 DevOps 涵盖了将软件交付给最终用户所需的所有活动,即开发、部署、维护和扩展。结果,采用 DevOps 模型的组织变得更加以产品为中心,拥护「构建,运行」的理念。


3、DevOps 如何使您的业务受益?

这种方法的广泛采用及其流行性的增长可以归因于多种原因。以下是 DevOps 可以为您的企业带来的一些优势:

  1. 减少产品故障的机会。由于持续不断的反馈循环,DevOps团队交付的软件通常更适合目的并且与市场相关。

  2. 改进的灵活性和支持。 由于使用了微服务和云技术,DevOps 团队构建的应用程序通常具有更高的可伸缩性和易于维护性(我们将在稍后进行介绍)。

  3. 加快上市时间。 由于先进的持续集成(CI)和 DevOps 团队通常依赖的自动化工具,应用程序部署变得快速而可靠。

  4. 更好的团队效率。DevOps 意味着集体责任,这可以提高团队敬业度和生产力。

  5. 团队内清晰的产品愿景。 产品知识不再分散在不同的角色和部门中,这意味着更好的过程透明度和决策能力。

DevOps实施列出的优势可为您的业务带来切实的投资回报。从长远来看,采用这种方法可以节省您的时间和资源,同时通过提高业务迭代速度和竞争力来帮助您增加收入。

4、DevOps 挑战以及如何克服挑战

尽管 DevOps 有好处,但实现 DevOps 并非易事。也就是说,您应该准备面对几个关键的 DevOps 实施挑战(以及一些如何应对这些挑战的技巧):

4.1、转型挑战  (技术和组织方面)

处理旧系统并重新构建应用程序以实现微服务架构或将其移至云可能是阻止大多数企业采用 DevOps 的原因。

除了调整产品之外,您可能还需要重建团队并更改内部流程以适合 DevOps模型。这包括更改团队角色,雇用新的团队成员,采用新的工具等。

解决方案:要测试水平深浅,看看这种方法是否适合您的组织,请先启动一个试点项目。因此,您将看到您的团队是否已经准备好迎接挑战,并将为创建全面的 DevOps 实现路线图做好更多准备。

4.2、缺乏人才

很难找到具有实践经验的 DevOps 专家。根据 Payscale 的说法,该领域的大多数专家都有 1 - 4 年的经验  。因此,DevOps 工程师职位是最难填补的职位之一。

此外,这样的专家通常是有代价的:在美国平均的 DevOps 工程师年薪从$121583 - 143707 范围内浮动。

解决方案:考虑在海外雇佣一个专门的团队,或与一家值得信赖的技术咨询公司合作,指导您完成过渡。

4.3、工具集的选择

DevOps 转型过程中,可以考虑许多 DevOps 工具,其中一些可以认为是有益的。但是,这也使得选择完全满足团队需求的产品变得更加困难。

此外,在转型过程中更换工具可能是一个真正的挑战,并且会浪费大量时间。您将需要转移所有项目,并让您的团队有时间习惯它们。

解决方案:任命经验丰富的 CTO 或顾问来帮助您做出正确的选择,以及组装和使用所需的工具。考虑到列出的 DevOps 缺点,您不应盲目跟风,并急于在组织内实施此方法。如果您每年仅更新产品一次,并且不打算很快构建任何新产品,那么实施DevOps 可能不适合你。


5、如何在组织中实施 DevOps

考虑到利弊,在大多数情况下,DevOps 策略似乎是一项合理的投资。因此,如果您要为组织构建 DevOps 路线图,请考虑以下高级计划作为起点。

评估风险并了解潜在收益

在开始开发 DevOps 计划之前,请考虑一下为什么要实施此方法的真正原因。您想加快部署速度吗?您是否觉得团队没有充分发挥作用?您多久会遇到由各个部门之间的沟通鸿沟引起的问题?

了解您的 DevOps 计划背后的真正动机将帮助您选择最佳途径,从而实现可靠的实施策略和结果。

除此之外,了解当前的瓶颈和挑战将有助于您设定基准并跟踪未来的进度。


5.1、从人开始

从开发人员到经理和行政人员的团队成员将负责您的 DevOps 实施策略。因此,确保每个人都了解此过渡的潜在好处并准备为所需的更改做出贡献非常重要。首先,任命一名负责人来策划流程并分配团队中的角色。让您的团队成员花一些时间来处理更改并习惯他们的新角色。另外,您可能还需要填补几个新职位,因此尽早开始此过程很重要。

5.2、改变文化

没有简化的团队内部沟通和透明度,您的 DevOps 实施计划将是不完整的。建立相互负责的文化并采取有效的协作实践应该是 DevOps 最初的实施步骤之一。首先,放置有效的沟通和知识共享工具。采用 DevOps 最佳做法(并选择合适的工具)成功的 DevOps 实施计划有几个要素:

  • 持续集成和持续交付

  • 测试自动化

  • 敏捷项目管理

  • 持续的应用数据监控和记录

  • 云端迁移

  • 基础架构即代码(IaC)

  • 微服务架构

列出的大多数最佳实践旨在简化日常任务并优化团队绩效。例如,「基础结构即代码」(当前是最热门的 DevOps 主题之一)在设置部署环境时消除了手动工作,同时帮助您使其配置保持一致。这使您可以避免许多常见的部署问题并加快流程本身。决定您的 DevOps 策略未来的另一个重要方面是您选择用于实现上述最佳实践的工具。

5.3、从小规模开始并稍后扩展

如前所述,在将整个组织全部投入 DevOps 路径之前,请考虑首先在一个试点项目上测试该方法。这将帮助您发现可能的障碍,并在将来避免它们。


6、您是否正在准备开发 DevOps 策略?

在开始 DevOps 实施计划之前,重要的是要了解它是一个持续的过程。总是有一些可以改进的地方,可以尝试的更好的工具,以及可以采用的新实践。但是,毫无疑问,DevOps 方法是一项可靠的长期投资,可以帮助您提高组织的效率和面向未来。如果 DevOps 方法适合您,那么肯定值得付出大量的血液、汗水和眼泪。制定清晰的计划不足以减轻与 DevOps 方法实施相关的风险。您需要聘请具有相关技能和公认专业知识的人员,最好是专业顾问或经验丰富的团队来指导您完成该过程。

推荐阅读:


Kubernetes排障指南

从零搭建Kubernetes下的nignx和tomcat

Kubernetes中如何使用ClusterDNS进行服务发现?

Kubernetes入门培训(内含PPT)

从Ice到Kubernetes容器技术,微服务架构经历了什么?


随手关注或者”在看“,诚挚感谢!

DevOps实践带来的好处和挑战相关推荐

  1. 基于 DevOps 实践的 .NET Core 给开发者带来了哪些好处?

    关键要点 \n \n \n 无论你目前使用什么样的技术栈,DevOps都是值得一试的. \n\n \n 闭源.专有软件和构建过程与DevOps实践不兼容. \n\n \n .NET Core是开源的, ...

  2. 阿里智能运维实践|阿里巴巴DevOps实践指南

    编者按:本文源自阿里云云效团队出品的<阿里巴巴DevOps实践指南>前往:https://developer.aliyun.com/topic/devops,下载完整版电子书,了解阿里十年 ...

  3. 微软开发团队的DevOps实践启示

    过去几年,微软的工程师团队已经接受了DevOps的工作方式,本文讲述我们在这个过程中积累的经验. \\ 纵观整个软件产业,坦白地说,从我们一路的经验来看,DevOps的实践和方式对于服务和其它产品的交 ...

  4. 阿里巴巴DevOps实践指南 | 数字化转型下,DevOps的根本目标是什么?

    简介:数字化转型是信息技术与产业的结合.需要转型的不仅仅是各个传统的产业,也包含信息产业本身,如互联网公司.DevOps 是数字化转型的重要组成部分,DevOps 的体系和实践也必须服务于数字化转型的 ...

  5. 阿里巴巴DevOps实践指南 | 为什么DevOps的必然趋势是BizDevOps?

    简介:从精益思想出发,我们可以看到DevOps的必然发展方向,那就是向业务侧延伸.业务是产品开发和运维的源头,完整的价值流必须从源头开始.这不是预测,而是正在发生的事实 编者按:本文源自阿里云云效团队 ...

  6. DevOps 实践:千里之行

    在上一篇 DevOps 渊源:角色消融 中我们分析了在作坊式团队中的责任重叠,也回顾了 DBA 角色的消融.那么,如今我们讲的 DevOps 又是什么角色的消融呢? 我想你已经猜到了,接下来要消融的角 ...

  7. 云原生2.0时代下,DevOps实践如何才能更加高效敏捷?

    当前全球的数字化浪潮逐步加深,云计算成为当今信息化发展的重要基础设施,云原生(Cloud Native)在数字化浪潮中的角色逐步提升,成为近几年云计算领域炙手可热的话题. 首先我们来看看一张图,看看云 ...

  8. 【华为敏捷/DevOps实践】5. 如何避免DevOps变革的六大“焦油坑”

    文/华为云DevCloud 伦语春秋 当今,DevOps能显著提升企业的商业敏捷与能力,因此在企业中广受欢迎.然而,对于大多数企业来讲,DevOps变革并非一帆风顺,此过程中会面临各种各样的挑战.为了 ...

  9. 骞云科技 DevOps 实践

    随着公司业务的快速发展,需要加快开发流程的规范化和自动化,以提高产品的开发效率和交付效率.之前的开发测试和资源管理主要是半自动化的,个人生产力和资源利用率仍有很大提升空间. 在DevOps的具体实践中 ...

最新文章

  1. 像淘宝、京东这样的大型电商网站服务器构架完全部署解决方案
  2. Lambda架构与推荐在电商网站实践
  3. php crc16校验算法,PHP串口通信中计算crc16校验码
  4. 计算机关闭开启启动程序,如何设置开机启动项?电脑开机启动项怎么增加与关闭?...
  5. .NET Core开源组件:后台任务利器之Hangfire
  6. 计算男孩女孩小孩各有几个 java——CSDN博客
  7. python 无序列表中第k大元素_Python要求O(n)复杂度求无序列表中第K的大元素实例...
  8. 《零基础入门学习Python》学习过程笔记【016列表,元组,字符串的转化及共用技巧】...
  9. Oracle 日期时间函数大全
  10. selenium 环境搭建
  11. SQL按字段分组取最大(小)值记录(重复记录)
  12. vue父子组件生命周期执行顺序_Vue.js 父子组件生命周期调用顺序
  13. Chapter 1 : MySQL体系结构和搜索引擎
  14. 浏览器全球的书签都在这里了,看看有没有你的!
  15. 2017年世界500强企业排行榜【完整榜单】2017财富杂志世界五百强排名
  16. Nginx配置基础-proxy_pass
  17. 直播回顾 |「星轨巡讲」技术分享会亮点速递
  18. spring听课一点+组成原理心得
  19. 支付宝服务商第三方代发布小程序
  20. python request.get

热门文章

  1. oracle笔记之交集(INTERSECT)、并集(UNION UNION ALL )、差集(MINUS)
  2. Gradle ‘Android‘ project refresh failed Error:Connection timed out: connect
  3. “基本功”才是核心能力
  4. 制造业ERP失败原因探秘
  5. 约拿情结与平庸之谬 (转自eastviking的博客)
  6. java stream 之Collector
  7. 解决Arduino LVGL TFT_eSPI 屏幕偏移问题
  8. “大连天健网”“中国石油大学”等网站被挂马
  9. 字符串大小写转换html,用JavaScript将字符串进行大小写转换的方法
  10. 推荐几篇图片隐写技术的文章