Kubernetes 变更块跟踪 API:Beta 版本的变化

CSI 驱动的变更块跟踪(Changed Block Tracking,CBT)支持于2025年9月以Alpha版本发布。随着 external-snapshot-metadata 项目在2026年3月发布 v1.0.0,这项功能进入了Beta阶段。

如果你还不熟悉 Kubernetes 存储中的变更块跟踪,Alpha发布公告介绍了提出这一功能的动机、三个主要组件——CSI SnapshotMetadata gRPC 服务、SnapshotMetadataService CRD,以及 external-snapshot-metadata 边车容器——并逐步说明如何使用该API。目前,CBT适用于块卷;这项功能不涵盖文件卷或网络文件共享的变更列表跟踪。本文重点介绍Beta版本的变化。

Beta版本有哪些变化

这次发布的主要变化,是将 SnapshotMetadataService CRD 从 v1alpha1 升级到 v1beta1。用于公布驱动元数据服务的CRD,现在提供 cbt.storage.k8s.io/v1beta1 版本。模式本身没有变化,但这次发布移除了 v1alpha1,并没有在提供新版本的同时继续提供旧版本。如果你要从Alpha升级,需要:

  • 重新应用 v1.0.0 随附的CRD定义。
  • 更新 SnapshotMetadataService 清单,使用 apiVersion: cbt.storage.k8s.io/v1beta1。
  • 更新所有与该CRD交互的客户端或控制器代码。

兼容性

  • Kubernetes最低版本:1.33。
  • CSI规范:1.10或更新版本。
  • 容器镜像:registry.k8s.io/sig-storage/csi-snapshot-metadata:v1.0.0。

试用

Alpha博客中的入门章节仍然适用。简要步骤如下:

  1. 确保你的CSI驱动支持卷快照,并随附 external-snapshot-metadata 边车容器。
  2. 安装 SnapshotMetadataService CRD,使用 v1.0.0 版本中的 v1beta1 定义。
  3. 为你的驱动创建一个 SnapshotMetadataService 资源。
  4. 使用客户端——snapshot-metadata-lister 或你自己的实现——调用 GetMetadataAllocated 和 GetMetadataDelta。

如果希望看到完整的端到端流程,hostpath驱动示例是一个很好的起点。

接下来有什么计划

在功能走向正式可用(GA)之前,Beta周期余下阶段的重点是让更多CSI驱动采用该功能,并收集运行方面的反馈。如果你维护CSI驱动,现在正适合评估加入支持。如果你正在基于该API构建备份应用,也非常欢迎你就流式客户端和迭代器包提供反馈。

在哪里可以了解更多

如何参与

这项工作凝聚了SIG Storage中许多人的贡献。非常感谢所有在功能从Alpha走向Beta的过程中帮助审查、编写代码和测试的人:

如果希望参与Kubernetes中的CSI或存储工作,可以从SIG Storage开始。数据保护工作组也会定期举行会议,随时欢迎新参与者。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容