九游平台/ 高性能弹性文件服务 sfs turbo/ / / / 挂载sfs turbo文件系统到linux云服务器
更新时间:2025-02-20 gmt 08:00

挂载sfs turbo文件系统到linux云服务器-九游平台

当创建文件系统后,您需要使用云服务器来挂载该文件系统,以实现多个云服务器共享使用文件系统的目的,本文将介绍如何挂载文件系统到ecs上。

  • 裸金属服务器、容器(cce&cci)操作与弹性云服务器(ecs)挂载操作一致。挂载至cce:请参考或,并在cce界面完成sfs turbo部署至cce的操作。
  • 不同云服务器操作系统的挂载操作可能不同,请根据您的实际环境进行操作。

约束与限制

该约束仅针对本地挂载路径(即挂载点),不影响其他文件或目录。

  • nfs协议的sfs turbo文件系统暂不支持挂载至windows系统的云服务器。
  • 使用域名(dns)挂载sfs turbo文件系统时,不支持跨区域(region)挂载,但可以通过指定ip的方式跨区域(region)挂载,网络互通方式具体参考云连接cc“跨区域vpc互通”。
  • 本地挂载路径(即挂载点根目录)的atime、ctime和mtime属性是当前时间,每次查询根目录属性返回的都是服务端当时时间的值。
  • 暂不支持修改本地挂载路径(即挂载点)的元数据,即不支持对挂载点的元数据做如下操作:

    - touch:更新文件的访问时间和修改时间

    - rm:删除文件或目录

    - cp:复制文件或目录

    - mv:移动文件或目录

    - rename:重命名文件或目录

    - chmod:修改文件或目录的权限

    - chown:修改文件或目录的所有者

    - chgrp:修改文件或目录的所属组

    - ln:创建硬链接

    - link:创建硬链接

    - unlink:删除硬链接

前提条件

  • 已确定云服务器操作系统类型,不同操作系统安装nfs客户端的命令不同。
  • 已完成创建sfs turbo文件系统,并获取到sfs turbo文件系统的挂载地址,挂载地址请从文件系统列表的共享路径中获取。
  • 存在至少一台与sfs turbo文件系统所属vpc相同的云服务器。
  • 云服务器(ecs)上已配置了ip地址,用于内网解析sfs turbo文件系统域名的dns服务器的。详细操作参见配置ip

