NFS servers

From UGCS
Jump to: navigation, search

NFS is the standard way to use network file systems in a Unix environment. As such, UGCS employs several. We recently gained the ability to quickly configure and deploy NFS servers using cfengine. Future improvements involve using Kerberos to authenticate and secure via NFS4.

Contents

Cfengine

All of the NFS servers will be put into a cfengine class that overwrites the /etc/exports file when cfrun is activated. This class will also restart nfs-kernel-server to take the new settings into effect. Then, each group of servers will have an separate class that concatenates the appropriate exports files to this blank file.

Exports

Each individual set of exports is self-contained, and ideally configured for an individual purpose. If a server pulls double duty, it should be entered into multiple classes and thus have multiple concatenated exports files.

Keytab exports

At the moment, the keytabs are generated separately (vis configurator). This will need to be automatically generated eventually.

Relevant files

  • /afs/.../cfengine/global/inputs/cfagent.conf - contains class definitions
  • /afs/.../cfengine/global/inputs/nfs.conf - NFS server commands
  • /afs/.../cfengine/hosts/nfs/<exports> - export definitions imported by cfengine
  • /afs/.../configurator/generate_nfs_exports.py - creates the keytab export from the UGCSComputer pickle

Current NFS servers

  • Apollo - common keys for shellservers
  • Apollo - common opt for shellservers
  • Hephaestus - large shared filespace for groups
  • Demeter - cfengine root (not configured by cfengine)
Personal tools