FedFsInstallationGuide0.9
From Linux NFS
Contents |
Project: fedfs-utils
[ Project Home | News | Downloads | Docs | Mailing Lists | Source Control | Issues ]
Introduction
This article will help you prepare for and set up a working FedFS domain using Linux and the fedfs-utils-0.9 package. fedfs-utils allows you to manage a network file system namespace (a FedFS domain) that consists of exports across multiple fileservers.
There are three roles a host can play in a FedFS domain. A single host can play one or more of these roles.
- File-access client
- This is a network file system client that communicates with fileservers using a standard file-access protocol (such as NFSv4).
- File-access server
- This is a server that stores data or refers file-access clients to other file-access servers.
- Namespace Database (NSDB)
- An NSDB node stores information about the location of filesets stored on file-access servers. LDAP is used to access and manage this information. An NSDB is optional. If an NSDB is employed, an administrative entity that has write access to FedFS records on the NSDB is required to create, modify and delete the entries describing FedFS filesets.
A DNS SRV record refers file-access clients to the top-most directory in a FedFS domain, which is stored in a special export on a file server.
Road map for setting up a simple FedFS domain
A "simple" FedFS domain does not use a separate LDAP server to keep track of fileset locations. Only NFS basic junctions (which store fileset locations directly on file servers) are used.
What you need for a minimal FedFS file-access server
Any NFSv4 server can participate in a FedFS domain. However, an NFS server which will contain junctions must support new-style NFS referrals. Eventually this will all be set up by default. For now, the following modifications are required:
- Linux NFS server that supports NFSv4 or later (any recent Linux distribution)
- rpc.mountd updated with junction support (nfs-utils 1.2.6 or later, built with the nfs-plugin.h header present)
- nfsref program installed (fedfs-utils package install, or built from source)
- libnfsjunct.so installed (fedfs-utils package install, or built from source)
What you need for a minimal FedFS file-access client
Any properly configured NFSv4 client can manually mount a FedFS domain root and see the domain's namespace. However, if an NFS client is to use Globally Useful Names (pathnames that appears the same on all FedFS clients), it must have FedFS map support enabled in autofs.
- Linux NFS client that supports NFSv4 (any recent Linux distribution)
- FedFS automounter support
What you need to define a FedFS domain
Once you have prepared your NFS clients and servers, these steps create the FedFS name space and allow it to be discovered by FedFS-enabled clients.
- Define a domain root directory on a FedFS-enabled NFS server, then export it
- Define a DNS SRV record that points to that export
- Create NFS referrals in the domain root directory to other NFS servers that participate in this domain
Road map for setting up a complete FedFS domain
A "complete" FedFS domain stores fileset location information in an LDAP server known as the domain's Namespace Database (or NSDB). Both NFS basic junctions and FedFS junctions can be used in this type of domain. All the items in the "simple" FedFS domain set up above, and:
What you need for a minimal FedFS NSDB
- An installed and configured LDAP server
What you need to allow file servers to access the NSDB
- Install nsdbparams program on file servers and administrative clients that participate in your FedFS domain (fedfs-utils package install, or built from source)
What you need to administer junctions and NSDB connection parameters remotely
- Optionally, install rpc.fedfsd program (fedfs-utils package install, or built from source)