Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >平台工程成功的六种模式

平台工程成功的六种模式

作者头像
云云众生s
发布于 2024-03-27 13:39:46
发布于 2024-03-27 13:39:46
2280
举报
文章被收录于专栏:云云众生s云云众生s

平台工程成功的六种模式

从 PlatformCon 2023 大会的演讲者那里学习平台工程的最佳实践,包括由谁构建什么,遵循哪些框架和蓝图。

翻译自 6 Patterns for Platform Engineering Success

毫无疑问,IT 工具选择是令人不知所措的——只需浏览一下云原生计算基金会图景,它跨越数个屏幕,充满了各种微小的图标。

《The New Stack》的出版商 Alex Williams2023 年的 PlatformCon 大会上发表了观点,特别强调在平台工程社区中,“人们对于如何构建强大的内部开发者平台,如何设计架构以及使用哪些工具的指导需求很高”。

在如此众多的选择中,问题远多于清晰的答案:

  • 自建还是购买 — 还是购买并定制?
  • 选择开源平台还是私有平台?
  • 如何整合现有的工具和工作流程?
  • 部署在单一云、多云还是混合云,一些工作负载是否在本地部署?
  • 如何在现有设置的基础上构建现代的内部开发平台[IDP]?
  • 谁负责这个平台 — DevOps、运维、系统管理员还是一个平台团队?
  • 如何与开发人员建立紧密的反馈循环?

最重要的是,你的内部开发人员实际上需要什么

今天,我们将揭示出几种新兴的模式,并强调一些反模式,因为年幼的平台工程社会技术学科正处于发展初期。以下是来自 PlatformCon 大会关于现代平台工程蓝图的讨论的亮点,希望您和您的团队能够找到适合自己的独特方式,从而使用开发人员真正想要使用的平台。

1. 认识到你的平台将是独特的。

现代组织的内部开发平台(IDP)是什么?这是一个没有明确答案的关键问题。

在讨论中,荷兰电子商务公司 Bol.com 的平台工程师 Anastasija Efremovska 表示:“这与你所谈论的公司非常具体相关。较小公司的用户界面模板或蓝图效果非常好,但一旦涉足企业,你确实需要更多样化的方法。”

随着规模的扩大,您需要为不同的技能和工程师类型提供支持,很可能还必须满足更多的合规性和安全性需求。所有这些都可以转化为从蓝图到CLI的IDP,可能是任何事物。

“我们对于 ID 的第一印象是有一个用户界面,我们正在为新的服务或资源提供支架,”Humanitec 的 CEO Kaspar von Grünberg 说道。但他补充说:“那只是整体中的一小部分,而且聚焦有点狭窄。”

Von Grünberg 认为,IDP 蓝图必须考虑应用程序的整个生命周期。

他说:“我真的认为你不能将这归结为工具,因为企业的现实是多 CI、多注册表、多一切。因此,并没有适用于平台工程的工具集,而是看你如何将它们结合起来。”

对于 Von Grünberg 来说,现代参考架构包括五个层面:

  • 开发者控制平面版本控制系统与基础设施即代码,可能还包括工作负载规范或开发者门户,比如 Backstage ,不同的个人组与整个平台互动。
  • 集成和交付平面:接受开发者的请求,并将它们与平台的基线配置同步。其中包括 CI/CD 流水线、镜像注册表和平台编排器。
  • 资源平面:云或云、数据库、集群。
  • 监控、日志记录和可观察性平面。
  • 安全平面:例如策略层和机密管理

对于 Von Grünberg 来说,这些的组合就是内部开发者门户背后的东西。然后,您选择哪些工具来交付这个平台堆栈将取决于团队和组织的复杂性。

2. 弄清楚谁是老板。

什么是平台工程师?这是一个经常被搜索的短语,因为坦率地说,很多组织都在匆忙地以名义上采用平台工程。有时,人力资源部门只是将职位标题从系统管理员、DevOps 工程师或站点可靠性工程师(SRE)更新为“平台工程师”。

问题的一部分在于,当您的组织中没有人专门指定平台架构团队时,不同的角色可能会被指派这项工作。这些同事可能来自以下任一团队:

  • 系统管理。
  • DevOps 和 CI/CD。
  • 运维。
  • 安全性或站点可靠性工程(SRE)。
  • 开发者体验或 DevEx 团队。
  • 应用程序开发团队。

