DevOps 与平台工程

2025-05-27

DevOps 与平台工程

如果你对 DevOps 或平台工程感到困惑,你并不孤单。网上有很多关于这个话题的讨论,而且根据你问的对象,你可能会得到不同的答案。

造成这种混淆的部分原因在于,DevOps 经常被用作一个包罗万象的术语。就连维基百科也对 DevOps 的真正含义感到困惑:

…学术界和实践者尚未对“DevOps”一词提出一个通用的定义。〜维基百科

但我要告诉你,这两者之间是有区别的。我们先来定义一下它们,然后再看看它们之间有什么联系……

支持我们🙏

我们知道 Kubernetes 的使用并非易事。因此,我们创建了 Cyclops,一个用于在 Kubernetes 上构建开发者平台的开源框架。它能够抽象化 Kubernetes 的复杂性,并通过可定制的 UI 部署和管理您的应用程序,满足您的需求。

我们正在将 Cyclops 开发为一个开源项目。如果您有兴趣尝试一下,可以参考我们代码库中的快速入门指南。如果您喜欢,请给我们一个 star ⭐ 来表示您的支持。

⭐  GitHub 上的 Star Cyclops

通过 GitHub 星标支持我们

什么是 DevOps?

DevOps 实际上不是一个职位,而是一种哲学。DevOps 中的 Dev 代表软件开发,例如构建应用程序和功能;Ops 代表运维,通常代表在服务器和基础架构上推送、运行和维护软件。

DevOps 作为一种哲学

考虑一下:您有一个开发团队负责运送应用程序和功能,还有一个运营团队负责获取该软件并在您的基础架构上运行和维护它。

当生产环境中出现 bug 时,责任在谁?开发团队常常将部署失败归咎于运维团队,而运维团队又常常将编写不稳定代码的责任归咎于开发人员。

这些团队的目标各不相同。开发人员希望尽快交付尽可能多的代码,而运维团队则优先考虑稳定性和可靠性。这种“各自为政”的文化导致了紧张和低效。

Dev-Ops 墙

在 DevOps 成为主流之前(在某些情况下,现在依然如此),这种情况就一直存在。DevOps 作为一种理念,倡导一种协作文化,让开发人员和运维团队在整个软件开发生命周期中紧密合作。双方团队不再将软件“扔到墙外”,而是共同承担构建、部署和维护软件的责任。

DevOps 作为工作角色

我知道我说过 DevOps 实际上不是一个职位,但实际上它已经成为一个职位了。虽然最初的术语可能意味着重组组织,使开发和运营团队更紧密地合作,但在当今世界,它代表着类似于 Ops 的职位。

DevOps 本质上是指负责实现自动化和 CI/CD 流程、处理基础设施以及监控应用程序指标的人员。该职位职责多样,但其核心是帮助团队构建、测试、部署和监控其服务(这正是 DevOps 理念的精髓所在)。

在这个职位上,您将与开发、运营和基础设施团队合作,以自动化和简化我们的流程,构建和维护用于部署、监控和运营的工具,并排除故障并解决我们开发和生产环境中的问题。〜DevOps
工程师的职位列表

什么是平台工程?

平台工程就像一个内部产品团队,但其主要用户不是服务外部客户,而是公司自己的开发人员和内部团队。

平台工程师的工作是设计和构建工具集、基础架构和工作流程,使开发者能够更轻松地构建、测试、部署和管理软件。目标是创建一个统一的平台,通常称为 内部开发者平台 (IDP),该平台为开发者提供自助访问所需的一切资源的能力,而无需依赖其他团队(例如运营或基础架构团队)。

您将构建平台工具,并利用创新的云技术,为最终用户(<公司>的开发者)带来乐趣。您是一位热衷于通过自动化、云技术和生产力工具来提升我们工程团队的建设者,从而提升开发者体验。
~ 平台工程师职位

它们之间有何关系?

平台工程并非 DevOps 的替代品。DevOps 的目标是提升软件质量、迭代速度和交付效率,这通常通过采用新的工具和工作流程来实现。从这个角度来看,平台工程是实现和体现 DevOps 原则的途径之一。

共同原因

两者之间的界限通常体现在内部开发者平台(IDP)上。虽然 DevOps 工程师确实会为开发人员构建工具(例如 Bash 脚本),并尝试尽可能地实现自动化,但其目标并非围绕某一特定产品。

平台工程确实有一个核心产品——开发者平台,它尽可能地消除障碍,让开发者尽可能地自主和快速行动。

新来的孩子

平台工程是一个相对较新的概念,最著名的例子之一就是Backstage。但是,构建内部产品(IDP)对于组织来说是一项非常昂贵的工作。在小型公司中,你不会看到很多平台工程师的招聘信息(DevOps 职位在这里更为常见)。

在 Cyclops,我们正在构建一个开发者平台框架,以减少构建内部开发者平台 (IDP) 所需的成本和时间。我们希望将 IDP 的所有优势惠及任何规模的公司。

如果您喜欢这篇文章或发现它有用,请加入我们的 Discord 服务器,我们会随时向您介绍最新内容、新进展以及我们团队的新闻!

⭐  GitHub 上的 Star Cyclops

附言:哦,对了,维基百科没有贬低的意思,我爱他们🧡~Juraj

文章来源:https://dev.to/cyclops-ui/devops-vs-platform-engineering-3khn
PREV
React 中的条件包装
NEXT
使用 Nmap 扫描网络漏洞