什么是平台工程?我的企业应该采用它吗?
大多数开发人员讨厌做与编码无关的事情:管理基础架构、创建和配置存储库、处理 CI/CD 管道等等。大多数时候,他们希望自己能专注于自己擅长的事情——编写出色的代码——其余的事情交给别人处理。
嗯,猜猜怎么着?有一个解决方案:它被称为平台工程。这是一种减轻开发人员工作负担的方法,这样他们就可以专注于为生产提供价值。这也是一种避免实施 DevOps 时一些常见陷阱的方法。
什么是平台工程?
平台工程是构建工具链和工作流程的过程,为开发人员提供自助服务功能。这使他们能够独立处理整个软件开发生命周期。这些工具链和工作流程统称为平台,以内部开发者平台 (IDP) 为核心。
简单来说,IDP 由开发人员完成工作所需的技术和工具组成。所有设置都根据单个开发人员的需求抽象出来。创建和管理这些平台的任务通常由平台工程团队负责,他们将开发人员视为内部客户,将平台视为产品交付。
目前,平台工程作为一个新兴领域正在引起广泛关注。AWS 和 Azure 等云提供商正在构建服务以支持平台工程。与此同时,埃森哲等公司正在提供平台工程即服务。它正在迅速流行起来。
为什么平台工程如此受关注?
平台工程的根源实际上始于 DevOps 的兴起。15 年前,DevOps 真正开始腾飞:组织开始采用它,技术专业人员和开发人员也接受了它,并且出现了新的 DevOps 工具。这是一种黄金方法,可以打破运营和开发人员之间的隔阂,并使组织能够更快地交付软件和解决方案。谁不想要呢?
对于许多组织来说,DevOps 兑现了这一承诺。然而,许多其他组织却难以实现预期成果,他们的 DevOps 计划失败了。
为什么?有各种“反模式”(也称为“反类型”)会破坏 DevOps 项目的有效性。反模式是对重复出现的过程的常见反应,最终会适得其反。
DevOps 失败:当开发人员被分担处理基础设施的任务时
DevOps 的主要反模式之一(也是 DevOps 项目失败的常见原因)是缺乏凝聚力。组织内的一个小团队(通常是开发人员)负责构建自己的结构和工作流程来实施和运营 DevOps。该团队承担着组装所需工具和工作流程以有效管理开发和运营任务的责任,有效地成为将 DevOps 抽象概念转化为功能框架的焦点。
结果如何?DevOps 推广失败或效率降低,导致软件或解决方案交付速度变慢。这与实施 DevOps 的期望完全相反。
有关常见 DevOps 反模式的完整列表,您可以参考以下资源:DevOps 反类型。
内部开发者平台如何帮助解决基础设施差距
如果您熟悉 ITIL 中的服务目录概念,那么您将理解内部开发者平台的概念。ITIL 的服务目录和平台工程中的 IDP 都是集中资源,可促进组织内的服务配置和管理。
ITIL 服务目录提供了可用 IT 服务、其描述和相关服务级别协议的结构化概述。
类似地,IDP(例如 Backstage 或 Humanitec)充当开发人员的目录,提供自助服务门户来访问软件开发所需的工具、服务和资源。
两者都提供了可用产品的可见性、促进了标准化、并使团队能够轻松发现和利用所需的服务。
最终,ITIL 服务目录和 IDP 都旨在提高各自领域内的效率、协作和透明度。
平台工程不是 DevOps 的替代品
关于 DevOps 的一个常见误解是,它全是关于工具的,而由于平台工程与工具有关,您可能会认为平台工程是 DevOps 的替代品。实际上,它们是两码事。
平台工程可视为一种增强和集中大量已在用的 DevOps 工具的方法。平台工程可帮助组织解决阻碍 DevOps 成功的基础设施缺陷,从而实现 DevOps 的优势。
有关该主题的更多信息,请阅读此文章:“平台工程:DevOps 的演变,而非替代。 ”
走上 DevOps 成功的“黄金之路”,运用产品思维
平台工程通过将 DevOps 工具链和工作流程捆绑到称为黄金路径的概念中来简化它们。黄金路径可以被认为是一组满足开发人员共同需求的工具和工作流程。黄金路径让开发人员可以轻松购买所需内容并继续前进,而无需为软件项目重新发明轮子。
您应该将平台工程视为内部产品,将开发团队视为客户。您应该将产品管理原则应用于 IDP 的开发和演进。这意味着:
了解平台用户的需求和要求,无论他们是内部开发人员还是其他利益相关者。
收集反馈,进行用户研究,并根据功能和改进的价值和影响确定其优先顺序。
全面了解平台的生命周期,从最初的设计和开发到持续的维护和迭代。
这种思维方式确保平台被视为一个不断发展的产品,具有清晰的愿景、路线图并专注于为用户提供价值。
我的组织应何时采用平台工程?
根据经验,如果您有 20 名或更多开发人员,那么现在是考虑采用平台工程的好时机。所涉及的大多数工具都是常见的,如果您一直在使用 DevOps 或GitOps ,您可能已经了解它们。这意味着扩展到平台工程的学习曲线很小。
即使您的组织目前尚未做好准备,这也是一个您不应忽视的新兴领域。平台工程的需求已经存在了一段时间,它为 DevOps 解决的问题也不会消失。
可能的后续步骤
探索未来是否需要平台工程并做好准备。
考虑运行一个可以迭代的平台工程试点项目。
继续通过有关平台工程的博客文章(如本文)和书籍来学习。
参与用户组、会议和松弛社区——您可以在www.platformengineering.org上找到这些内容。
最后但同样重要的一点是,进行一些平台工程方面的培训!
要深入了解该主题,请查看我的课程:“平台工程:大局”。本课程为您提供平台工程所需的技能和知识,以便您采取下一步行动。您可以通过 Pluralsight 上的10 天免费试用版访问本课程 。感谢您的阅读!
免责声明:本内容来源于第三方作者授权、网友推荐或互联网整理,旨在为广大用户提供学习与参考之用。所有文本和图片版权归原创网站或作者本人所有,其观点并不代表本站立场。如有任何版权侵犯或转载不当之情况,请与我们取得联系,我们将尽快进行相关处理与修改。感谢您的理解与支持!
请先 登录后发表评论 ~