所有这些团队都应该以某种方式参与到创建您组织的平台中。它应该划分出一条更安全、无摩擦的生产路径。最终,它应该在您的 DevOps 或 CI/CD 流水线中融合。始终要记住,平台的目的是减轻应用程序团队的负担,这意味着他们应该能够提供充分的反馈意见,但他们很可能不应该构建整个平台。

“许多公司正在意识到需要策划使用这个平台的体验,因为存在着许多不同的系统,”开发者体验咨询公司 Frontside Software 的首席执行官 Taras Mankovski 说道,他也是 Backstage 组织的成员之一。

他们会问类似于,开发者应该使用 Terraform 吗?Mankovski 说:“开发体验团队所从事的是一个过程:开发者有哪些困难,我们如何消除这种摩擦?”

这使得构建现代开发者平台有两个关键问题:

  • 我们开发人员的苦差事是什么?
  • 我们如何消除它?

这一切都归结于识别出 Abigail Bangser 称之为团队在组织中共享的“非差异性但并不不重要的工作”。你知道的,跨组织的优先事项,如安全性和部署速度,通常以相同的方式在整个组织中处理。这些事情是优先事项,但单个应用团队不会通过纠缠于这些事情来为最终用户带来差异化的价值。

不同的公司在平台发展的过程中可能有不同的阶段或目标。实际上,大多数公司根本没有从平台思维开始。可能已经有一个 DevOps 团队负责一些平台,比如 CI/CD 流水线。或许有一个负责混沌工程监控和可观测性的 SRE 团队。然后,当然,单个应用团队正在构建自己的东西或使用第三方工具——通常是为了绕过其他团队的障碍。

在我们与几家公司的交流中,平台的概念,或者根据 Puppet 的“平台工程状况报告”实际上是三到六个平台,有机地浮现出来。一个云工程师或 DevOps 工程师甚至可能意识不到他们已经成为了平台工程师——或者甚至不知道这意味着什么。

随着分散的平台逐渐演变为更具体、跨组织的平台战略,您需要明确谁负责——一个联系点和积压源。

哦,还有一件事。平台团队可能负责,但不要忘记老话,即“客户永远是对的”。如果你不听取内部开发人员客户的意见,并构建大多数人想要的内容,那么他们可能会再次绕过你强加给他们的任何东西。

3. 首先建立一种文化。

平台绝非新颖的概念。只是在当今,它是通过合作构建的,而以前更多是命令和控制。

“在平台工程出现之前,我们只是构建东西,然后期望我们的工程师和最终用户使用它,” Bol.com 的软件工程Quiran Storey 说道。现在的关键是要思考您的内部用户实际上想要什么。

尽管工具选择很重要,但平台工程是一种固有的社会技术努力。这意味着培养开发者为先的文化是任何成功的重要部分。

“当我们开始讨论是否构建或购买平台时,我们需要首先问问自己和公司关于我们的心态、文化以及平台如何适应这个公司,” Mercado Libre 拉丁美洲电子商务平台的云和平台高级技术经理 Juliano Marcos Martins 说道。

毕竟,跨组织的沟通既是平台战略的一个好处,也是其成功的秘诀。公司文化支持平台,但平台工程也应该对文化产生积极影响。平台应该充当翻译器或透明度启用器,使 IT 能够更好地与业务价值保持连接,业务能够更好地了解 IT 作为大型成本中心的情况。

Martins 观察到,当平台团队从 DevOps 那里夺走职责时,可能会产生摩擦,这就是为什么他说 IDP 不应仅考虑开发者的角度,还应考虑公司的角度,从而改善治理、安全、效率、成本和上市时间等方面。

4. 维护一个 API 访问点。

“突然之间,我们的客户成了平台工程师,” Efremovska 说道。“你需要让他们满意,同时保持稳定性、安全性和可审计性。”

在她担任 Bol.com 平台工程师五年的时间里,她认为不应过于抽象事物,因为当工程师尝试弄清楚如何做事情或底层发生了什么时,这会增加他们的认知负荷。

应用团队从他们的平台中想要的东西之一是统一的访问方式。通过 API 来实现。

Efremovska 建议,平台 API 应类似于 Kubernetes 资源模型,您可以使用 Kubernetes API 作为访问许多不同云提供商和第三方提供的单一、一致的方式。

