作者:Joaquim Rocha, Chris Kühl, Will Case
Backstage[1] 是一个开放平台,通过提供集中管理服务、工具和文档的中心,简化开发者工作流程。它使团队能够创建自己的开发者门户,提升项目之间的可视性和协作。Backstage 通过单一界面访问所有工具和服务,帮助组织轻松编目服务,以便更好地管理,集成多种工具以简化工作流程,并通过模板标准化流程,从而提高开发效率,减轻负担。
Backstage 和 Kubernetes
与 Headlamp 类似,Backstage 也有插件系统来扩展功能。Backstage 项目创建了与 Kubernetes 集成的插件,使用户可以查看资源和错误。然而,它并未提供更传统意义上的 Kubernetes UI,无法专门查看集群中的资源、读取日志、进入容器等。这正是 Headlamp 发挥作用的地方。
增强 Backstage 的 Kubernetes 管理功能
在最近的 Kubecon 巴黎会议上,我们与 Backstage 团队讨论了 Headlamp 和 Backstage 如何协同工作。我们迅速得出结论,这两个项目相辅相成,应该进行集成。因此,我们实施了两部分的集成:Backstage 部分自动设置 Headlamp(使用 Backstage 配置的 Kubernetes 集群),并将 Headlamp 嵌入到 Backstage UI 中;Headlamp 部分则在运行上下文中链接回 Backstage 资源。这使得在 Headlamp 和 Backstage 之间无缝切换成为可能。
通过将 Headlamp 与 Backstage 相互集成,团队可以利用这两个工具的优势。
从 Backstage 访问 Headlamp
Backstage 中的 Headlamp 集成为用户提供了一个嵌入的 Headlamp 实例,使其能够探索各种 Kubernetes 组件,包括部署、服务和配置。用户可以快速执行常见操作,如查看日志或检查资源的健康状况。你可以将 Headlamp 添加到 Backstage 侧边栏,以便方便访问(请参见这些说明[2])。
Headlamp 在 Backstage 中的视图:
除了嵌入视图,用户在 Backstage UI 查看服务(在 Kubernetes 中运行)时,还将直接链接到相应的 Headlamp 视图。在那里,他们可以根据角色权限进行常规 Kubernetes 操作(删除 Pod、查看日志、扩展部署等)。
以下截图显示了 Backstage 中资源到 Headlamp 的链接:
如何在 Backstage 中安装 Headlamp
Backstage 中的 Headlamp 集成分为前端插件和后端插件。你可以在这里[3]找到安装后端插件的说明,在这里[4]找到前端插件的说明。
从 Headlamp 访问 Backstage
在嵌入的 Headlamp 实例中,用户还会发现来自各种 Headlamp 视图的集成链接,允许他们跳转到 Backstage 针对相关 Kubernetes 服务的视图。这样完成了互通,允许两个 UI 之间的交叉链接。
未来展望
Backstage 和 Headlamp 共享相似的基础,面向不同的受众:Backstage 服务于寻求门户的开发者,而 Headlamp 针对需要用户界面的 Kubernetes 用户。两个平台都利用了强大的插件系统,增强了其功能。我们认为这些项目是互补的,为需要内部门户并运营 Kubernetes 集群的团队提供了有价值的解决方案。通过插件集成它们的能力,我们旨在为用户提供更全面的体验。
我们相信,Headlamp 是实现与 Kubernetes 相关的任何 CNCF 工具 UI 的良好基础。像 Backstage 插件这样的集成正体现了这一潜力。我们还为 OpenCost、Flux 等 CNCF 项目提供类似插件,未来会有更多。如果你在项目中看到类似集成的机会并需要帮助,请在 Slack 上与我们联系。我们期待为各种 Kubernetes 工具构建一个强大的 UI 集合!
Backstage: https://backstage.io/
[2]这些说明: https://github.com/headlamp-k8s/backstage-plugin/tree/main/headlamp#3-add-headlamp-to-the-sidebar
[3]这里: https://github.com/headlamp-k8s/backstage-plugin/tree/main/headlamp-backend#readme
[4]这里: https://github.com/headlamp-k8s/backstage-plugin/tree/main/headlamp#readme
点击【阅读原文】阅读网站原文。
CNCF概况(幻灯片)
扫描二维码联系我们!
CNCF (Cloud Native Computing Foundation)成立于2015年12月,隶属于Linux Foundation,是非营利性组织。
CNCF(云原生计算基金会)致力于培育和维护一个厂商中立的开源生态系统,来推广云原生技术。我们通过将最前沿的模式民主化,让这些创新为大众所用。请关注CNCF微信公众号。