大厂Data+Agent 秘籍:腾讯/阿里/字节解析如何提升数据分析智能。 了解详情
写点什么

云计算巨头合作开发全新 Kubernetes 资源管理工具

作者:Matt Saunders In

  • 2025-03-17
    北京
  • 本文字数:1882 字

    阅读完需:约 6 分钟

云计算巨头合作开发全新 Kubernetes 资源管理工具

谷歌云、亚马逊云科技和微软 Azure 联合宣布了一个新的开源项目 Kube Resource Orchestrator(kro,读作 “crow”)。该项目试图对 Kubernetes 资源的分组和部署方式进行标准化,使平台团队可以更轻松地部署工作负载。


该文指出,Kubernetes 没有提供一种可供平台团队使用的原生方法,让他们能够创建自定义资源组供开发团队使用,许多组织都是使用 Helm 或 Kustomize 等客户端模板工具,或构建自己的自定义 Kubernetes 控制器。事实证明,这些方法往往维护成本高昂,非专业人员难以有效使用。


有了 kro,你就可以将应用程序及其依赖项组合成单个资源,方便终端用户使用。

—— Abdelfettah Sghiouar 和 Nic Slattery


Kro 的核心创新是引入了 自定义资源 ResourceGraphDefinition 。Kro 将 Kubernetes 部署及其依赖项都封装到了单个 API 中,支持自定义终端用户界面,仅暴露供非平台工程师使用的参数。这种屏蔽隐藏了 Kubernetes 和云提供商 API 端点的复杂性,那在部署上下文中并没有用处。



该文大致介绍了两个真实的 kro 应用案例。在第一个场景中,平台工程师使用 kro 为组织成员提供自助服务访问权限,使他们可以创建 Google Kubernetes 引擎(GKE)集群,并且预先配置好了管理工作负载、策略和安全设置。第二个示例演示了 DevOps 工程师如何为 Web 应用程序创建可重复使用的定义,封装从部署和服务到监控代理和云存储的所有必要的资源。


对于当前云提供商提供的那些用于管理云资源的 Kubernetes 扩展,Kro 可与它们无缝集成。其中包括:AWS Kubernetes 控制器(ACK)、Google 配置连接器(KCC)和 Azure 服务操作员(ASO)。


Kro 可实现标准化、可重用的服务模板,促进不同项目和环境间的一致性,而且完全是 Kubernetes 原生的 。Kro 仍处于早期开发阶段。文中写道:“作为一个尚处于早期阶段的项目,kro 还不能用于生产,但我们仍然鼓励你在自己的 Kubernetes 开发环境中进行测试。”


在 AKS 工程博客上,Bridget Kromhout 和 Matthew Christopher 发表了一篇 文章,从微软的角度简要介绍了 kro 项目。对于这个旨在简化资源管理的 Kubernetes 原生工具,该文强调了微软 Azure 与 亚马逊云科技以及谷歌云三方的合作。Kromhout 和 Christopher 还提供了特定于 Azure 的实施案例,并强调了社区参与的机会。


我们以客户和云原生社区的需求为中心,提供一个无论你在哪里运行 K8s 集群都能有效使用的工具。

—— Matthew Christopher 和 Bridget KromhoutKro


网站上提供的演练教程深入浅出地解释了 kro 的工作原理,说明了 kro 如何创建 ResourceGraphDefinition 。它首先生成一个有向无环图(DAG),用于理解定义的依赖关系、验证它们并确定正确的部署顺序。然后,它会在 Kubernetes 集群中为该资源新建一个自定义资源定义(CRD)。


社区中有些评论认为,kro 有能力增强或取代其他成熟的工具,如 Crossplane(一个开源的 CNCF 项目,可让用户使用 Kubernetes 协调云资源)和 Helm(用于定义、安装和升级 Kubernetes 应用程序的软件包管理器)。


在 DevOps Toolkit 频道的一个 YouTube 视频中,Viktor Farcic 讨论了 kro 的发布。他还探讨了 kro 对 Crossplane 的影响。最初,Farcic 对 kro 简化云资源组合的潜力感到兴奋,并成功创建了一个简单的应用定义,生成了正确的 Kubernetes 资源。但是,Farcic 发现,对于比较复杂的场景,如涉及有条件资源创建和数据库集成,就会产生许多问题,像缺失默认值和所有者引用,以及资源组的更改无法正确地传播到现有资源。


