
# 设置文件存储挂载参数
本章节主要介绍如何设置文件存储的挂载参数。您可以在PV中设置挂载参数，然后通过PVC绑定PV
#### 前提条件
您需要通过命令行创建，需要使用ccictl连接到CCI 2.0，详情请参见[ccictl配置指南](https://support.huaweicloud.com/devg-cci2/cci_ccictl_02.html)。
 #### 文件存储挂载参数
CCI 2.0在挂载文件存储时默认设置了如[表1]所示的参数。
 表1文件存储挂载参数 
| 参数        | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| vers      | 是    | Int    | 参数解释：文件系统版本，目前只支持NFSv3 约束限制：取值为3。                                                                                                                                                                                                                                       |
| nolock    | 是    | String | 参数解释：选择是否使用NLM协议在服务器上锁文件。当选择nolock选项时，锁对于同一主机的应用有效，对不同主机不受锁的影响。 默认值：nolock。                                                                                                                                                                                             |
| timeo     | 是    | Int    | 参数解释：NFS客户端重传请求前的等待时间(单位为0.1秒)。 默认值：600。                                                                                                                                                                                                                                  |
| hard/soft | 是    | String | 参数解释：挂载方式类型。 - 取值为hard，即使用硬连接方式，若NFS请求超时，则客户端一直重新请求直至成功。  - 取值为soft，即软挂载方式挂载系统，若NFS请求超时，则客户端向调用程序返回错误。   默认值：hard。 |
   
除了以上参数外，您还可以设置其他的文件存储挂载参数，具体请参见[挂载NFS文件系统到云服务器（Linux）](https://support.huaweicloud.com/usermanual-sfs/zh-cn_topic_0034428728.html)。
#### 在PV中设置挂载参数
在PV中设置挂载参数可以通过mountOptions字段实现，如下所示，mountOptions支持挂载的字段请参见[文件存储挂载参数]。
1. 在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
   ```
   
   
2. PV创建后，可以创建PVC关联PV，然后在工作负载的容器中挂载，具体操作步骤请参见[设置文件存储挂载参数](https://support.huaweicloud.com/usermanual-cci2/cci_01_0662.html)。
3. 验证挂载参数是否生效。 
   本例中将PVC挂载至使用nginx:latest镜像的工作负载，并通过**mount -l** 命令查看挂载参数是否生效。
   1. 查看已挂载文件存储的Pod，本文中的示例工作负载名称为web-sfs。
      ```
      ccictl get pod -n test-sfs-v1 | grep web-sfs
      ```
      回显如下：
      ```
      web-sfs-***   1/1     Running   0             23m
      ```
      
   
   2. 执行以下命令查看挂载参数，其中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=**.**.**.**)
      ```
      
    
   
   
 
