56 lines
2.3 KiB
ReStructuredText
56 lines
2.3 KiB
ReStructuredText
|
|
==================================
|
|
pNFS SCSI layout server user guide
|
|
==================================
|
|
|
|
This document describes support for pNFS SCSI layouts in the Linux NFS server.
|
|
With pNFS SCSI layouts, the NFS server acts as Metadata Server (MDS) for pNFS,
|
|
which in addition to handling all the metadata access to the NFS export,
|
|
also hands out layouts to the clients so that they can directly access the
|
|
underlying SCSI LUNs that are shared with the client.
|
|
|
|
To use pNFS SCSI layouts with the Linux NFS server, the exported file
|
|
system needs to support the pNFS SCSI layouts (currently just XFS), and the
|
|
file system must sit on a SCSI LUN that is accessible to the clients in
|
|
addition to the MDS. As of now the file system needs to sit directly on the
|
|
exported LUN, striping or concatenation of LUNs on the MDS and clients
|
|
is not supported yet.
|
|
|
|
On a server built with CONFIG_NFSD_SCSI, the pNFS SCSI volume support is
|
|
automatically enabled if the file system is exported using the "pnfs"
|
|
option and the underlying SCSI device support persistent reservations.
|
|
On the client make sure the kernel has the CONFIG_PNFS_BLOCK option
|
|
enabled, and the file system is mounted using the NFSv4.1 protocol
|
|
version (mount -o vers=4.1).
|
|
|
|
If the nfsd server needs to fence a non-responding client and the
|
|
fencing operation fails, the server logs a warning message in the
|
|
system log with the following format:
|
|
|
|
FENCE failed client[IP_address] clid[#n] device[dev_name]
|
|
|
|
where:
|
|
|
|
- IP_address: refers to the IP address of the affected client.
|
|
- #n: indicates the unique client identifier.
|
|
- dev_name: specifies the name of the block device related
|
|
to the fencing attempt.
|
|
|
|
The server will repeatedly retry the operation indefinitely. During
|
|
this time, access to the affected file is restricted for all other
|
|
clients. This is to prevent potential data corruption if multiple
|
|
clients access the same file simultaneously.
|
|
|
|
To restore access to the affected file for other clients, the admin
|
|
needs to take the following actions:
|
|
|
|
- shutdown or power off the client being fenced.
|
|
- manually expire the client to release all its state on the server::
|
|
|
|
echo 'expire' > /proc/fs/nfsd/clients/clid/ctl
|
|
|
|
where:
|
|
|
|
- clid: is the unique client identifier displayed in the system log.
|
|
|