文档

在Linux云电脑挂载CPFS文件系统

您可以通过NFS协议服务将CPFS文件系统挂载至对应办公网络内的云电脑上。挂载成功后,您可以在云电脑上把CPFS文件系统当作一个普通的目录来访问和使用。本文介绍将CPFS文件系统挂载到云电脑的相关操作。

背景信息

文件存储CPFS(Cloud Paralleled File System)是阿里云推出的全托管、可扩展并行文件系统,满足AI训练、自动驾驶、工业仿真等高性能计算场景的需求。详细信息,请参见什么是文件存储CPFS

CPFS提供NFS协议服务,通过CPFS-NFS客户端在无影云电脑环境中进行挂载访问,可以实现云电脑对CPFS文件系统中的数据进行单机训练、仿真、调试和管理。详细信息,请参见协议服务概述

支持范围

仅Linux操作系统的云电脑支持挂载CPFS文件系统,Windows操作系统的云电脑不支持挂载CPFS文件系统。

支持的Linux操作系统版本

操作系统

镜像名称

Linux Ubuntu 18.04

Linux-Ubuntu-1804

Linux-Ubuntu-1804 vGPU

Linux Ubuntu 20.04

Linux-Ubuntu-2004

Linux-Ubuntu-2004 vGPU

Linux CentOS 7.9

Linux-CentOS-79

Linux-CentOS-79 vGPU

计费说明

当您使用CPFS存储文件时,CPFS会根据您存储的类型、大小、时长收取费用。如果您的业务涉及数据流动和协议服务时,CPFS会收取带宽费用。有关CPFS的计费详情,请参见计费概述

前提条件

步骤一:创建CPFS文件系统、协议服务和导出目录

  1. 开通CPFS服务。

    首次登录NAS控制台,您需要根据页面提示开通CPFS服务。

  2. 完成云资源访问授权。

    1. 登录NAS控制台

    2. 在左侧导航栏单击概览

    3. 概览页右侧的常用入口区域,单击授权管理

    4. 授权管理面板的极速型和CPFS默认服务授权区域单击前往授权,并在弹出的新页面上单击同意授权

      完成后即可完成AliyunNASMangeENIRole授权。

  3. 创建CPFS文件系统。具体操作,请参见创建CPFS文件系统

  4. (可选)创建Fileset。具体操作,请参见创建Fileset

    创建Fileset用于导出数据,创建NFS挂载点。Fileset比普通目录具备更强的功能,例如文件数量限制、数据流动等。

  5. NAS控制台文件系统列表页面,找到已创建的CPFS文件系统,单击该文件系统ID,然后创建协议服务和导出目录配置。

    使用NFS协议访问CPFS文件系统,您需要配置协议服务生成云电脑用于挂载CPFS文件系统的挂载地址。

  6. 记录挂载地址。

    1. 找到上一步创建的协议服务ID,在该协议服务的操作列单击导出目录

    2. 在该协议服务的挂载地址列单击挂载地址,然后记录挂载地址。

步骤二:开通并部署云电脑

  1. 创建办公网络

    按照账号系统类型,办公网络可以分为便捷办公网络和AD办公网络。本文以创建便捷办公网络为例。详细信息,请参见创建和管理基于便捷账号的办公网络创建并配置AD办公网络

    重要

    您需要保证办公网络的IPv4网段是CPFS文件系统所绑定的VPC网段中未使用网段的子集。

    例如:创建CPFS文件系统所绑定的VPC网段为10.0.0.0/8,那么设置IPv4网段时应该选择10网段的子集,例如设置为10.0.1.0/24。

  2. 创建用户。具体操作,请参见创建便捷用户

  3. 创建云电脑。具体操作,请参见创建云电脑

  4. 连接云电脑。具体操作,请参见快速入门

步骤三:挂载CPFS-NFS客户端