他还指出,将 YAML 用于命令式结构并不理想,在一种并非为其设计的格式中添加更多的逻辑可能会导致 “恶果”。对于 Crossplane 社区来说,最重要的是,Farcic 对其用途提出了质疑,因为 kro 与现有工具的功能存在重叠。他指出,“kro 的功能与不久前创建的其他工具差不多,没有任何令人信服的改进。”虽然 kro 似乎语法更简单,模板更少,但他说,它目前只提供了 Crossplane 的一小部分功能,还不是一个可行的替代品,尤其是 Crossplane 支持多种语言。


在一篇题为 “Helm 杀手终于出现了吗?”的博文中,来自 Parity 公司的 Wilson Spearman 指出,Helm 的架构在管理依赖关系、处理 CRD 升级和管理生命周期等方面存在着根本性的限制,而 kro 的成功之处在于其语法更人性化、更易读。Spearman 最后预测,Helm 将继续为开源软件和小型组织提供服务,而 kro 则将在大型企业中占据主导地位。


Kro 项目已发布在 GitHub 上,由谷歌、亚马逊云科技和微软团队共同拥有,并欢迎社区为其开发做出贡献。项目网站上有全面的文档和示例。


原文链接:


https://www.infoq.com/news/2025/02/kube-resource-orchestrator/

2025-03-17 15:005713

评论

发布
暂无评论

Redis挂了,流量把数据库也打挂了,怎么办?

why技术

Java 面试

【Vue2.x 源码学习】第二十三篇 - 依赖收集 - 视图更新部分

Brave

源码 vue2 8月日更

为什么@Value可以获取配置中心的值?年薪超过80万!

JVM调优资料

Java 程序员 后端

Java开发热门前沿知识,架构师必备技能

Geek_f90455

Java 程序员 后端

FILECOIN矿池挖矿APP系统开发案例

获客I3O6O643Z97

挖矿矿池系统开发案例 fil挖矿

MediaMuxer实用封装

Changing Lin

8月日更

如何使用 DDD 指导微服务拆分?

架构精进之路

微服务 DDD 8月日更

中高级Java面试中你不得不会的知识点,附详细答案

JVM调优资料

Java 程序员 后端

Java多线程从基础到并发模型统统帮你搞定!面试总结

Geek_f90455

Java 程序员 后端

Java多线程实现方式及并发与同步,写的太详细了

Geek_f90455

Java 程序员 后端

手撸二叉树之最小高度树

HelloWorld杰少

数据结构与算法 8月日更

Java大厂74道高级面试合集,附面试题

Geek_f90455

Java 程序员 后端

【Jackson技术专题】全方位系统化学习和使用指南

码界西柚

Jackson JSON库 JSON序列化 8月日更

三面拼多多,一篇文章帮你解答

JVM调优资料

Java 程序员 后端

☕️【系统设计】如何设计出优雅且实用的API接口

李尚智

Java 架构设计 架构设计实战

Ubuntu 与 Mac 共享文件

TroyLiu

ubuntu 效率 Mac 文件传输 共享文件

Java工程师跳槽经验分享,看完跪了

Geek_f90455

Java 程序员 后端

Hudi自带工具DeltaStreamer的实时入湖最佳实践

华为云开发者联盟

大数据 Hudi

Java开发者值得深入思考的几个问题,建议收藏

Geek_f90455

Java 程序员 后端

是谁,在暗中观察

skow

Java 后端 Java设计模式 8月日更

用5W1H告诉你如何规划合理的测试策略

华为云开发者联盟

敏捷 敏捷开发 测试 测试策略 缺陷

十大排序算法--选择排序

Ayue、

排序算法 8月日更

Java开发岗还不会这些问题,一文轻松搞定

Geek_f90455

Java 程序员 后端

为什么spring能最好地改变Java?成功跳槽阿里!

JVM调优资料

Java 程序员 后端

Java开发究竟该如何学习,一文轻松搞定

Geek_f90455

Java 程序员 后端

Java开发者必须收藏的8个开源库,吊打面试官系列!

Geek_f90455

Java 程序员 后端

极光开发者周刊【No.0730】

极光GPTBots-极光推送

中高级Java大厂高频面试题,已开源下载

JVM调优资料

Java 程序员 后端

MySQL触发器介绍

Simon

MySQL

硬核万字长文,深入理解 Java 字节码指令(建议收藏)

沉默王二

Java

synchronized 加锁 this 和 class 的区别!

王磊

Java 并发 8月日更

云计算巨头合作开发全新 Kubernetes 资源管理工具_云原生_InfoQ精选文章