本文介绍挂载及卸载CPFS文件系统的操作。

背景信息

文件存储CPFS兼容POSIX接口,通过安装CPFS客户端、挂载文件系统即可使用。文件存储CPFS客户端提供定制化服务,支持在Ubuntu操作系统和CentOS操作系统中安装使用。

准备工作

请您按照以下操作步骤完成安装CPFS客户端前的准备工作。

  • Ubuntu操作系统
    1. 执行以下命令安装软件依赖包。
      apt-get -y install linux-headers-`uname -r` cpp gcc binutils
      若返回信息为Unable to locate packages linux-headers时,表示apt源缺少对应版本的linux-headers包,可以在Ubuntu官网下载对应的linux-headers包并安装。
    2. 执行以下命令检查linux-headers包版本和kernel版本的一致性。
      dpkg -l | grep linux-headers-`uname -r`
  • CentOS操作系统
    1. 执行以下命令安装软件依赖包。
      yum -y install kernel-devel-`uname -r` cpp gcc gcc-c++ binutils
      如返回信息为No package kernel-devel available时,表示yum源缺少对应版本的kernel-devel包。请执行uname -r命令确定kernel版本,然后在CentOS官网下载对应的kernel-devel包并安装或执行以下命令从阿里云CPFS的kernel资源链接下载对应的kernel-devel包并安装。
      wget https://cpfs-client.oss-cn-beijing.aliyuncs.com/kernel/kernel-devel-`uname -r`.rpm
    2. 执行以下命令检查kernel-devel包版本和kernel版本的一致性。
      rpm -qa | grep kernel-devel-`uname -r`

挂载文件系统

  1. 查询挂载点对应的管理节点安全组信息。
    1. 登录云服务器ECS控制台
    2. 在左侧导航栏,单击网络与安全 > 安全组
    3. 安全组列表页面,在顶部下拉列表选中安全组名称并输入文件系统ID/名称,单击搜索
    4. 记录目标安全组信息。
      管理节点安全组的名称结构为:<FSID>-<GENID>-qr-sg。

      其中,<FSID>为CPFS文件系统ID;<GENID>为挂载点的序列号,每次创建CPFS挂载点时递增。

      1
  2. 添加云服务器ECS实例到挂载点对应的管理节点安全组。
    1. 登录云服务器ECS控制台
    2. 在左侧导航栏,单击实例
    3. 实例列表页面,找到需要挂载CPFS文件系统的ECS实例,单击更多 > 网络和安全组 > 加入安全组
    4. ECS实例加入安全组对话框的安全组下拉列表中,选中步骤1查询到的管理节点安全组(<FSID>-<GENID>-qr-sg),单击确定223
  3. 添加云服务器ECS实例到CPFS客户端集群。
    1. 登录NAS控制台
    2. 在左侧导航栏,单击文件系统 > 文件系统列表
    3. 文件系统列表页面,单击目标文件系统名称,进入文件系统详情页,单击挂载使用
    4. 客户端管理节点区域,列表中第一个ECS实例默认为CPFS客户端安装节点,远程连接该ECS实例,详情请参见连接方式介绍
    5. 在CPFS安装节点ECS上,执行以下命令为目标ECS安装CPFS客户端,并将目标ECS加入客户端集群中。
      cpfs add <目标ECS 1内网IP> <目标ECS 2内网IP> <目标ECS 3内网IP>
      示例:
      cpfs add 192.168.1.249 192.168.1.250 192.168.1.251
      说明
      • 添加ECS实例时,请输入目标ECS的内网IP。
      • 客户端不能使用相同的hostname。
      • 可添加一个或多个ECS实例,当添加多个ECS实例时,目标ECS的内网IP以空格隔开。
      • 添加的ECS实例个数越多,命令运行的时间越长,平均添加一个ECS实例耗时约2分钟。建议您在执行添加ECS实例命令时以screen、nohup等方式后台运行。
    6. 执行mmlscluster命令,确认node列表中已包含目标ECS实例。
      # mmlscluster
        Node  Daemon node name     IP address      Admin node             name Designation
      
      -----------------------------------------------------------------------------------------------------------
      
         1  cpfs-xxx-000001-qr-001  192.168.1.77  cpfs-xxx-000001-qr-001   quorum-manager-perfmon
      
         2  cpfs-xxx-000001-qr-002  192.168.1.78  cpfs-xxx-000001-qr-002   quorum-manager-perfmon
      
         3  cpfs-xxx-000001-qr-003  192.168.1.79  cpfs-xxx-000001-qr-003   quorum-manager-perfmon
      
        21   xxx-client01           192.168.1.98  xxx-client01              perfmon
      
                                      
      将目标ECS实例加入客户端管理节点后,文件系统会自动挂载在默认路径/cpfs/<FSID>上,您可以通过mmlsfs <FSID> -T命令查询默认路径。
      # mmlsfs xxx -T
      File system attributes for xxx.ali.net:/dev/xxx:
      ====================================================
      flag      value             description
      ----------------------------------------------------
       -T      /cpfs/xxx-000001   Default mount point
      
                                      
      您也可以使用mount --bind命令,通过自定义路径访问CPFS文件系统。
      # mount --bind /cpfs/xxx-000001 /mnt/test
      其中,/cpfs/xxx-000001为CPFS文件系统默认挂载路径;/mnt/test为自定义挂载路径。
      说明
      • CPFS文件系统安装节点不允许自定义挂载路径。
      • 不支持子目录挂载。

卸载文件系统

  1. 在ECS实例上,执行umount命令。
     umount /mnt/test
    说明
    • 若当前挂载路径为自定义挂载路径,则执行umount命令只是将文件系统的挂载路径恢复为默认挂载路径,请您再次执行umount命令卸载CPFS文件系统。
    • 如果返回信息为target is busy,表示文件系统正在使用中,请您停止使用后再执行卸载命令。
  2. 在CPFS安装节点ECS上,执行以下命令将目标ECS实例移除。
    cpfs del <目标ECS 1内网IP> <目标ECS 2内网IP> <目标ECS 3内网IP>
    示例:
    cpfs del 192.168.1.249 192.168.1.250
    说明
    • 移除ECS实例时,请输入目标ECS的内网IP。
    • 可移除一个或多个ECS实例,当移除多个ECS实例时,目标ECS的内网IP以空格隔开。
    • 移除的ECS实例个数越多,命令运行的时间越长,平均移除一个ECS实例耗时约1分钟。建议您在执行移除ECS实例命令时以screen、nohup等方式后台运行。