挂载sfs turbo文件系统

  1. 登录ecs控制台。
    1. 登录管理控制台,选择区域和project。
    2. 选择“计算 > 弹性云服务器”,进入管理控制台。
  2. 以root用户登录弹性云服务器。可以通过管理控制台或跨平台远程访问工具(例如putty)登录。

    若以非root用户登录弹性云服务器,具体操作请参考。

  3. 安装nfs客户端。
    1. 查看系统是否安装nfs软件包。
      • centos、red hat、oracle enterprise linux、suse、euler os、fedora或opensuse系统下,执行如下命令:
        rpm -qa|grep nfs
      • debian或ubuntu系统下,执行如下命令:
        dpkg -l nfs-common
      不同操作系统回显会有所不同,如果回显如下类似信息,说明已经成功安装nfs软件包,执行4。如未显示,执行安装命令
      • centos、red hat、euler os、fedora或oracle enterprise linux系统下,回显如下类似信息:
        libnfsidmap
        nfs-utils
      • suse或opensuse系统下,回显如下类似信息:
        nfsidmap
        nfs-client
      • debian或ubuntu系统下,回显如下类似信息:
        nfs-common
    2. 如果查看到未安装,根据不同的操作系统,执行不同命令。

      执行以下命令前要求云服务器已连接到互联网,否则安装nfs客户端失败。

      • centos、red hat、euler os、fedora或oracle enterprise linux系统下,执行如下命令:
        sudo yum -y install nfs-utils
      • debian或ubuntu系统下,执行如下命令:
        sudo apt-get install nfs-common
      • suse或opensuse系统下,执行如下命令:
        zypper install nfs-client
  4. 当文件系统的共享路径是域名形式的时候,请查看是否能解析该域名,执行如下命令:
    nslookup 文件系统域名
    • 文件系统域名如:xxx.sfsturbo.internal(xxx为文件系统id)。请从文件系统列表的共享路径中获取文件系统域名。
    • 无法使用nslookup命令时,需要先安装bind-utils软件包。(可通过执行yum install bind-utils命令安装)
    • 解析成功,继续执行挂载文件系统的操作。
    • 解析失败,请先完成dns服务器ip地址的配置再执行挂载文件系统的操作,具体配置操作请参见。
  5. 挂载nfs文件系统。
    • 挂载到文件系统根目录,执行如下命令:
    mkdir 本地路径
    mount -t nfs -o vers=3,timeo=600,noresvport,nolock,tcp 挂载地址 本地路径
    • 挂载到文件系统子目录,执行如下命令:
    mkdir 本地路径/子目录
    mount -t nfs -o vers=3,timeo=600,noresvport,nolock,tcp 文件系统域名或ip:/子目录 本地路径
    • 请从文件系统列表的共享路径中获取文件系统域名或ip。
    • 如果本地路径已挂载其他磁盘等资源,为被占用状态时,需要新建其它目录进行挂载(nfs客户端不会对重复挂载进行拦截,当重复挂载时会表现为最后一次成功挂载的信息)。
    • 文件系统必须挂载到与文件系统所属vpc相同的云服务器上。
    挂载命令变量说明见表1
    表1 参数说明

    参数

    说明

    本地路径

    云服务器上用于挂载文件系统的本地路径,例如“/local_path”

    挂载地址

    sfs turbo标准型、标准型-增强版、性能型、性能型-增强版文件系统的格式为:文件系统ip:/,例如192.168.0.0:/。

    sfs turbo 20mb/s/tib、40mb/s/tib、125mb/s/tib、250mb/s/tib、500mb/s/tib、1000mb/s/tib和hpc缓存型文件系统的格式为:域名地址:/,例如xxx.sfsturbo.internal:/

    挂载地址如图1所示。

    说明:
    • x是数字或字母。
    • 由于挂载地址名称较长,需要拉宽该栏以便完整显示。

    vers

    文件系统版本,目前只支持nfsv3。取值:3。

    timeo

    nfs客户端重传请求前的等待时间(单位为0.1秒)。建议值:600。

    noresvport

    指定nfs客户端向nfs服务端重新发起建立连接时使用新的tcp端口。

    强烈建议使用 noresvport 参数,这可以保障网络发生故障恢复事件后文件系统服务不会中断。

    lock/nolock

    选择是否使用nlm协议在服务器上锁文件。当选择nolock选项时,锁对于同一主机的应用有效,对不同主机不受锁的影响。建议值:nolock。如不加此参数,则默认为lock,就会发生其他服务器无法对此文件系统写入的情况。

    tcp/udp

    nfs客户端向服务器发起传输请求使用的协议,可以为udp或者tcp。

    图1 挂载地址

    挂载文件系统时,您还可以增加一些性能调优的挂载参数,可参考表2配置,各参数之间以逗号进行分隔。例如:

    mount -t nfs -o vers=3,timeo=600,nolock,rsize=1048576,wsize=1048576,hard,retrans=3,tcp,noresvport,ro,async,noatime,nodiratime 挂载地址 本地路径
    表2 挂载参数

    参数

    说明

    rsize

    每次向服务器读取文件的最大字节数。实际数据小于或等于此值。rsize必须是1024倍数的正整数,小于1024时自动设为4096,大于1048576时自动设为1048576。默认时,服务器和客户端进行协商后设置。

    建议设置为最大值1048576。

    wsize

    每次向服务器写入文件的最大字节数。实际数据小于或等于此值。wsize必须是1024倍数的正整数,小于1024时自动设为4096,大于1048576时自动设为1048576。默认时,服务器和客户端进行协商后设置。

    建议设置为最大值1048576。

    soft/hard

    取值为soft,即软挂载方式挂载系统,如果nfs请求超时,则客户端向调用程序返回错误;取值为hard,即使用硬连接方式,如果nfs请求超时,则客户端一直重新请求直至成功。

    默认为hard。

    retrans

    客户端返回错误前的重传次数。建议值:1。

    tcp/udp

    不指定mountproto时,客户端默认先尝试使用udp协议挂载,如果udp网络不通则会在卡顿几秒后再尝试tcp协议挂载。

    当前默认没有放通安全组入方向mount协议的udp端口号,需要将mount挂载协议设置为tcp传输协议,即mountproto=tcp

    ro/rw

    • ro:表示采用只读的方式挂载。
    • rw:表示采用读写的方式挂载。

    默认为rw。未写明ro/rw时,则默认为采用rw读写的方式挂载。

    noresvport

    指定nfs客户端向nfs服务端重新发起建立连接时使用新的tcp端口。

    强烈建议使用 noresvport 参数,这可以保障网络发生故障恢复事件后文件系统服务不会中断。

    sync/async

    sync为同步写入,表示将写入文件的数据立即写入服务端;async为异步写入,表示将数据先写入缓存,再写入服务端。

    同步写入要求nfs服务器必须将每个数据都刷入服务端后,才可以返回成功,时延较高。建议设置为async。

    noatime

    如果不需要记录文件的访问时间,可以设置该参数。避免频繁访问时,修改访问时间带来的开销。

    nodiratime

    如果不需要记录目录的访问时间,可以设置该参数。避免频繁访问时,修改访问时间带来的开销。

    没有“使用建议”的参数推荐使用默认参数。

  6. 挂载完成后,执行如下命令,查看已挂载的文件系统。
    mount -l
    如果回显包含如下类似信息,说明挂载成功,用户可以在云服务器上访问文件系统,执行读取或写入操作。
    挂载地址 on /local_path type nfs (rw,vers=3,timeo=600,nolock,addr=)

    支持写入的单个文件最大容量为1pb。

  1. (可选)配置fstab文件开机自动挂载文件系统。

    已挂载文件系统的云服务器重启后,该云服务器上的挂载信息将会丢失,您可以通过在fstab文件中配置自动挂载来保证云服务器重启时自动挂载文件系统。

    1. 执行以下命令编辑“/etc/fstab”文件。
    vi /etc/fstab
    在文件的最后新增要挂载的文件系统信息,配置样例如下:
    挂载地址 /local_path nfs vers=3,timeo=600,noresvport,nolock,tcp 0 0

    其中,“挂载地址”和“/local_path”需根据实际情况进行修改。挂载地址可以从文件系统详情页的“共享路径”一栏获取。/etc/fstab文件中每条记录对应一个挂载信息,每条记录有6个字段,对应的字段说明请参见表3

    表3 字段说明

    字段

    说明

    挂载地址

    挂载对象,即要挂载的文件系统的挂载地址。设置为步骤5中mount命令中的挂载地址。

    /local_path

    挂载点,即云服务器上创建的挂载文件系统的目录。设置为步骤5中mount命令中的本地路径。

    nfs

    挂载类型,指文件系统或分区类型。本节描述的是挂载文件系统,设置为nfs。

    vers=3,timeo=600,noresvport,nolock,tcp

    挂载选项,用于设置挂载的参数,多个选项之间以逗号进行分隔。

    • vers:文件系统版本,取值为3代表nfsv3。
    • timeo:nfs客户端重传请求前的等待时间(单位为0.1秒)。建议值:600。
    • noresvport:指定nfs客户端向nfs服务端重新发起建立连接时使用新的tcp端口。强烈建议使用noresvport参数,可保障网络发生故障恢复事件后文件系统服务不会中断。
    • nolock:选择是否使用nlm协议在服务器上锁文件。当选择nolock选项时,锁对于同一主机的应用有效,对不同主机不受锁的影响。建议值:nolock。如不加此参数,则默认为lock,就会发生其他服务器无法对此文件系统写入的情况。
    • tcp:tcp传输协议。

    0

    选择是否让备份程序dump备份文件系统。

    • 0:不备份。
    • 大于0的整数:备份;数字越小越先备份。

    0

    选择是否在云服务器启动时用fsck程序检查文件系统以及以什么顺序检查。

    • 0:不检查。
    • 根目录分区默认设置为1,其他分区从2开始,数字越小越先检查。

    为获得最优的系统性能,建议按照“配置样例”进行配置。如果业务需要,您也可以根据实际情况自定义部分挂载参数,但变更配置后将会在一定程度上影响系统性能。

    1. 单击“esc”,并输入:wq,保存文件并退出。
    1. (可选)执行以下命令,查看修改后的fstab文件内容。
    cat /etc/fstab
    图2 修改后的fstab文件
    如果出现由于网络等问题导致自动挂载不成功,可以在rc.local文件中挂载命令前添加sleep参数和时间参数,等待nfs服务完全启动后再进行挂载。
    sleep 10s && sudo mount -t nfs -o vers=3,timeo=600,noresvport,nolock,tcp 挂载地址 /local_path

常见问题

相关文档

网站地图