设置文件存储挂载参数
本章节主要介绍如何设置文件存储的挂载参数。您可以在PV中设置挂载参数,然后通过PVC绑定PV
前提条件
您需要通过命令行创建,需要使用ccictl连接到CCI 2.0,详情请参见ccictl配置指南。
文件存储挂载参数
CCI2.0在挂载文件存储时默认设置了如表1所示的参数。
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
vers |
是 |
Int |
参数解释:文件系统版本,目前只支持NFSv3 约束限制:取值为3。 |
nolock |
是 |
String |
参数解释:选择是否使用NLM协议在服务器上锁文件。当选择nolock选项时,锁对于同一主机的应用有效,对不同主机不受锁的影响。 默认值:nolock。 |
timeo |
是 |
Int |
参数解释:NFS客户端重传请求前的等待时间(单位为0.1秒)。 默认值:600。 |
hard/soft |
是 |
String |
参数解释:挂载方式类型。
默认值:hard。 |
除了以上参数外,您还可以设置其他的文件存储挂载参数,具体请参见挂载NFS文件系统到云服务器(Linux)。
在PV中设置挂载参数
在PV中设置挂载参数可以通过mountOptions字段实现,如下所示,mountOptions支持挂载的字段请参见文件存储挂载参数。
- 在PV中设置挂载参数,示例如下:
apiVersion: cci/v2 kind: PersistentVolume metadata: name: pv-sfs spec: accessModes: - ReadWriteMany # 访问模式,文件存储必须为ReadWriteMany capacity: storage: 1Gi # 存储容量大小,此处仅为校验需要(不能为空和0),设置的大小不起作用 csi: driver: nas.csi.everest.io # 挂载依赖的存储驱动 fsType: nfs volumeHandle: <your_volume_name> # 通用文件系统名称 volumeAttributes: everest.io/share-export-location: <your_location> # 文件存储的共享路径 everest.io/sfs-version: sfs3.0 # 使用通用文件系统 persistentVolumeReclaimPolicy: Retain # 回收策略 storageClassName: csi-sfs # 通用文件系统 mountOptions: # 挂载参数 - vers=3 - nolock - timeo=600 - hard
- PV创建后,可以创建PVC关联PV,然后在工作负载的容器中挂载,具体操作步骤请参见设置文件存储挂载参数。
- 验证挂载参数是否生效。
本例中将PVC挂载至使用nginx:latest镜像的工作负载,并通过mount -l命令查看挂载参数是否生效。
- 查看已挂载文件存储的Pod,本文中的示例工作负载名称为web-sfs。
ccictl get pod -n test-sfs-v1 | grep web-sfs
回显如下:
web-sfs-*** 1/1 Running 0 23m
- 执行以下命令查看挂载参数,其中web-sfs-***为示例Pod。
ccictl exec -it web-sfs-*** -n test-sfs-v1 -- mount -l | grep nfs
若回显中的挂载信息与设置的挂载参数一致,说明挂载参数设置成功。
<您的共享路径> on /data type nfs (rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,nolock,noresvport,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=**.**.**.**,mountvers=3,mountport=2050,mountproto=tcp,local_lock=all,addr=**.**.**.**)
- 查看已挂载文件存储的Pod,本文中的示例工作负载名称为web-sfs。