在不同的Linux操作系统类型中安装CPFS-NFS客户端的方式有所差异。详细信息,请参见CPFS-NFS客户端挂载文件系统(推荐)。本文以Linux Ubuntu操作系统为例,介绍如何下载、安装和挂载CPFS-NFS客户端。

  1. 执行以下命令,下载CPFS-NFS客户端。

    sudo wget https://cpfs-hangzhou-nfs-client.oss-cn-hangzhou.aliyuncs.com/aliyun-alinas-utils-latest.deb -O /tmp/aliyun-alinas-utils-latest.deb
  2. 依次执行以下命令,安装CPFS-NFS客户端。

    1. sudo apt update
    2. sudo apt-get install /tmp/aliyun-alinas-utils-latest.deb
  3. 执行以下命令,检查CPFS-NFS客户端安装结果。

    which mount.cpfs-nfs

    如果回显结果中包含如下类似信息,说明CPFS-NFS客户端安装成功。

    /usr/sbin/mount.cpfs-nfs
  4. 执行以下命令,挂载CPFS文件系统。

    sudo mount -t cpfs-nfs -o vers=3,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport file-system-id.region.cpfs.aliyuncs.com:/share/path /mnt

    挂载命令中的参数说明如下表所示。

    参数

    描述

    file-system-id.region.cpfs.aliyuncs.com:/share/path /mnt

    表示<挂载地址>:<CPFS文件系统目录> <当前服务器上待挂载的本地路径>,请根据实际情况替换。

    • 挂载地址:导出目录的挂载地址。您可以在文件存储NAS控制台文件系统列表页面,单击目标文件系统后的管理,进入协议服务页面,在操作列,单击导出目录,进入导出目录面板获取挂载地址。

    • CPFS文件系统目录:CPFS的根目录(/share)或任意子目录(例如:/share/path),如果是子目录,请您确保子目录是CPFS文件系统中实际已存在的目录。

      说明

      CPFS的共享目录必须以/share开头,例如:/share/share/subdir

    • 当前服务器上待挂载的本地路径:Linux ECS实例的根目录(/)或任意子目录(例如:/mnt),如果是子目录,请您确保子目录已存在。

    vers

    文件系统版本。CPFS仅支持NFSv3协议挂载文件系统。

    挂载选项

    挂载文件系统时,可选择多种挂载选项,挂载选项使用半角逗号(,)分隔,说明如下:

    • rsize:定义数据块的大小,用于客户端与文件系统之间读取数据。建议值:1048576。

    • wsize:定义数据块的大小,用于客户端与文件系统之间写入数据。建议值:1048576。

      说明

      如果您需要更改IO大小参数(rsize和wsize),建议您尽可能使用最大值(1048576),以避免性能下降。

    • hard:在文件存储CPFS暂时不可用的情况下,使用文件系统上某个文件的本地应用程序时会停止并等待至该文件系统恢复在线状态。建议启用该参数。

    • timeo:指定时长,单位为0.1秒,即CPFS-NFS客户端在重试向文件系统发送请求之前等待响应的时间。建议值:600(60秒)。

      说明

      如果您必须更改超时参数(timeo),建议您使用150或更大的值。该timeo参数的单位为0.1秒,因此150表示的时间为15秒。

    • retrans:CPFS-NFS客户端重试请求的次数。建议值:2。

    • noresvport:在网络重连时使用新的TCP端口,保障在网络发生故障恢复时不会中断连接。建议启用该参数。

      重要
      • 不建议使用soft选项,有数据一致性风险。如果您要使用soft选项,相关风险需由您自行承担。

      • 避免设置不同于默认值的任何其他挂载选项。如果更改读或写缓冲区大小或禁用属性缓存,可能会导致性能下降。

  5. 执行mount -l命令,查看挂载结果。

    挂载成功后,您可以执行df -h命令,查看当前文件系统的容量信息。

  6. (可选)配置开机时自动挂载。

    为避免已挂载CPFS文件系统的云电脑重启后挂载信息丢失,您可以通过在Linux云电脑中配置/etc/fstab文件,以实现重启云电脑时自动挂载CPFS文件系统。

    1. 打开/etc/fstab配置文件,添加挂载配置。

      file-system-id.region.cpfs.aliyuncs.com:/share/path /mnt cpfs-nfs vers=3,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,_netdev,noresvport 0 0

      上述命令中的参数说明

      参数

      说明

      file-system-id.region.cpfs.aliyuncs.com:/share/path /mnt

      表示<挂载地址>:<CPFS文件系统目录> <当前服务器上待挂载的本地路径>,请根据实际情况替换。将file-system-id.region.cpfs.aliyuncs.com:/share/path替换为步骤一中复制的挂载地址。将/mnt替换为当前服务器上待挂载的本地路径。

      关于命令的详细说明如下:

      • 挂载地址:您可以在文件存储NAS控制台文件系统列表页面,单击目标文件系统后的管理,进入协议服务页面,在操作列单击导出目录,进入导出目录面板获取挂载地址。

      • CPFS文件系统目录:CPFS的根目录(/share)或任意子目录(例如:/share/path),如果是子目录,请您确保子目录是CPFS文件系统中实际已存在的目录。

      • 当前服务器上待挂载的本地路径:Linux云电脑实例的根目录(/)或任意子目录(例如:/mnt),如果是子目录,请确保子目录已存在。

      vers

      文件系统版本。CPFS仅支持NFSv3协议挂载文件系统。

      挂载选项

      挂载文件系统时,可选择多种挂载选项,挂载选项使用半角逗号(,)分隔,说明如下:

      • rsize:定义数据块的大小,用于客户端与文件系统之间读取数据。建议值:1048576。

      • wsize:定义数据块的大小,用于客户端与文件系统之间写入数据。建议值:1048576。

      • hard:在文件存储CPFS暂时不可用的情况下,使用文件系统上某个文件的本地应用程序时会停止并等待至该文件系统恢复在线状态。建议启用该参数。

      • timeo:指定时长,单位为0.1秒,即CPFS-NFS客户端在重试向文件系统发送请求之前等待响应的时间。建议值:600(60秒)。

      • retrans:CPFS-NFS客户端重试请求的次数。建议值:2。

      • noresvport:在网络重连时使用新的TCP端口,保障在网络发生故障恢复时不会中断连接。建议启用该参数。

        重要
        • 不建议使用soft选项,有数据一致性风险。如果您要使用soft选项,相关风险需由您自行承担。

        • 避免设置不同于默认值的任何其他挂载选项。如果更改读或写缓冲区大小或禁用属性缓存,可能会导致性能下降。

      • _netdev:防止客户端在网络就绪之前开始挂载文件系统。

      • 0(noresvport后第一项):非零值表示文件系统应由dump备份。对于CPFS NFS文件系统而言,此值默认为0。

      • 0(noresvport后第二项):该值表示fsck在启动时检查文件系统的顺序。对于CPFS NFS文件系统而言,此值默认为0,表示fsck不应在启动时运行。

    2. 在管理控制台或者无影终端重启云电脑。

      说明
      • 在重启云电脑前,请确认添加挂载配置和挂载路径正确,确保手动挂载成功,避免云电脑重启后CPFS文件系统挂载失效。

      • 如果自动挂载配置成功,在云电脑重启后,可以通过df -h命令查看已挂载的CPFS NFS文件系统容量。

步骤四:验证挂载结果

将CPFS文件系统成功挂载到云电脑后,您可以在云电脑中把CPFS文件系统当作一个普通的目录来访问和使用。

本文以云电脑上挂载的本地路径为/mnt3为例,在CPFS文件系统中创建文件以验证CPFS文件系统已成功挂载至云电脑。

验证挂载成功截图

常见问题

挂载CPFS文件系统的过程中提示错误,怎么办?

如果在云电脑上挂载CPFS文件系统时,界面提示无法挂载或挂载失败等类似错误,此时可以按照以下步骤检查您的云电脑和CPFS之间的网络是否互通:

  1. 执行以下命令,查询DNS的IP地址。

    示例命令中的挂载点域名以cpfs-009e40ab9c6476e6-001a3e8bf745b****.cn-hangzhou.cpfs.aliyuncs.com为例,业务中请替换为实际的挂载点域名。

    dig  -t txt cpfs-009e40ab9c6476e6-001a3e8bf745b****.cn-hangzhou.cpfs.aliyuncs.com
  2. 执行ping命令,ping上一步的IP地址以检查网络是否互通。

    如果网络不互通,您需要检查网络的相关配置。

  • 本页导读 (0)