Mounting an NFS File System to ECSs
After creating a file system, you need to mount the file system to ECSs so that ECSs can share the file system.
Prerequisites
- You have checked the type of the operating system on each ECS. Different operating systems use different commands to install the NFS client.
- You have created a file system and have obtained the mount point of the file system.
- At least one ECS that belongs to the same VPC as the file system exists.
Procedure
- Log in to the management console using a cloud account.
- Log in to the management console and select a region and a project.
- Under Computing, click Elastic Cloud Server to switch to the ECS console.
- Log in to the ECS as user root.
If you log in to the ECS as a non-root user, see Mounting a File System to an ECS Running Linux as a Non-root User.
- Install the NFS client.
- Run the following command to check whether the NFS software package is installed.
- On CentOS, Red Hat, Oracle Enterprise Linux, SUSE, EulerOS, Fedora, or OpenSUSE:
- On Debian or Ubuntu:
If nothing is displayed, go to 3.b.- On CentOS, Red Hat, EulerOS, Fedora, or Oracle Enterprise Linux:
libnfsidmap nfs-utils
- On SUSE or OpenSUSE:
nfsidmap nfs-client
- On Debian or Ubuntu:
nfs-common
- Run the following command to install the NFS software package.
The following commands require that ECSs be connected to the Internet. Otherwise, the installation will fail.
- Run the following command to check whether the NFS software package is installed.
- Run the following command to create a local path for mounting the file system:
mkdir Local path
- Run the following command to mount the file system to the ECS that belongs to the same VPC as the file system. Currently, the file system can be mounted to the ECS running Linux using NFS v3 only.
Table 1 describes the variables.
mount -t nfs -o vers=3,timeo=600,noresvport,nolock Mount point Local path
After an ECS where file systems have been mounted restarts, it loses the file system mount information. You can configure automatic mount in the fstab file to ensure that an ECS automatically mounts file systems when it restarts. For details, see Mounting a File System Automatically.
Table 1 Parameter description Parameter
Description
vers
File system version. Currently, only NFSv3 is supported, so the value is fixed to 3.
timeo
Waiting time before the NFS client retransmits a request. The unit is 0.1 second. The recommended value is 600.
resvport/noresvport
Whether the confidential source port is used for server connection. By default, resvport indicates that the confidential port is used, and noresvport indicates that the confidential port is not used. The kernel version is 2.6.28 or later.
You are advised to set this parameter to noresvport so that a new TCP port can be used when the network is reconnected. This ensures that the connection is not interrupted when the network recovers from a fault.
lock/nolock
Whether to lock files on the server using the NLM protocol. If nolock is selected, the lock is valid for applications on one host. For applications on another host, the lock is invalid. The recommended value is nolock. If this parameter is not specified, lock is selected by default. In this case, other servers cannot write data to the file system.
Mount point
The format for an SFS Turbo file system is File system IP address:/, for example, 192.168.0.0:/. See Figure 1.
Local path
Local path on the ECS, used to mount the file system, for example, /local_path.
For more mounting parameters for performance optimization during file system mounting, see Table 2. Use commas (,) to separate parameters. The following command is an example:
mount -t nfs -o vers=3,timeo=600,nolock,rsize=1048576,wsize=1048576,hard,retrans=3,noresvport,async,noatime,nodiratime Mount point Local path
Table 2 Parameters for file system mounting Parameter
Description
rsize
Maximum number of bytes that can be read from the server each time. The actual data is less than or equal to the value of this parameter. The value of rsize must be a positive integer that is a multiple of 1024. If the entered value is smaller than 1024, the value is automatically set to 4096. If the entered value is greater than 1048576, the value is automatically set to 1048576. By default, the setting is performed after the negotiation between the server and the client.
You are advised to set this parameter to the maximum value 1048576.
wsize
Maximum number of bytes that can be written to the server each time. The actual data is less than or equal to the value of this parameter. The value of wsize must be a positive integer that is a multiple of 1024. If the entered value is smaller than 1024, the value is automatically set to 4096. If the entered value is greater than 1048576, the value is automatically set to 1048576. By default, the setting is performed after the negotiation between the server and the client.
You are advised to set this parameter to the maximum value 1048576.
soft/hard
soft indicates that a file system is mounted in soft mount mode. In this mode, if an NFS request times out, the client returns an error to the invoking program. hard indicates that a file system is mounted in hard mount mode. In this mode, if the NFS request times out, the client continues to request until the request is successful.
The default value is hard.
retrans
Number of retransmission times before the client returns an error. The default value is 3.
resvport/noresvport
Whether the confidential source port is used for server connection. By default, resvport indicates that the confidential port is used, and noresvport indicates that the confidential port is not used. The kernel version is 2.6.28 or later.
You are advised to set this parameter to noresvport so that a new TCP port can be used when the network is reconnected. This ensures that the connection is not interrupted when the network recovers from a fault.
sync/async
sync indicates that data is written to the server immediately. async indicates that data is first written to the cache before being written to the server.
Synchronous write requires that an NFS server returns a success message only after all data is written to the server, which brings long latency. The recommended value is async.
noatime
If you do not need to record the file access time, set this parameter. This prevents overheads caused by access time modification during frequent access.
nodiratime
If you do not need to record the directory access time, set this parameter. This prevents overheads caused by access time modification during frequent access.
You are advised to use the default values for the parameters without use recommendations.
- Run the following command to view the mounted file system:
mount -l
If the command output contains the following information, the file system is mounted successfully.Mount point on /local_path type nfs (rw,vers=3,timeo=600,nolock,addr=)
- After the file system is mounted successfully, access the file system on the ECSs to read or write data.
If the mounting fails or times out, rectify the fault by referring to Troubleshooting.
The supported maximum size of a file to be written is 16 TB.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot