大家好!我是崔日善,一位云安全和平台工程专家。🚀
如果说上一篇文章我们讨论了开发者门户的必要性,那么今天我们将深入探讨其具体实现:Backstage。它不仅仅是一个“安装即用的工具”,让我们一起从其哲学到结构,了解它为何被称为“框架”!

📌 章节概述与学习目标 🎯
Backstage 的诞生是为了克服 Spotify 在快速发展过程中遇到的微服务管理限制。它后来被捐赠给 CNCF,现在是一个拥有强大社区的开源项目。
通过本章,我们将学习:
- Backstage 诞生的决定性原因 💡
- 如何将 Backstage 的核心价值与您的组织匹配 🤝
- 将 Backstage 理解为“框架”而非“产品” 🏗️
- 了解 Backstage 实例由哪些元素组成 🧩
1. Backstage 的诞生:Spotify 的困境 🇸🇪
Backstage 的诞生背景与当今许多成熟 IT 组织面临的问题非常相似。
📈 快速增长的副作用
Spotify 每周都会招聘新工程师,微服务的数量呈指数级增长。平台团队很快就遇到了瓶颈。因为即使是“哪个服务正在运行,负责人是谁?”这样最基本的问题也变得难以回答。
🏗️ 从 System-Z 到开源
最初,他们创建了一个名为 System-Z 的内部微服务目录。
- 初期:仅管理存储库链接、负责团队、PM 姓名等元数据。
- 演进:集成了服务间的依赖关系、API 文档和软件模板(Scaffolding)功能。
- 结果::文档与代码一起管理,保持了最新性,并成为工程师可以直接创建资源的自助服务平台。
Spotify 没有独占这个创新工具,而是将其捐赠给了 CNCF。现在,包括财富 500 强企业在内的数百个组织正在通过 Backstage 彻底改变他们的开发者体验。🌍
2. Backstage 的哲学:自主性与所有权 ⚖️
Backstage 不仅仅是一个工具集合页面。它融入了清晰的 DX (Developer Experience) 哲学。
🔄 信息聚合器 (Aggregator)
Backstage 并不旨在取代现有的 CI/CD 工具或 LDAP 目录。相反,它充当一个“信息枢纽”,将分散的信息汇集起来,帮助开发者避免迷失。
🛡️ 自主性与所有权 (Autonomy & Ownership)
- 自主性:中央团队无法创建所有插件。我们鼓励分析团队管理分析插件,安全团队管理安全插件。
- 所有权::每个软件组件都应由一个团队拥有。这样可以确保信息保持最新,并明确责任归属。
3. Backstage 是一个“框架” 🏗️
这部分最为重要。Backstage 并非一个通过单个安装文件(.exe 或 .dmg)就能完成的“成品”。
Backstage 是一个基于 React(前端)和 Node.js(后端)的库集合。换句话说,它是一个您可以根据组织需求自行“开发”和“组装”的平台。它提供了大约 25 个核心包和 150 多个开源插件,因此您可以按需选择。
4. Backstage 实例的三层模型 🧩
您将构建的 Backstage 大致分为三个层次。
- 核心 (Core):由 Backstage 主团队管理的开源代码。它充当系统的骨架。
- 应用 (App):这是您实际部署并供开发者访问的实例。通过 CLI 创建,是您根据喜好进行定制的区域。
- 插件 (Plugins):这些是扩展功能的单元。软件目录本身也以插件形式存在,您可以安装社区提供的各种插件,也可以自行创建。

Backstage 是云原生时代减轻开发者认知负担的最佳解决方案。如果您想降低组织的复杂性,现在就关注 Backstage 吧!🚀
发表回复