本文发表于一年多前。旧文章可能包含过时内容。请检查页面中的信息自发布以来是否已变得不正确。
Kubernetes 1.29:PersistentVolumes 的单 Pod 访问模式进阶为稳定版
随着 Kubernetes v1.29 的发布,ReadWriteOncePod
卷访问模式已正式发布:它已成为 Kubernetes 稳定版 API 的一部分。在这篇博客文章中,我将详细介绍这种访问模式及其功能。
什么是 ReadWriteOncePod
?
ReadWriteOncePod
是 Kubernetes v1.22 中引入的 PersistentVolumes (PVs) 和 PersistentVolumeClaims (PVCs) 的一种访问模式。此访问模式允许您将卷访问限制为集群中的单个 Pod,确保一次只有一个 Pod 可以写入卷。这对于需要单写入器访问存储的有状态工作负载特别有用。
有关访问模式以及 ReadWriteOncePod
工作原理的更多上下文,请阅读 2021 年的《PersistentVolumes 引入单 Pod 访问模式》一文中的什么是访问模式以及它们为何重要?
如何开始使用 ReadWriteOncePod
?
ReadWriteOncePod
卷访问模式在 Kubernetes v1.27 及更高版本中默认可用。在 Kubernetes v1.29 及更高版本中,Kubernetes API 始终识别此访问模式。
请注意,ReadWriteOncePod
仅支持 CSI 卷,并且在使用此功能之前,您需要将以下 CSI 边车容器 更新到这些或更高版本。
要开始使用 ReadWriteOncePod
,您需要创建一个具有 ReadWriteOncePod
访问模式的 PVC。
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: single-writer-only
spec:
accessModes:
- ReadWriteOncePod # Allows only a single pod to access single-writer-only.
resources:
requests:
storage: 1Gi
如果您的存储插件支持动态配置,那么将创建新的 PersistentVolumes 并应用 ReadWriteOncePod
访问模式。
阅读迁移现有 PersistentVolumes以了解将现有卷迁移到使用 ReadWriteOncePod
的详细信息。
我如何了解更多信息?
有关 ReadWriteOncePod
访问模式的更多详细信息和 CSI 规范更改的动机,请参阅博客文章 alpha、beta 和 KEP-2485。
我如何参与?
Kubernetes #csi Slack 频道以及任何标准的SIG Storage 通信渠道都是联系 SIG Storage 和 CSI 团队的好方法。
特别感谢以下人士,他们的深思熟虑的审查和反馈帮助塑造了此功能
- Abdullah Gharaibeh (ahg-g)
- Aldo Culquicondor (alculquicondor)
- Antonio Ojea (aojea)
- David Eads (deads2k)
- Jan Šafránek (jsafrane)
- Joe Betz (jpbetz)
- Kante Yin (kerthcet)
- Michelle Au (msau42)
- Tim Bannister (sftim)
- Xing Yang (xing-yang)
如果您有兴趣参与 CSI 或 Kubernetes 存储系统的任何部分的设计和开发,请加入 Kubernetes 存储特别兴趣小组 (SIG)。我们正在迅速发展,并随时欢迎新的贡献者。