作者 | Claudio Masolo
译者 | 平川
策划 | Tina
云原生环境正在蓬勃发展,但仍然缺少一个关键的方面:一个强大的包管理器。Glasskube 是该领域的一个新兴开源项目,它的第一个版本(v0.0.1) 旨在缩小这方面的差距。像 Android 和 iOS 这样的生态系统享受着应用商店的易用性和安全性,但在 Kubernetes 中管理软件部署通常是一个复杂的手动过程。Glasskube 的第一个发行版就是朝着这个方向发展的,它提供了一个能够安装基本软件包的功能原型。但是,随着旅程的深入,尚有许多挑战有待解决。
Glasskube GUI
Glasskube 采用云原生方法,通过图形用户界面(GUI)和 shell 自动补全提供友好的用户体验。中央包注册中心及其中的软件包清单构成了 Glasskube 包生态系统的核心。未来版本将扩展对第三方注册中心的支持,并支持在集群中使用多个注册中心。Glasskube 包操作符起着至关重要的作用,它将最新的清单同步到集群中,并确保在新的清单可用时进行及时更新。
Glasskube 图解
Kubernetes 版本兼容性仍然至关重要,频繁发布的小版本会引入新的 API 版本。Glasskube 的目标是整合包分发者变更日志中的元数据,利用 kube-no-trouble 或 Pluto 等工具自动进行兼容性检查,减轻包作者和用户的负担。
在缺少专用包管理器时,人们面临的另一个挑战是包依赖关系。Cert-manager、Ingress 控制器或数据库操作符等关键组件缺乏标准化的文档方法,阻碍了无缝集成。Glasskube 允许包作者指定依赖项,包管理器则可以确保满足先决条件,简化部署过程。
为了解决 Kubernetes 版本、依赖关系和包的多样性,Glasskube 正在为其中央包注册中心构建一个强大的自动化测试基础设施,以便支持全面测试,确保所有包在不同场景中的兼容性和稳定性。
来自 Arch User Repository、Play Store 和 App Store 等其他包管理器的反馈和包质量信息是 Glasskube 愿景中不可或缺的一部分。用户反馈和评论可以辅助决策,而开发人员可以使用这些有价值的输入来增强他们的软件包,这有助于形成一个具有协作精神的、充满活力的生态系统。
Glasskube 将自己定位为 Helm 的补充解决方案,而 Helm 是 Kubernetes 事实上的标准包管理器。Glasskube 重点关注的是管理员跨 Kubernetes 版本升级时处理多个包的简单性和效率。
原文链接:
https://www.infoq.com/news/2024/03/glasskube-kubernetes-management/
声明:本文为 InfoQ 翻译,未经许可禁止转载。