FedFsInstallationGuide0.9

From Linux NFS

Revision as of 20:17, 9 October 2012 by Chucklever (Talk | contribs)
Jump to: navigation, search

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 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, it must have FedFS support enabled in autofs. Eventually this will be set up by default. For now, the following modifications are required:

  • Linux NFS client that supports NFSv4 or later (any recent Linux distribution)
  • Kernel DNS resolver upcall working (some recent Linux distributions)
  • Automounter installed and enabled
  • fedfs-nfs4-map program installed (fedfs-utils package install, or built from source)

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.

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

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)
Personal tools