The fstab files contains a list of filesystems that should be mounted on compute nodes at boot time and later. The purpose, format and contents are very similar to the traditional fstab, with a few cluster-specific features. The Scyld fstab system is designed to keep all configuration information on a master node. It allows compute node specific tables for specialized compute nodes, with a default table used for non-specialized compute nodes. Node specific filesystem information may be coded in /etc/beowulf/fstab.id, where id is a node number. If no node specific file is present, the default file /etc/beowulf/fstab is used.
The root filesystem on each compute node is a tempfs filesystem, automatically sized for the available ram. In earlier versions of Scyld ClusterWare,, this root filesystem was explicitly declared in fstab, but this is no longer done.
One use of the root filesystem is for dynamically caching binaries and libraries from the master. Since ram space is limited, creating a root filesystem on a local disk provides more caching space and more ram for running applications, and may reduce the load on the master node while improving application performance.
This file interacts with the mksf and fsck directives in /etc/beowulf/config file to control automatically making filesystems on local disks.
The syntax and layout is identical to the single machine fstab file. The file is processed line by line. All blank lines and lines that begin with a # are ignored. All other lines should have six fields, separated by tabs or spaces.
The first field is the device to mount. For filesystems on local hard drives, this should point to a /dev entry such as /dev/hda2. If you are mounting an nfs filesystem, the device should be specified as hostname:directory, where hostname is the hostname of the NFS server, and directory is the path on the NFS server you want to mount. If the NFS server is the master node, you can use $MASTER as the hostname. And for some special filesystems, such as proc and devpts, this can be set to none.
The second field is the mount point. For your swap partition, this can be swap, but for all other filesystems, this must be a path that begins with /. Any paths that you specify as mount points will be automatically created by the node_up script before it tries to mount the filesystem. Please make sure that you do not specify the same mount point on more than one line, this can cause problems. You can have multiple lines that use swap as the mount point, but that is the only exception to the rule.
The third field is the filesystem type. This should be swap for swap partitions, ext2 for standard Linux filesystems, proc for the proc filesystem, devpts for the devpts filesystem, and nfs for an NFS file system. Any filesystem that can be normally used by Linux can also be put here, but you must also take steps to create the filesystem on the slave nodes.
The fourth field are the mount options for the filesystem. All options should be comma-seperated with no spaces. If you do not know of any options to use, you should use defaults for the mount options. In addition to the mount options normally supported by Linux, one additional option, NONFATAL, is supported.
The fifth and sixth fields are left there for compatibility with the standard fstab format. These fields are not used at the moment, but are required to be there. We recommend they both be set to 0.
Specifies that a failure to mount this file system will be ignored, and will not cause the node to enter the error state.
# This file is the fstab for nodes. # One difference is that we allow for shell variable expansions... # # Variables that will get substituted: # MASTER = IP address of the master node. (good for doing NFS mounts) # This is the default setup from beofdisk, once you setup your disks. #/dev/hda2 swap swap defaults 0 0 #/dev/hda3 / ext2 defaults 0 0 # These should always be added none /proc proc defaults 0 0 none /dev/pts devpts gid=5,mode=620 0 0 # NFS (for example and default friendliness) $MASTER:/home /home nfs nolock,nonfatal 0 0
/etc/beowulf/fstab /etc/beowulf/fstab.node-number /etc/beowulf/fstab.station-address /etc/beowulf/config