gpfs.snap command

Creates an informational system snapshot at a single point in time. This system snapshot consists of information such as cluster configuration, disk configuration, network configuration, network status, GPFS logs, dumps, and traces.

Synopsis

gpfs.snap [-d OutputDirectory] [-m | -z]
          [-a | -N {Node[,Node...] | NodeFile | NodeClass}]
          [--check-space | --no-check-space | --check-space-only]
          [--cloud-gateway {NONE |BASIC |FULL} ] [--full-collection] [--deadlock [--quick] |
           --limit-large-files {YYYY:MM:DD:HH:MM | NumberOfDaysBack | latest}]
          [--exclude-aix-disk-attr] [--exclude-aix-lvm] [--exclude-merge-logs]
          [--exclude-net] [--gather-logs] [--mmdf] [--performance] [--prefix]
          [--protocol ProtocolType[,ProtocolType,...]] [--timeout Seconds]
          [--purge-files KeepNumberOfDaysBack][--hadoop]

Availability

Available on all IBM Spectrum Scale editions.

Description

Use the gpfs.snap command as the main tool to gather data when a GPFS problem is encountered, such as a hung file system, a hung GPFS command, or a daemon assert.

The gpfs.snap command gathers information (for example, GPFS internal dumps, traces, and kernel thread dumps) to solve a GPFS problem.

Note: By default, large debug files are now a delta collection, which means that they are only collected when there are new files since the previous run of gpfs.snap. To override this default behavior, use either the --limit-large-files or --full-collection options.
Note: This utility program is a service tool and options might change dynamically. The tool impacts performance and occupies disk space when it runs.

Parameters

-d OutputDirectory
Start of changeSpecifies the output directory where the snapshot information is stored. You cannot specify a directory that is located in a GPFS file system that is managed by the same cluster that you are running the gpfs.snap command against. The default output directory is /tmp/gpfs.snapOut.End of change
-m
Specifying this option is equivalent to specifying --exclude-merge-logs with -N.
-z
Collects gpfs.snap data only from the node on which the command is invoked. No master data is collected.
-a
Directs gpfs.snap to collect data from all nodes in the cluster. This value is the default.
-N {Node[,Node ...] | NodeFile | NodeClass}
Specifies the nodes from which to collect gpfs.snap data. This option supports all defined node classes. For more information about how to specify node names, see Specifying nodes as input to GPFS commands .
--check-space
Specifies that space checking is performed before data is collected.
--no-check-space
Specifies that no space checking is performed. This value is the default.
--check-space-only
Specifies that only space checking is performed. No data is collected.
--cloud-gateway {NONE | BASIC | FULL}
When this option is set to NONE, no Transparent cloud tiering data is collected. With the BASIC option, when the Transparent cloud tiering service is enabled, the snap collects information such as logs, traces, Java™ cores, along with minimal system and IBM Spectrum Scale cluster information specific to Transparent cloud tiering. No customer sensitive information is collected.
Note: The default behavior of the gpfs.snap command includes basic information of Transparent cloud tiering, in addition to the GPFS information.
With the FULL option, extra details such as Java Heap dump are collected, along with the information captured with the BASIC option.
--full-collection
Specifies that all large debug files are collected instead of the default behavior that collects only new files since the previous run of gpfs.snap.
--deadlock
Collects only the minimum amount of data necessary to debug a deadlock problem. Part of the data that is collected is the output of the mmfsadm dump all command. This option ignores all other options except for -a, -N, -d, and --prefix.
--quick
Collects less data when specified along with the --deadlock option. The output includes mmfsadm dump most, mmfsadm dump kthreads, and 10 seconds of trace in addition to the usual gpfs.snap output.
--limit-large-files {YYYY:MM:DD:HH:MM | NumberOfDaysBack | latest}]
Specifies a time limit to reduce the number of large files collected.
--exclude-aix-disk-attr
Specifies that data about AIX® disk attributes is not collected. Collecting data about AIX disk attributes on an AIX node that has a large number of disks might be very time-consuming, so using this option might help improve performance.
--exclude-aix-lvm
Specifies that data about the AIX Logical Volume Manager (LVM) is not collected.
--exclude-merge-logs
Specifies that merge logs and waiters is not collected.
--exclude-net
Specifies that network-related information is not collected.
--gather-logs
Gathers, merges, and chronologically sorts all of the mmfs.log files. The results are stored in the directory that is specified with -d option.
--mmdf
Specifies that mmdf output is collected.
--performance
Specifies that performance data is to be gathered. Start of changeIt is recommended to issue the gpfs.snap command with -a option on all nodes or on the pmcollector node that has an ACTIVE THRESHOLD MONITOR role.End of change
Note: The performance script can take up to 30 minutes to run. Therefore, the script is not included when all other types of protocol information are gathered by default. Specifying this option is the only way to turn on the gathering of performance data.
--prefix
Specifies that the prefix name gpfs.snap is added to the tar file.
--protocol ProtocolType[,ProtocolType,...]
Specifies the type or types of protocol information to be gathered. By default, whenever any protocol is enabled on a file system, information is gathered for all types of protocol information (except for performance data; see the --performance option). However, when the --protocol option is specified, the automatic gathering of all protocol information is turned off, and only the specified type of protocol information is gathered. The following values for ProtocolType are accepted:
  • smb
  • nfs
  • object
  • authentication
  • ces
  • core
  • none