因此,一旦您发布了第一个平台原型或最薄的可行平台,她建议您通过一个单一的内部 API 创建一个单一的访问点。然后您可以在其上创建模板。

5. 关注自助服务的目标。

平台团队不希望成为应用团队的另一个障碍。API 优先的设计对实现平台及其自动化的需求至关重要。您的应用团队希望能够选择、选择并使用平台的各个部分。

“良好的架构设计允许系统分散地增长,” von Grünberg 说。“用户可以说,这个金色的路径适合我,但如果对我不起作用,我知道如何扩展它并增加系统。”

任何扩展都可能后来被平台团队采用,以创建一个新的金色路径。

自助服务平台的另一个必备条件是可搜索的文档,这样您的开发人员就可以自己找到答案、操作指南、代码示例和错误代码定义。

6. 让开发人员驱动决策。

Storey 在启动您的平台之旅时的建议是:问问你的开发人员 80% 的时间需要做什么。

对于您发布的每个平台部分,您需要提供和维持服务级别协议、黄金路径、文档、合规性和支持。Mankovski 提醒我们,与其不得不推销类似于单块式的内部更新,不如努力发布和采用较小的成果。这也可以保持一个更紧密的开发者反馈循环。

“在提供的内容上要明智,因为这样会成为平台团队的运营负担,”这个团队负责维护和处理您创建的复杂性或技术债务。Storey 呼应了减少复杂性的最薄可行平台的方式:“如果您提供一件事并且做得很好,宁愿这样做,也不要提供一堆质量都一般的东西。”

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-08-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
PlatformCon 2023: 更大、更好
PlatformCon 2023 是夏季的平台工程活动,而且原因充分。来自世界各地的超过 22,000 名平台从业者、专家和爱好者在为期两天的会议中收听了 169 场社区提交的演讲。这个本月初举办的会议让人难以忘怀。如果你错过了,以下是亮点。
云云众生s
2024/03/27
1650
PlatformCon 2023: 更大、更好
平台工程应知应会
作者 | Luca Galante 译者 | 平川 策划 | 丁晓昀 随着社区和工具生态的快速发展,平台工程显然会继续存在下去。但是,和任何(相对)新的趋势一样,平台工程仍有许多未解之谜。最近,Humanitec 发布了第一份《平台工程现状报告》——以下是该报告的关键内容以及平台工程的重要趋势。 平台工程是软件工程中最大的趋势之一。PlatformCon 2022 ——有史以来的第一个平台工程大会——吸引了超过 6000 名参会者,而当地的聚会小组也有数千名会员,很显然,这一趋势将持续下去。 自然
深度学习与Python
2023/05/09
4260
平台工程应知应会
【译】构建企业 IDP 最小可行性产品的黄金路径
最近不管参加什么技术会议,八成会看到一张看起来无所不能的云原生全景图,这张大图说明,现代软件开发的复杂度,已经让人略有不适了。
崔秀龙
2023/11/06
4060
【译】构建企业 IDP 最小可行性产品的黄金路径
平台工程:构建它的先驱者
多年来,许多开发人员和IT人士一直在努力寻找更好的软件开发方法。以下是部分平台工程创建者的一些故事。
云云众生s
2024/12/07
1020
2024年平台工程现状?充其量还处于起步阶段
DevOps 的失败持续推动着组织建立平台团队。但 Gitpod 和 Humanitec 的最新报告指出,许多组织并没有衡量结果。
云云众生s
2024/12/04
1040
2024年平台工程现状?充其量还处于起步阶段
DevOps和SRE还没搞清楚,平台工程又出现了,它会取代DevOps吗?
DevOps、SRE和平台工程的概念在不同时期出现,并由不同的个人和组织开发。 图片
DevOps在路上
2023/04/26
2940
DevOps和SRE还没搞清楚,平台工程又出现了,它会取代DevOps吗?
一家拥有153年历史的公司如何建立平台团队
Hellmann Worldwide Logistics 在 PlatformCon 2024 上所描述的数字化转型,为其他组织提供了可借鉴的经验。
云云众生s
2024/06/27
1390
DevOps 已死?不重要!平台工程才是未来
最近, Scott Carey 发表了一篇调查文章,喊出了一些开发者的心声:“扯淡的 DevOps,我们开发者根本不想做运维!”除此之外,软件工程师兼 DevOps 评论员 Sid Palas 也在推特上写道,“DevOps 已死,平台工程才是未来。”
大数据技术架构
2022/12/01
6030
DevOps 已死?不重要!平台工程才是未来
大概算是平台工程吧
2022 年底,InfoQ 发了一篇爆款文,《DevOps 已死,平台工程才是未来》,这里总结了一个太长不看版:
崔秀龙
2023/09/01
3400
大概算是平台工程吧
【译】平台工程六大支柱
平台工程是用来设计、构建工具链和工作流的方法,软件工程师团队在这些工具和流程的帮助下,获得自助服务的能力。这些工具和流程被称为内部开发平台,经常会被简称为平台。平台团队的目标是提高开发生产力、加快发布节奏、提高应用稳定性、降低安全及合规风险,以及降低成本。
崔秀龙
2023/11/27
9040
【译】平台工程六大支柱
Palo Alto Networks 的平台工程
翻译自 Ramesh Nampelly 的 Platform Engineering at Palo Alto Networks 的 Part-1 和 Part-2 。
云云众生s
2024/03/27
2070
Palo Alto Networks 的平台工程
平台工程:一切皆工具
为了平台工程的成功,IT 管理员必须首先选择并提供最适合其运营内部开发团队的工具组合。
云云众生s
2024/07/21
1680
平台工程如何应对DevOps挑战
随着公司持续以前所未有的速度扩展,DevOps 的角色正在经历重大转型。虽然 DevOps 一直是弥合开发和运维之间差距的重要工具,但其局限性和低效率也变得越来越明显。
云云众生s
2024/04/12
1570
平台工程与 DevOps 和 SRE 有何不同
随着平台工程话题热度上升,人们对它是什么以及它与SRE 和 DevOps 等有何不同存在很多困惑。事实上,随着许多 SRE 和 DevOps 专业人士进入平台工程角色,很容易将他们误认为是相同的。
灵雀云
2022/11/29
1K0
平台工程与 DevOps 和 SRE 有何不同
平台工程师:开发人员是您的客户
本文翻译自 Platform Engineers: Developers Are Your Customers。
云云众生s
2024/03/27
1470
平台工程师:开发人员是您的客户
平台工程的是是非非
平台工程最近很热门。为了帮助您区分事实和夸张,这里总结了各方对平台工程是什么和不是什么的观点。
云云众生s
2024/03/28
1090
平台工程不适合中国企业?这个观点值得反驳!
作者 | 杨振涛 编者按:平台工程并非 2022 年度首次出现,最早可以追溯到 2017 年。经过 6 年多的发展,Gartner 于去年将平台工程列为了 2023 年度 10 大战略技术趋势之一。当我们回头去梳理平台工程相关技术的萌芽、现状以及早期实践者的部分经验和教训时,我们发现国外已经有了不少案例和实践,以及非常浓厚的技术讨论氛围,但从国内视角来看却缺少相关案例。对于中大型组织而言,要想更加高效稳健地进行软件开发和发布,平台工程是一个非常重要的考虑项,因此我们希望此文能给企业管理者、CTO 及技术
深度学习与Python
2023/03/29
6200
平台工程不适合中国企业?这个观点值得反驳!
译】平台工程: 入门所需的所有知识
数字平台正在形成一种提供服务和吸引用户的新方式。多亏了他们,才有可能为客户提供全渠道的体验,达到他们与公司互动的所有接入点。因此,组织可以利用这些机会来创建新的业务模型。
黑光技术
2023/09/01
2340
译】平台工程: 入门所需的所有知识
如何成为平台工程师
随着社区活动,例如 PlatformCon 在短短几年内规模增长了两倍,行业研究报告称平台工程师的收入可以 比 DevOps 高出 42.5%,更不用说不断增长的 行业认证 了,难怪平台工程成为当今最热门的 IT 职业之一。
云云众生s
2024/03/28
1350
如何成为平台工程师
通过平台工程实现开发者的赋能
开发团队最需要的是那些能够提高他们工作效率和自治性的工具。不仅要实现构建、测试和部署的低摩擦度,还要能够理解应用程序中的运行情况。
云云众生s
2024/03/28
1690
通过平台工程实现开发者的赋能
相关推荐
PlatformCon 2023: 更大、更好
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档