- 文档首页
容器服务
容器服务 VKE
用户指南
存储
文件存储(NAS)
NFS 访问方式
通过 NFS 使用 NAS 静态存储卷
NFS 访问方式
通过 NFS 使用 NAS 静态存储卷
通过 NFS 使用 NAS 静态存储卷
本文介绍如何创建文件存储类型存储卷和存储卷声明,以及工作负载如何使用文件存储静态存储卷。
前提条件
- (可选)已在本地安装 kubectl 工具,并通过 kubectl 连接目标集群。详情请参见 连接集群。
使用限制
有状态负载需要独占一个卷,暂不支持使用手动创建的存储卷声明。
通过控制台配置
步骤一:创建存储卷(PV)
- 在左侧导航栏中,选择 集群。单击目标集群名称,进入集群管理页面。
- 在集群管理页面左侧导航栏中,选择 存储管理 > 存储卷。单击 创建存储卷,配置存储卷。
-
步骤二:创建存储卷声明(PVC)
- 在集群管理页面左侧导航栏中, 存储管理 > 存储卷声明。单击 创建存储卷声明,配置存储卷声明。
-
步骤三:创建应用并挂载存储卷
文件存储类型的静态存储卷创建完成后,可通过添加卷的方式挂载到工作负载使用,包括:无状态负载、有状态负载、任务、定时任务、守护进程。
可通过创建工作负载或更新工作负载操作的容器配置步骤,为工作负载添加卷并挂载卷。详细操作,请参见 工作负载。
通过 kubectl 命令行配置
步骤一:创建存储卷(PV)
- 创建 PV 的 YAML 文件。示例文件vke-nas-static-pv.yaml代码如下:
name: vke-nas-static-pv
driver: nas.csi.volcengine.com
server: cnsha0d51***.vpc-3qda7du***.nas.ivolces.com
volumeHandle: vke-nas-static-pv
- nolock,proto=tcp,noresvport
persistentVolumeReclaimPolicy: Retain
kubectl create -f vke-nas-static-pv.yaml
步骤二:创建存储卷声明(PVC)
- 创建 PVC 的 YAML 文件。示例文件vke-nas-static-pvc.yaml代码如下:
kind: PersistentVolumeClaim
name: vke-nas-static-pvc
volumeName: vke-nas-static-pv
kubectl create -f vke-nas-static-pvc.yaml
- 执行以下命令,查看 PVC 与 PV 的静态绑定结果。
- 预期输出结果如下,表示 PVC 与 PV 静态绑定成功。
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS
vke-nas-static-pvc Bound vke-nas-static-pv 100Gi RWX
步骤三:创建应用并挂载存储卷
- 创建 Deployment 的 YAML 文件。示例文件vke-nas-static-deployment.yaml代码如下:
说明
如果有使用弹性容器实例 VCI 的需求,需要在spec.template.metadata.annotations中添加 vke.volcengine.com/burst-to-vci: enforce。VCI 具备全托管免运维、按需付费、沙箱容器安全隔离等优势,详细介绍参见 什么是弹性容器实例。 name: vke-nas-static-deployment
app: vke-nas-static-deployment
app: vke-nas-static-deployment
- image: doc-cn-beijing.cr.volces.com/vke/nginx-demo:v1.0
claimName: vke-nas-static-pvc
kubectl create -f vke-nas-static-deployment.yaml
按照上文示例创建工作负载并挂载存储卷后,您可以通过以下方式验证存储卷的挂载和持久化存储。
- 执行以下命令,查看存储卷是否正确挂载到 Pod 的指定路径。
kubectl exec vke-nas-static-deployment-xxx -- df | grep tmp
cnshbb5***.3qda7du***.nas.ivolces.com:/temp 10995116277760 0 10995116277760 0% /tmp
- 查看 Pod 中的挂载路径,即查看存储卷中的数据。
kubectl exec vke-nas-static-deployment-xxx -- ls /tmp
kubectl exec vke-nas-static-deployment-xxx -- touch /tmp/test
kubectl delete pod vke-nas-static-deployment-xxx
kubectl exec vke-nas-static-deployment-xxx -- ls /tmp
- 预期返回如下,可以看到存储卷中写入的文件依然存在,未随着 Pod 的删除而被删除,实现了数据的持久化存储。
最近更新时间:2026.06.01 16:47:21