--timeout Seconds
Specifies the timeout value, in seconds, for all commands.
--purge-files KeepNumberOfDaysBack
Specifies that large debug files is deleted from the cluster nodes based on the KeepNumberOfDaysBack value. If 0 is specified, all of the large debug files is deleted. If a value greater than 0 is specified, large debug files that are older than the number of days specified are deleted. For example, if the value 2 is specified, the previous two days of large debug files are retained.
This option is not compatible with many of the gpfs.snap options because it only removes files and does not collect any gpfs.snap data.
--hadoop
Specifies that Hadoop data is to be gathered.

Use the -z option to generate a non-master snapshot. This option is useful if there are many nodes on which to take a snapshot, and only one master snapshot is needed. For a GPFS problem within a large cluster (hundreds or thousands of nodes), one strategy might call for a single master snapshot (one invocation of gpfs.snap with no options), and multiple non-master snapshots (multiple invocations of gpfs.snap with the -z option).

Use the -N option to obtain gpfs.snap data from multiple nodes in the cluster. When the -N option is used, the gpfs.snap command takes non-master snapshots of all the nodes that are specified with this option and a master snapshot of the node on which it was issued.

Exit status

0
Successful completion.
nonzero
A failure has occurred.

Security

You must have root authority to run the gpfs.snap command.

The node on which the command is issued must be able to execute remote shell commands on any other node in the cluster without the use of a password and without producing any extraneous messages. For more information, see Requirements for administering a GPFS file system.

Examples

  1. To collect gpfs.snap on all nodes with the default data, issue the following command:
    c34f2n03:# gpfs.snap
    gpfs.snap started at Fri Mar 22 13:16:12 EDT 2019.
    Gathering common data...
    Gathering Linux specific data...
    Gathering extended network data...
    Gathering local callhome data...
    Gathering local sysmon data...
    Gathering trace reports and internal dumps...
    Gathering Transparent Cloud Tiering data at level BASIC...
    gpfs.snap:  The Transparent Cloud Tiering snap file was not located on the node c34f2n03.gpfs.net
    Gathering cluster wide sysmon data...
    Gathering cluster wide callhome data...
    gpfs.snap:  Spawning remote gpfs.snap calls. Master is c34f2n03.
    This may take a while.
    
    Copying file /tmp/gpfs.snapOut/27348/gpfs.snap.c13c1apv7_0322131503.out.tar.gz from c13c1apv7.gpfs.net ...
    gpfs.snap.c13c1apv7_0322131503.out.tar.gz        100% 7732KB   7.6MB/s   00:00
    Successfully copied file /tmp/gpfs.snapOut/27348/gpfs.snap.c13c1apv7_0322131503.out.tar.gz from
         c13c1apv7.gpfs.net.
    Gathering cluster wide protocol data...
    Gathering waiters from all nodes...
    Gathering mmfs.logs from all nodes.  This may take a while...
    All data has been collected.  Processing collected data.
      This may take a while...
    Packaging master node data...
    Writing * to file /tmp/gpfs.snapOut/27348/collect/gpfs.snap.c34f2n03_master_0322131612.out.tar.gz
    Packaging all data.
    Writing . to file /tmp/gpfs.snapOut/27348/all.0322131612.tar
    gpfs.snap completed at Fri Mar 22 13:17:55 EDT 2019
    ###############################################################################
    Send file /tmp/gpfs.snapOut/27348/all.0322131612.tar to IBM Service
    Examine previous messages to determine additional required data.
    ###############################################################################
    
    

    After this command has completed, send the tar file (highlighted) to IBM® service.

  2. The following example collects gpfs.snap data on specific nodes and provides an output directory:
    
    ./gpfs.snap -N c34f2n03.gpfs.net,c13c1apv7.gpfs.net -d /tmp/snap_outdir
    gpfs.snap started at Fri Mar 22 15:54:35 EDT 2019.
    Gathering common data...
    Gathering Linux specific data...
    Gathering extended network data...
    Gathering local callhome data...
    Gathering local sysmon data...
    Gathering trace reports and internal dumps...
    Gathering Transparent Cloud Tiering data at level BASIC...
    gpfs.snap:  The Transparent Cloud Tiering snap file was not located on the node 
         c34f2n03.gpfs.net
    Gathering cluster wide sysmon data...
    Gathering cluster wide callhome data...
    gpfs.snap:  Spawning remote gpfs.snap calls. Master is c34f2n03.
    This may take a while.
    
    Copying file /tmp/snap_outdir/gpfs.snap.c13c1apv7_0322155324.out.tar.gz from c13c1apv7.gpfs.net 
         ...
    gpfs.snap.c13c1apv7_0322155324.out.tar.gz     100% 7720KB   7.5MB/s   00:00
    Successfully copied file /tmp/snap_outdir/gpfs.snap.c13c1apv7_0322155324.out.tar.gz from 
         c13c1apv7.gpfs.net.
    Gathering cluster wide protocol data...
    Gathering waiters from all nodes...
    Gathering mmfs.logs from all nodes.  This may take a while...
    All data has been collected.  Processing collected data.
      This may take a while...
    Packaging master node data...
    Writing * to file /tmp/snap_outdir/collect/gpfs.snap.c34f2n03_master_0322155435.out.tar.gz
    
    Packaging all data.
    Writing . to file /tmp/snap_outdir/all.0322155435.tar
    gpfs.snap completed at Fri Mar 22 15:56:11 EDT 2019
    ###############################################################################
    Send file /tmp/snap_outdir/all.0322155435.tar to IBM Service
    Examine previous messages to determine additional required data.
    ###############################################################################
    

Location

/usr/lpp/mmfs/bin