写点什么

Argo CD v3.1 引入 OCI 支持并增强用户界面

作者:Claudio Masolo

  • 2025-09-02
    北京
  • 本文字数:1503 字

    阅读完需:约 5 分钟

大小:732.74K时长:04:10
Argo CD v3.1 引入 OCI 支持并增强用户界面

Argo 项目宣布发布 Argo CD v3.1,这是自基础版 v3.0 发布以来的首次重大功能更新。这个版本引入了 OCI 注册表支持、CLI 插件、增强的 Hydrator 功能和改进的用户界面,使这款 GitOps 工具能够更广泛地应用于企业环境。

 

v3.1 中新增的最重要的功能是原生支持将 Open Container Initiative (OCI) 注册表作为 Kubernetes 配置工件源。这一功能是由 Akuity 的 Blake Pettersson 领导完成的,它允许组织使用与容器镜像相同的注册表来存储和分发部署配置。

 

公告中写道,“随着 OCI 注册表越来越多地被用来存储除容器镜像之外的内容,越来越多的项目开始支持使用 OCI 作为存储机制”。这样,对于任何遵循镜像和分发规范并且兼容 OCI 的注册表, Argo CD 都能够从中拉取打包为 OCI 工件的 Kubernetes 清单。这增强了安全性和可移植性,也契合了行业的发展趋势,即使用 OCI 注册表作为通用工件仓库,超越了它们传统上作为容器镜像存储的角色。

 

在 v3.1 中,Hydrator 组件有了显著的改进,特别是在提交关联能力方面。新功能允许 Hydrator 通过捕获存储库 URL、提交 SHA 哈希、作者信息和提交消息,将 dry 提交与上游代码提交关联起来。这一元数据增强由 Intuit 的 Crenshaw 所贡献,未来的 UI 改进将能够显示更丰富的配置更改上下文。该功能解决了 GitOps 工作流中的一个常见痛点:清单变更往往只是对应代码变更的简单镜像标签更新,导致难以追溯应用程序代码与部署配置之间的关联关系。

 

鉴于 Kubernetes 社区正向服务器端 apply 迁移,v3.1 引入了客户端 apply 迁移能力。这一功能可以帮助组织将现有资源从 kubectl 客户端 apply 迁移到 Argo CD 的服务器端 apply 管理。迁移支持包括通过注解指定自定义字段管理器,在从弃用的 operator 或工具迁移到 Argo CD 管理时,这特别有价值。

 

该版本在 UI 中引入了新的参数化操作,增强了 Argo CD 作为综合性 Kubernetes 仪表板的地位。现在,用户可以直接从界面扩展部署和有状态集,而无需修改配置文件或使用 kubectl 命令。这一功能是专门为非技术用户设计的,使他们不必具备深厚的 Kubernetes 专业知识就可以进行操作。用户界面改进涵盖了 ApplicationSet Progressive Sync 功能增强,为该功能在未来版本中进入 Beta  发布做好准备。


从 Argo CD UI 扩展资源

 

遵循 Kubernetes 的 kubectl 插件模型,v3.1 为 argocd 命令行工具引入了 CLI 插件支持。这一可扩展性功能允许组织创建能与 Argo CD CLI 无缝集成的自定义命令,实现特定于工作流的自动化和工具。

 

该版本包括多项便利性改进,包括应用程序的显式自动同步配置,以及可将 SkipDryRunOnMissingResource 设置为应用程序的同步选项而不需要使用注解。

 

平台更新包括在所有构建和 CI 流程中采用 Go 1.24.4,并升级了一些主要的库,包括 google/go-github v69、Azure DevOps Go API v7 ,增强了 GitHub Actions 安全范围。

 

感兴趣的读者可以在项目的 GitHub 页面上查看完整的发布说明

 

Argo CD v3.1 的发布正值 GitOps 市场持续成熟之际,其主要开源竞争对手仍然是 Flux CD 。尽管这两个工具都服务于 GitOps 范式,但它们在架构方法上有很大的不同。作为一组松耦合的控制器,Flux 遵循 Kubernetes operator 模式,而 Argo CD 则提供了更为集中化的仪表板体验。Argo CD 中新增的 OCI 支持使其更趋近于 Flux —— 后者自 2021 年以来便通过其源控制器支持 OCI 工件。然而在企业环境中,凭借全面的用户界面和多租户特性,Argo CD 仍然具有显著的优势,尤其是在可视化管理和基于角色的访问控制成为优先考量事项时。

 

声明:本文为 InfoQ 翻译,未经许可禁止转载。

 

原文链接:

https://www.infoq.com/news/2025/08/argocd-oci-support-new-ui/

2025-09-02 09:522838

评论

发布
暂无评论

Redis(二十一):复制

Java 程序员 后端

Redis哨兵原理,我忍你很久了!

Java 程序员 后端

Redis哨兵模式原理剖析,监控、选主、通知客户端你真的懂了吗?

Java 程序员 后端

Redis(二十六):Sentinel—

Java 程序员 后端

Redis的各种用途以及使用场景(1)

Java 程序员 后端

RocketMQ msgId与offsetMsgId释疑(实战篇)

Java 程序员 后端

Redis持久化方式AOF技术原理?一文带你从底层彻底吃透

Java 程序员 后端

RocketMQ 千锤百炼--哈啰在分布式消息治理和微服务治理中的实践

Java 程序员 后端

SAP为Java 16贡献JEP 387 “弹性元空间”

Java 程序员 后端

RocketMQ消息丢失场景及解决办法

Java 程序员 后端

macOS 环境安装Flutter

坚果

flutter 11月日更 安装部署

redis数据迁移之redis-shake

Java 程序员 后端

Redis的各种用途以及使用场景

Java 程序员 后端

RocketMQ 主从同步读写分离机制

Java 程序员 后端

Serverless 如何在阿里巴巴实现规模化落地?

Java 程序员 后端

Redis(十八):服务器

Java 程序员 后端

RocketMQ一行代码造成大量消息发送失败

Java 程序员 后端

RocketMQ消息丢失场景及解决办法(1)

Java 程序员 后端

【Flutter 专题】12 图解圆形与权重/比例小尝试

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 11月日更

redis之单机多节点集群

Java 程序员 后端

Redis安装与部署新手入门教程

Java 程序员 后端

Redis实现feed流

Java 程序员 后端

Redis(十一):键的生存时间与过期时间

Java 程序员 后端

RocketMQ源码分析之NameServer

Java 程序员 后端

Redis 的持久化机制和AOF文件重写原理

Java 程序员 后端

Redis(四):整数集合

Java 程序员 后端

Redis小白入门教程

Java 程序员 后端

Redis实现feed流(1)

Java 程序员 后端

Redis常用命令总结

Java 程序员 后端

Redis(十六):事件

Java 程序员 后端

RocketMQ消息轨迹-设计篇

Java 程序员 后端

Argo CD v3.1 引入 OCI 支持并增强用户界面_软件工程_InfoQ精选文章