DevOps的进化版?平台工程如何简化开发并提高交付效率?
- +1 你赞过了
【天极网企业频道】平台工程(Platform Engineering)作为初生不到三年的技术术语,终于在2022年下半年迎来人生中的第一个高光时刻,2022年也因此成为平台工程大众认知元年。不仅如此,Gartner还在其发布的2023年10大重要战略技术趋势报告中,将平台工程作为重要趋势;同样也是在2022年以VMware为代表的厂商在多年耕耘之后开始对平台工程进行系统性实践……
根据Gartner的定义,平台工程指的是一套用来构建和运营、支持软件交付和生命周期管理的自助式内部开发者平台的机制和架构,其目标在于优化开发者体验并加快产品团队为客户创造价值的速度,涉及设计和构建提供通用服务和工具的系统,软件开发团队可以使用这些服务和工具来简化开发过程并提高软件交付的整体效率。可以说,平台工程专注于通过减少现代软件交付的复杂性和不确定性来提高开发人员的生产力。
进击的开发模式和理念
在过去二十年,软件工程领域存在一个明显的趋势,那就是在产品既要保证客户预期质量,又要快速推向市场的背景下,企业或组织越来越依赖于自动化,角色之间的传统界限变得越来越小。可以说,从早期的瀑布式开发模式到之后的DevOps,再到如今的平台工程,都遵循了这一趋势。
早期的瀑布式开发模式通常将软件开发的过程分为系统计划、需求分析、系统设计、系统编码、系统测试、系统运行和维护6个阶段,每一阶段工作的完成是下一阶段工作开始的前提,每一阶段都要进行严格的评审,保证各阶段的工作做得足够好时才允许进入下一阶段。VMware Tanzu(业务)大中华区总经理邓惠钧表示:“瀑布式开发过程中不能修改,新的需求也不能加入,这使得一些新的修改需求需要顺延至下一个版本,开发效率极低。”
为了配合企业不断变多的需求,比较敏捷、快速地开发方式——DevOps进入了大家的视野。其实,DevOps是Development和Operations的组合词,是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。DevOps实践通常涉及自动化软件交付流程、使用敏捷开发方法以及构建持续改进的文化。这其中,自动化、敏捷快速能够极大满足企业开发者的需求。
然而,DevOps的发展真的有这么顺畅吗?未必!其实DevOps实践中至今存在诸多痛点,包括文化、团队、安全、技术等等方面。技术能力跟不上企业需求是痛点之一,邓惠钧分析认为,尽管企业制定了相关策略,但碍于企业技术能力达不到要求,使得推行搁置。DevOps不统一是另一大痛点,“不同开发团队有自己的偏爱、开发习惯,造成企业重复性开发,从而造成数据孤岛。”邓惠钧如是说。
此外,DevOps还存在安全团队和持续交付团队往往独立运行、信息交互频繁且效率低导致质量难以保证、沟通工作也多依赖于人工致使信息不对称和沟通不及时、价值与管理维护成本不对等难题。
应对DevOps遇到的挑战,平台工程有哪些价值?
如何应对这些问题和挑战?平台工程给出了相应的解答。通常而言,平台工程最核心的载体是软件开发过程中自助服务的工具链和工作流,平台团队将基础设施管理自动化,并使开发人员能够从一个集中管理的技术平台上自助获取可靠的工具和工作流程。
换而言之,平台工程规模化DevOps存在的一些挑战,其中包括减少在整个应用生命周期内管理复杂工具和基础设施网络的负担。无论是基础设施配置、流水线、监控还是容器管理等,自助服务平台将所有这些复杂的问题放入黑盒中,进而为开发人员提供开箱即用的所有必要工具。
在笔者看来,平台工程可以解决多种不同的需求,其价值主要体现在以下几个方面:
首先是可重复性。可以将其理解为乐高式的模块化,平台工程提供的技术组件和服务可以在多个应用程序之间共享和重用,从而避免了重复开发和维护相似的功能。邓惠钧表示:“可以重复循环利用应用开发的代码和工具对于公司来说避免了重复开发。”
其次是可扩展性。平台工程提供的基础设施和服务可以根据客户需求进行快速扩展和升级,以满足不断变化的业务需求。“平台工程建立一个统一的、可持续的解决方案,不是一个单一的为某个项目做成的解决方案。”邓惠钧如是说。
再次是集中化管理。平台工程提供集中化的管理和监控,使客户可以更轻松地管理和维护整个应用程序生命周期,从而提高效率和可靠性。
最后是安全性。平台工程提供的身份验证、授权和安全性服务可以保护应用程序和客户数据的安全性, 从而降低安全风险。
系统化推进平台工程,VMware的相关实践
如今,平台工程依旧火热。Gartner预测到2026年80%的软件企业都将搭建平台团队以为内部的工程师提供可复用的服务、组件以及工具来帮助应用交付。然而,今日的平台工程尚处于初步探索的早期阶段,还没有广泛接受的标准和通用的实践,仍处于探索、尝试期。无论如何,平台工程已成为IT技术行业的重要趋势,同时,其发展也离不开涉足平台工程的企业的探索。
作为早期涉足平台工程的企业,VMware从容器技术、云原生开始便经营该领域,并服务众多相关企业客户。VMware现代化应用事业部技术总监俊刚表示:“在去年年底平台工程概念提出之前,VMware便在其相关的开发者效率提升、应用系统提升等方面付出诸多努力。”简单来看,VMware的平台工程涵盖基础架构、包括IDP开发者平台和传统PaaS的应用平台,以及包含平台即产品管理方法、平台团队分工与角色的管理实践等。
在基础架构层,VMware充分面向云,通过服务目录方式、资源动态供给方式、弹性方式,帮助企业以高效、安全的方式供给资源。“VMware早前已将创新的云原生、容器技术嵌入到基础架构中,同时采用Aria面向企业级数据中心或者云环境管理工具实现基础架构的监控相关工作。”俊刚如是说。
前不久,VMware还推出了VMware Aria平台的整体创新,包括Aria Graph驱动的Aria Hub、CloudHealth驱动的Aria Cost以及Aria Guardrails,帮助云运营团队运用多云能力获得有关分布式环境的智能洞察,同时支持企业根据业务优先级别优化应用和基础架构的成本、性能与安全性。
应用平台是平台工程中的关键层级,涉及传统PaaS、IDP开发者平台。其中,在传统PaaS层,CI/CD流程、镜像库、日志分析、多租户、服务目录管理、微服务框架等都在基础架构资源之上,面向应用程序的全生命周期管理方式去实现。IDP开发者平台也开发了诸多平台功能性特性,用于提升开发者效率和体验。俊刚表示:“在传统PaaS和IDP功能完整组合部分,VMware提供了名为Tanzu Application Platform的全新解决方案。”
不久前,Tanzu Application Platform也做出版本更新,Tanzu Application Platform 1.5的新功能支持企业通过一套丰富的开发者工具更加快速、安全地构建和部署更多软件,为企业量身定制,提供了预先铺设且更加安全的黄金生产路径,同时,加强了端到端应用安全,简化了开发人员和平台工程体验,并扩展了对领先第三方集成的支持,为客户提供开箱即用、经过扩展的安全工具选择。
在管理实践层,VMware正在用全新的下一代超越DevOps理念与方式进行管理,发布平台即产品的管理方法,将IT系统通过平台理念进行建设,并进行相应的推广。俊刚表示:“为了应对不断变化的需求,企业传统的稳定不变的平台理念需要做出改变,要将平台做成产品,这就是平台即产品的管理方法。”与此同时,VMware也组建了Tanzu Labs Services实验室团队,该团队凝练针对平台工程的新型管理方法和工程实践,为企业提供更多深入的服务。
写在最后
如今,平台工程仍处于发展的早期阶段,能否被广泛接受还有待观察。但是,作为IT技术行业的重要趋势,平台工程正在不断发展壮大。并且随着越来越多的企业寻求提高其软件开发和交付流程的效率和有效性,平台工程也将得到更广泛地采用。在这个过程中,离不开开拓者的持续探索,不断优化平台工程,助力企业提高效率、降低成本和提高敏捷性。
最新资讯
热门视频
新品评测