vSphere IaaS control plane 支持处于 ReadWriteMany 模式的持久卷。借助 ReadWriteMany 支持,TKG 集群中运行的多个 Pod 或应用程序可以同时挂载单个卷。vSphere IaaS control plane 将 vSAN 文件共享支持的 CNS 文件卷用于 ReadWriteMany 持久卷。要使用 vSAN 共享,您需要在 vSAN 环境中设置 vSAN 文件服务,并在 主管 激活文件卷支持。
文件卷的注意事项
在 vSphere IaaS control plane 中为持久卷启用文件卷支持时,请记住以下注意事项。
- 仅 Tanzu Kubernetes Grid 集群中的工作负载支持文件卷。主管 命名空间中的工作负载(如 vSphere Pod 和虚拟机服务虚拟机)不支持文件卷。
- 在 Kubernetes 中请求 RWX 卷时,vSAN 文件服务会创建请求大小的基于 NFS 的文件共享和相应 SPBM 策略。每个 RWX 卷创建一个 vSAN 文件共享。VMware 支持每个 vSAN 文件服务集群 100 次共享,这意味着您拥有的 RWX 卷数不能超过 100 个。
- 对于 TKG 集群,请使用 TKr 版本 1.22 或更高版本。
有关信息,请参见 VMware Tanzu Kubernetes 版本发行说明。
- 为 vSphere IaaS control plane 启用文件卷支持时,请注意潜在的安全漏洞:
- 挂载卷时不进行加密。在数据通过网络传输时,可能会访问未加密的数据。
- 文件共享使用访问控制列表 (ACL) 隔离主管命名空间中的文件共享访问。可能存在 IP 欺骗风险。
- 遵循以下网络连接准则:
- 如果在 vSphere IaaS control plane 中使用 NSX 进行网络连接,请确保 主管 命名空间已启用 NAT 模式。请参见在 主管 上创建并配置 vSphere 命名空间。
- 确保可从工作负载网络路由 vSAN 文件服务,并且在工作负载网络和 vSAN 文件服务 IP 地址之间没有 NAT。
- 对 vSAN 文件服务和 vSphere IaaS control plane 使用通用 DNS 服务器。
- 如果在启用了文件卷支持之后,稍后将其取消激活,则在集群中置备的现有 ReadWriteMany 持久卷仍不受影响且可用。您将无法创建新的 ReadWriteMany 持久卷。
为持久卷启用文件卷支持的工作流
按照以下过程启用文件卷支持。
- vSphere 管理员设置配置了 vSAN 文件服务的 vSAN 集群。
- 请参见启用 vSAN 文件服务和配置文件服务。
- 有关在具有 vSAN 延伸集群的环境中的特定设置,请参见具有延伸集群的 vSAN 文件服务。
- vSphere 管理员可在 主管 中激活文件卷支持。
请参见安装和配置 vSphere IaaS 控制平面文档中的更改主管上的存储设置。
- DevOps 工程师置备将 PVC
accessMode
设置为ReadWriteMany
的持久卷。可以使用同一 PVC 置备多个 pod。
例如:apiVersion: v1 kind: PersistentVolumeClaim metadata: name: my-pvc spec: accessModes: - ReadWriteMany storageClassName: gold resources: requests: storage: 3Gi