File system manager

There is one file system manager per file system, which handles all of the nodes by using the file system.

The services that are providedthat are by the file system manager includes:
  1. File system configuration
    Processes the following file system changes:
    • Adding disks
    • Changing disk availability
    • Repairing the file system

    Mount and unmount processing is performed on both the file system manager and the node that are requesting the service.

  2. Management of disk space allocation

    Controls which regions of disks are allocated to each node, allowing effective parallel allocation of space.

  3. Token management

    The file system manager node might also perform the duties of the token manager server. If you have explicitly designated some of the nodes in your cluster as file system manager nodes, then the token server load is distributed among all of the designated manager nodes. For more information, see Using multiple token servers.

    The token management server coordinates access to files on shared disks by granting tokens that convey the right to read or write the data or metadata of a file. This service ensures the consistency of the file system data and metadata when different nodes access the same file. The status of each token is held in two places:
    1. On the token management server
    2. On the token management client holding the token

    The first time a node accesses a file that it must send a request to the token management server to obtain a corresponding read or write token. After the token is granted, a node might continue to read or write to the file without requiring additional interaction with the token management server. This continues until an application on another node attempts to read or write to the same region in the file.

    The normal flow for a token is:
    • A message to the token management server.

      The token management server then either returns a granted token or a list of the nodes that are holding conflicting tokens.

    • The token management function at the requesting node then has the responsibility to communicate with all nodes holding a conflicting token and get them to relinquish the token.

      This relieves the token server of having to deal with all nodes holding conflicting tokens. For a node to relinquish a token, the daemon must give it up. First, the daemon must release any locks that are held using this token, which might involve waiting for I/O to complete.

  4. Quota management
    In a quota-enabled file system, the file system manager node automatically assumes quota management responsibilities whenever the GPFS file system is mounted. Quota management involves:
    • Allocating disk blocks to nodes that are writing to the file system
    • Comparing the allocated space to the quota limits at regular intervals
    Notes:
    1. To reduce the number of space requests from nodes writing to the file system, the quota manager allocates more disk blocks than requested (see Enabling quotas). This allows nodes to write to the file system without having to go to the quota manager and check quota limits each time they write to the file system.
    2. Quota-enabled file systems with more than 100,000 users or groups must avoid designating nodes as manager. This situation is avoided because nodes might have low memory or they might get heavily loaded due to high-memory demands for quota manager operations.

The file system manager is selected by the cluster manager. If a file system manager fails for any reason, then a new file system manager is selected by the cluster manager. During this transition, all functions continue without disruption, except for the time required to accomplish the takeover.

Depending on the application workload, the memory and CPU requirements for the services that are provided by the file system manager can make it undesirable to run a resource intensive application on the same node as the file system manager. GPFS allows you to control the pool of nodes from which the file system manager is selected by using the following commands:
  • The mmcrcluster command when creating your cluster.
  • The mmaddnode command when adding nodes to your cluster.
  • The mmchnode command to change a node's designation at any time.
These preferences are honored except in certain failure situations where multiple failures occur. For more information, see Multiple file system manager failures. You might list which node is currently assigned as the file system manager by issuing the mmlsmgr command or change which node is assigned to this task by using the mmchmgr command.