本文介绍如何通过阿里云RDS Custom实例挂载NAS NFS协议文件系统,以实现多个云服务器共享访问文件系统的目的。
前提条件
-
已创建RDS Custom实例。具体操作,请参见创建RDS Custom实例。
-
已在与RDS Custom实例同地域下创建NAS,本文以极速型NAS为例。具体操作,请参见通过控制台创建极速型NAS文件系统。
-
NAS文件系统已添加挂载点(挂载点VPC需与RDS Custom实例的VPC相同)并记录挂载点地址。具体操作,请参见管理挂载点。
操作步骤
-
连接RDS Custom实例。具体操作,请参见连接RDS Custom实例。
-
执行以下命令,安装NFS客户端。
在Linux系统挂载NFS协议文件系统时,需要先安装NFS客户端。确保每台Linux服务器执行一次配置即可,不需要在每次挂载时都执行。
操作系统
安装命令
Alibaba Cloud Linux
sudo yum install nfs-utilsCentOS
Redhat
Ubuntu
依次执行以下安装命令:
sudo apt-get updatesudo apt-get install nfs-commonDebian
-
执行以下命令,挂载NAS。
sudo mount -t nfs -o vers=3,noacl,nolock,proto=tcp,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2, noresvport file-system-id.region.extreme.nas.aliyuncs.com:/share /mnt挂载命令参数说明如下表所示。
参数
描述
file-system-id.region.extreme.nas.aliyuncs.com:/share /mnt
表示<挂载地址>:<NAS文件系统目录> <当前服务器上待挂载的本地路径>,请根据实际情况替换。
-
挂载地址:您可以在文件存储NAS控制台文件系统列表页面,单击目标文件系统后的管理,进入挂载使用页面获取挂载地址。更多信息,请参见管理挂载点。
-
极速型NAS文件系统目录:必须以/share开头,例如:/share、/share/subdir。如果是子目录,请您确保子目录是NAS文件系统中实际存在的目录。
-
当前服务器上待挂载的本地路径:RDS Custom实例的任意子目录(例如:/mnt),如果是子目录,请您确保子目录已存在。
说明如果您挂载的本地路径非空,挂载成功后该目录将显示NAS上的数据,本地数据将暂时不可见。建议您使用空目录挂载。
vers
文件系统版本。
-
vers=3:使用NFS v3协议挂载文件系统。
-
vers=4:使用NFS v4协议挂载文件系统。
其中,
minorversion为协议次版本号,例如:NAS支持的NFS v4协议版本为4.0,因此使用NFS v4协议挂载文件系统时,次版本号为0。
说明极速型NAS:只支持NFS v3,不支持NFS v4。
rsize
-
定义数据块的大小,用于客户端与文件系统之间读取数据。
-
建议值:1048576。
wsize
-
定义数据块的大小,用于客户端与文件系统之间写入数据。
-
建议值:1048576。
hard
-
如果参数未启用,当文件存储NAS不可用时,客户端可能会立即返回错误,而不进行重试,这可能会导致数据的不一致性或丢失。
-
建议启用该参数。
timeo
-
指定时长,单位为0.1秒,即NFS客户端在重试向文件系统发送请求之前等待响应的时间。
-
建议值:600(60秒)。
retrans
-
NFS客户端重试请求的次数。
-
建议值:2。
noresvport
-
在网络重连时使用新的TCP端口,保障在网络发生故障恢复时不会中断连接。
-
建议启用该参数。
-
-
执行以下命令,验证挂载结果。
mount -l如果回显信息中包含NAS挂载地址及挂载目录(如
/mnt),说明挂载成功。回显示例如下。systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=35,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=243) /dev/vda2 on /boot/efi type vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=winnt,errors=remount-ro) sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime) tracefs on /sys/kernel/debug/tracing type tracefs (rw,relatime) tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=12956188k,mode=700) 01e3xxx.extreme.nas.aliyuncs.com:/share on /mnt type nfs (rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,nolock,noacl,noresvport,proto=tcp,timeo=600,retrans=2,tvers=3,mountport=2049,mountproto=tcp,local_lock=all,addr=172.xxx.xxx.xxx)挂载成功后,您还可以执行
df -h命令,查看当前文件系统的容量信息。[root@rc-m6d4xxx_yo3b2 ~]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 62G 0 62G 0% /dev tmpfs 62G 0 62G 0% /dev/shm tmpfs 62G 548K 62G 1% /run tmpfs 62G 0 62G 0% /sys/fs/cgroup /dev/vda3 40G 4.0G 34G 11% / /dev/vda2 200M 5.8M 195M 3% /boot/efi tmpfs 13G 0 13G 0% /run/user/0 01e3xxx_xxxng.extreme.nas.aliyuncs.com:/share 99G 134M 99G 1% /mnt -
挂载成功后,您可以在Linux ECS上访问NAS文件系统,执行读取或写入操作。
您可以把NAS文件系统当作一个普通的目录来访问和使用。
[root@rc-m6d48r6xxx ~]# cd /mnt/ [root@rc-m6d48r6xxx mnt]# touch testtxt [root@rc-m6d48r6xxx mnt]# ll total 0 -rw-r----- 1 root root 0 Mar 5 13:33 testtxt