美文网首页
云中的DevOps | 洞见

云中的DevOps | 洞见

作者: ServiceHot | 来源:发表于2018-01-17 12:00 被阅读20次

    在如今快节奏的、数字化优先的商业环境中,DevOps和云计算正在迅速成为主流。然而,许多公司仍然纠结于如何实施、培养DevOps以及如何从DevOps文化中受益,特别是在云环境中。

    今年,我有幸参加世界各地的DevOps活动,并与许多IT专业人士讨论他们所面临的挑战。

    以下是向我提及的一些最常见的问题:

    什么是DevOps,它与云有什么关系?

    首先,有必要明确一下DevOps不是软件、硬件或任何有形的可以购买的东西,这一点非常重要。在一个生产环境中如何开发、测试、推广和运行软件,这是一种文化方法。

    DevOps还包括从交付生命周期(特别是生产)的每个阶段收集反馈,并将其注入下一个开发和交付周期。因此,DevOps不仅仅局限于云、本地部署或任何其他环境属性集。而是侧重于人们在创建以软件为基础的新业务服务过程中的沟通和协作。

    话虽如此,云技术等环境属性肯定有助于:

    使DevOps更易于实现;

    实现多学科团队合作的承诺,加速交付,同时提高软件质量;

    让所有参与者有更大的成就感和贡献。

    云中的DevOps与其他类型的DevOps有何不同?

    DevOps在云中和在其他环境中并没有根本的区别。但是,云技术确实有助于组织参与和实施DevOps文化。

    云中的DevOps是如何帮助企业的?其主要的好处是什么,为什么?

    考虑到软件开发生命周期(SDLC)以及云在每个阶段起的作用,它或许是有用的。简单起见,我们在此只考虑构建、测试和运行阶段。

    构建 - 现代应用程序需要复杂的技术堆栈,这需要付出相当大的精力来创建和配置。云技术使开发人员能够在几分钟或几小时内获得开发环境的访问权,而不用像过去那样花费几周或几个月,这是史无前例的。实例化一个LAMP堆栈(Linux,Apache,MySQL和PHP)只需要一到两次点击,甚至像SAP这样非常复杂的应用生态系统现在也可以几乎瞬间提供给开发团队。这不仅节省了大量时间,而且由于按需可用性(on-demand availability)消除了在不使用系统时继续保持系统运行(或者项目团队“囤积”资源的习惯)的需求,同样也大幅降低了成本。

    不太有形但同样具有价值的是云技术提供的“轻松访问(ease of access)”,从而能够运用不同的方法和技术组件轻松地查看和试验。

    测试 - 理想的DevOps方法是在构建阶段预先完成所有“创造性的”或手动工作,然后SDLC的其余部分是完全自动化的“流水线(pipeline)”。自动化测试是实现这一愿景的必要条件,而自动构建和拆除测试环境的能力则是实现自动化测试的必要条件。在这里,云再次提供了前所未有的能力,以便在我们通过交付管道进行时实例化日益复杂的测试环境。为了使从测试到生产的过渡成为“非事件(non-event)”,测试应该在与生产相同的环境中进行。这在过去是完全不可能的。之前,测试经常在几台服务器上进行,只有很少的数据以及少量的其他技术和应用来构成生产环境。借助云,则可以快速、高效并经济地构建接近生产范围和生产复杂性的测试环境。

    运行 - 部署到生产通常需要新的或额外的基础设施。云在构建高效资源和高度可扩展的运营环境的时候提供了无比伦比的速度。

    企业需要采取哪些步骤才能使云中的DevOps取得成功?

    计划 - 就像任何新事业一样,计划是关键。如今我们对于云有很多选择,其多样性和差异性也带来了复杂性。组织需要在短期内最大限度地提高开发团队的生产力与运营业务服务的长期需求之间找到平衡点。

    简化 - 使所有角色(开发人员,测试人员,基础架构,安全,运营等)都能够轻松上手,并且无需成为专家即可使用云服务。一个组织的云方法很可能将多个供应商和/或技术结合在一起。为了让人们开始使用云服务,而不必学习多个复杂的技术堆栈,需要对这种复杂性进行某种程度的抽象化。

    监控 - 确保您有方法监控使用情况并管理成本。

    衡量 - 收集指标并观察采用情况。对云消费如何以及如果能提供上述好处有一个现实的看法。如果一些团体/项目比其他团体/项目获得了更多价值,那么可以提取最佳实践,并在整个组织中扩散。

    云中的DevOps最佳实践是什么?为什么?

    提供一种自助式服务的方法。确保云能够提供的速度不会被您首先想要摆脱的传统流程拖累,这很关键。

    自动化,自动化,自动化。发展自动化文化。鼓励大家找到手动门(manual gates)和路障,并努力消除它们。

    当然,要衡量一切。

    关于云中的DevOps,哪些要点是组织应该了解的?

    “实现”DevOps是人员和组织必须经历的文化转型。云可能是一个推动者,但是组织的支持和承诺、协作环境、项目团队的多学科方法以及一种“DevOps思维方式”比使用的工具和技术重要得多。

    云中的DevOps在未来12-18个月内会发生何种变化?

    DevOps和Cloud都将无处不在,组织将需要更多的规范来制定并坚持一个促进稳定性和一致性的策略。对于项目团队而言,选择最新、最酷的技术或是选择一个似乎能提供最低成本或最简单的界面的云供应商是非常具有诱惑力的。但是,在企业中,业务服务实施时需要考虑的因素有很多,而且多样性会带来复杂性。

    云服务和“server-less”模式将变得更加普遍,组织将更有可能采用包括选择技术堆栈的标准操作环境。项目团队可以自由选择替代品,但这些团队将有义务提供持续的支持。这可能会导致采用开放灵活的自动化平台,为SDLC中的所有从业者提供一致的抽象层。

    最后

    我希望这些洞见能够帮助您规划数字化转型之旅。您目前是否正在实施或计划在贵公司实施DevOps战略?该如何融入云技术?我很乐意听到您的反馈和问题!

    原文标题:《DevOps in the Cloud》,作者:Joe Goldberg

    相关文章

      网友评论

          本文标题:云中的DevOps | 洞见

          本文链接:https://www.haomeiwen.com/subject/gbnyoxtx.html