设置对象存储挂载参数
本章节主要介绍如何设置对象存储的挂载参数。您可以在PV中设置挂载参数,然后通过PVC绑定PV。
对象存储挂载参数
CCI 2.0在挂载对象存储时默认设置了表1和表2的参数,其中表1中的参数不可取消。除了这些参数外,您还可以设置其他的对象存储挂载参数。
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| use_ino | 是 | 无需填写参数值 | 参数解释:使用该选项,由obsfs分配inode编号。读写模式下自动开启。 |
| big_writes | 是 | 无需填写参数值 | 参数解释:配置后可更改写缓存最大值大小。 |
| nonempty | 是 | 无需填写参数值 | 参数解释:允许挂载目录非空。 |
| allow_other | 是 | 无需填写参数值 | 参数解释:允许其他用户访问挂载目录。 |
| no_check_certificate | 是 | 无需填写参数值 | 参数解释:不校验服务端证书。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| max_write | 否 | Int | 参数解释:仅配置big_writes的情况下才生效,推荐使用128KB。 默认取值:131072 |
| ssl_verify_hostname | 否 | Int | 参数解释:不根据主机名验证SSL证书。 默认取值:0 |
| max_background | 否 | Int | 参数解释:可配置后台最大等待请求数,对象存储自动使用。 默认取值:100 |
| umask | 否 | Int | 参数解释:配置文件权限的掩码。例如,如果umask值为022,而目录最大权限为777,则设置umask后该目录权限为777 - 022 = 755,即rwxr-xr-x。 默认取值:0 |
在PV中设置挂载参数
在PV中设置挂载参数可以通过mountOptions字段实现,如下所示,mountOptions支持挂载的字段请参见对象存储挂载参数。
- 使用ccictl连接CCI2.0。
- 在PV中设置挂载参数,示例如下:
apiVersion: cci/v2 kind: PersistentVolume metadata: name: pv-obs # PV的名称 spec: accessModes: - ReadWriteMany # 访问模式,对象存储必须为ReadWriteMany capacity: storage: 1Gi # 存储容量大小,此处仅为校验需要(不能为空和0),设置的大小不起作用 csi: driver: obs.csi.everest.io # 挂载依赖的存储驱动 fsType: obsfs # 实例类型 volumeHandle: <your_file_system_name> # 对象存储的名称 nodePublishSecretRef: # 设置对象存储的密钥 name: <your_secret_name> # Secret的名称 namespace: <your_namespace> # Secret的命名空间 persistentVolumeReclaimPolicy: Retain # 回收策略 storageClassName: csi-obs # 存储类名称 mountOptions: # 挂载参数 - umask=027
- PV创建后,可以创建PVC关联PV,然后在工作负载的容器中挂载,具体操作步骤请参见通过静态存储卷使用已有对象存储。
- 验证挂载参数是否生效。
本例中将PVC挂载至使用nginx:latest镜像的工作负载,可以登录到运行挂载对象存储卷的Pod内的容器,进入obs挂载目录下执行以下命令观察进程详情:
ls -lh
回显如下所示:total 1K -rwxr-x--- 1 root root 5 May 22 11:56 1.txt #文件为桶内的文件 -rwxr-x--- 1 root root 4 Jun 3 08:07 2.txt