Filesystems/{filesystemName}/filesets: GET

Gets information of all filesets that are part of a specific file system.

Availability

Available on all IBM Storage Scale editions.

Description

The GET filesystems/{filesystemName}/filesets request gets information about all filesets in the specified file system. For more information about the fields in the data structures that are returned, see the topics mmcrfileset command, mmchfileset command, and mmlsfileset command.

Request URL

https://<IP address or host name of API server>:<port>/scalemgmt/v2/filsystems/filesystemName/filesets
where:
filesystem/filesystemName
Specifies the name of the file system to which the filesets belong. Required.
filesets
Specifies that you need to get details of all filesets that belong to the specified file system. Required.

Request headers

Accept: application/json

Request parameters

The following parameters can be used in the request URL to customize the request:
Table 1. List of parameters
Parameter name Description and applicable keywords Required/optional
filesystemName The file system name. You can also use keywords such as :all:, :all_local:, or :all_remote: Required.
fields Comma separated list of fields to be included in response. ':all:' selects all available fields. Optional.
filter Filter objects by expression. For example, 'status=HEALTHY,entityType=FILESET' Optional.

Request data

No request data.

Response data

{
  "status": {
      "code":ReturnCode,
      "message":"ReturnMessage"
   },
 "paging": 
  {
    "next": "URL",
    "fields": "Fields",
    "filter": "Filters",
    "baseUrl": "Base URL",
    "lastId": "ID of the last element",
  },
   "filesets": [
      {      
            "filesetName":"Fileset",
            "filesystemName":"Device",   
            "config": 
             {   
               "path": "Path",
               "inodeSpace":"Inodes",
               "maxNumInodes":"Inodes",
               "permissionChangeMode":"Mode",
               "comment":"Comment",
               "iamMode":"Mode",
               "oid": "ID",
               "id":"ID",
               "status":"Status"
               "parentId":"ID",
               "created":"DateTime",
               "isInodeSpaceOwner":"isOwner",
               "inodeSpaceMask":"inodeSpace",
               "snapID":"ID",
               "rootInode":"Inode",
           }
        "afm": 
          {  
            "afmTarget":"Protocol://{Host | Map}/Path", 
            "afmState":"enabled | disabled",
            "afmMode": "{single-writer | sw | read-only | ro | local-updates | lu | 
               independent-writer | Primary | Secondary}",
            "afmFileLookupRefreshInterval":"Interval",
            "afmDirLookupRefreshInterval":"Interval",
            "afmDirOpenRefreshInterval":"Interval",
            "afmAsyncDelay":"Delay",
            "afmNeedsRecovery":"true | false"      
            "afmExpirationTimeout":"Interval",
            "afmRPO":"Interval",  
            "afmLastPSnapId":"Psnap ID"
            "afmShowHomeSnapshots":"{yes | no}",
            "afmNumReadThreads":"Number of read threads",
            "afmReadBufferSize":"Read buffer size",
            "afmWriteBufferSize":"Write buffer size", 
            "afmReadSparseThreshold":"Read sparse thread",
            "afmParallelReadChunkSize":"Size",
            "afmParallelReadThreshold":"Threshold",
            "afmNumFlushThreads":"Threads",
            "afmPrefetchThreshold":"{1 | 1-99 | 100}",
            "afmEnableAutoEviction":"{true | false}",   
            "afmParallelWriteThreshold":"Threshold",
            "afmNeedsResync":"true | false", 
            "afmParallelWriteChunkSize":"Size",
            "afmNumWriteThreads":"Number of write threads",
            "afmPrimaryID":"ID",
            "afmDRState":"DR state"
            "afmAssociatedPrimaryId":"ID"
            "afmDIO":"",
            "afmHostMapName":"Name",
            "afmHostMapping":"Mapping details"[     
              {
               "home":"IP or host name of home",
               "cache":"IP or hostname of cache",
              }
             ]
           "afmGatewayNode":"IP or host name of home",
           "afmIOFlags":"I/O flag",
           "afmVerifyDmapi":"true | false",
           "afmSkipHomeACL":"true | false",
           "afmSkipHomeMtimeNsec":"true | false",  
           "afmForceCtimeChange":"true | false",
           "afmSkipResyncRecovery":"true | false",
           "afmSkipConflictQDrop":"true | false",
           "afmRefreshAsync":"true | false",
           "afmParallelMounts":"true | false",
           "afmRefreshOnce":"true | false",
           "afmSkipHomeCtimeNsec":"true | false",
           "afmReaddirOnce":"true | false",
           "afmResyncVer2":"true | false",
           "afmSnapUncachedRead":"true | false",
           "afmFastCreate":"true | false",
           "afmObjectXattr":"true | false",
           "afmObjectVHB":"true | false",
           "afmObjectBlkIO":"true | false",
           "afmSkipHomeRefresh":"true | false",
           "afmObjectGCS":"true | false",
           "afmObjectUserKeys":"true | false",
           "afmWriteOnClose":"true | false",
           "afmObjectSubdir":"true | false",
           "afmObjectSSL":"true | false",
           "cacheState":"State of the cache",
           "queueLength":"Queue length",
           "queueNumExec":"Queue number",
           "afmHostMaps":"Host map details",[
             {
             "home":"IP address or hostname of the home",
             "cache":"IP address or hostname of the cache",
             }
             ]
       },
   "usage":
     {
      "usedInodes":"Inodes used",
      "allocatedInodes":"Inodes allocated",
      "usedBytes":"Used capacity",
      "inodeSpaceUsedInodes":"Inode space used",
      "inodeSpaceFreeInodes":"Inode space available",
     }
}   
}
"status":
Return status.
"message": "ReturnMessage",
The return message.
"code":"ReturnCode"
The return code.
"paging":
Paging details.
"next": "URL",
The URL to retrieve the next page. Paging is enabled when more than 1000 objects would be returned by the query.
"fields": "Fields",
The fields used in the original request.
"filter": "Filters",
The filter used in the original request.
"baseUrl": "Base URL",
The URL of the request without any parameters.
"lastId": "ID of the last element",
The ID of the last element that can be used to retrieve the next elements.
"filesets":
An array of information about the filesets in the specified file system. Each array element describes one fileset and can contain the data structures afm, config, links, and state. For more information about the fields in these data structures, see the links at the end of this topic:
"filesets":
Information about the fileset configuration.
"filesetName": "Fileset",
The name of the fileset.
"filesystemName": "Device"
Required. The file system in which the fileset is located.
"config":
"path": "Path"
The absolute path of the fileset.
"inodeSpace": "Inodes"
The number of inodes that are allocated for use by the fileset.
"maxNumInodes": "Inodes"
The inode limit for the inode space that is owned by the specified fileset.
"permissionChangeMode": "Mode"
The permission change mode. Controls how chmod and ACL commands affect objects in the fileset.
chmodOnly
Only the chmod command can change access permissions.
setAclOnly
Only the ACL commands and API can change access permissions.
chmodAndSetAcl
Both the chmod command and ACL commands can change access permissions.
chmodAndUpdateAcl
Both the chmod command and ACL commands can change access permissions.
"comment": "Comment",
A comment that appears in the output of the mmlsfileset command.
"iamMode": "Mode"
The integrated archive manager (IAM) mode for the fileset.
ad | advisory
nc | noncompliant
co | compliant
"oid": "ID"
Internal identifier of the fileset that is used for paging.
"id": ID
The fileset identifier.
"status": "Status"
Specifies whether the file is linked or unlinked.
"parentId": ParentID
The parent identifier of the fileset.
"created": "DateTime",
The date and time when the fileset was created.
"isInodeSpaceOwner": "isOwner",
Indicates whether the fileset has its own inode space.
"isInodeSpaceMask": "isMask",
The inode space mask.
"snapID": ID
The snapshot ID.
"afm":
Information about Active File Management (AFM).
"afmTarget": "Interval"Protocol://{Host | Map}/Path"
The home that is associated with the cache.
"afmState":"enabled | disabled"
"afmMode": "{single-writer | sw | read-only | ro | local-updates | lu | independent-writer | Primary | Secondary}"
The mode in which the cache operates.
"afmFileLookupRefreshInterval": Interval
The interval in seconds between data revalidations of files that are caused by lookup operations such as ls and stat.
"afmDirLookupRefreshInterval":" Interval"
The interval in seconds between data revalidations of directories that are caused by lookup operations such as ls and stat.
"afmDirOpenRefreshInterval": Interval
The interval in seconds between data revalidations of directories that are caused by lookup operations.
"afmAsyncDelay": "Delay"
The time in seconds by which to delay write operations because of the lag in updating remote clusters.
"afmNeedsRecovery":"true | false"
"afmExpirationTimeout": Interval
The timeout in seconds after which cached data is considered expired. Used with afmDisconnectTimeout, which is set with mmchconfig.
"afmRPO": Interval
The recovery point objective (RPO) interval, in minutes, for a primary fileset.
"afmLastPSnapId":"Psnap ID"
"afmShowHomeSnapshots": "{yes | no}"
Shows or hides the home snapshot directory in the cache. Specify yes to show, no to hide.
"afmNumReadThreads":"Number of read threads"
Number of AFM read threads
"afmReadBufferSize":"Read buffer size"
AFM read buffer size.
"afmWriteBufferSize":"Write buffer size"
AFM write buffer size.
"afmReadSparseThreshold":"Read sparse thread"
Read sparse threshold.
"afmParallelReadChunkSize": Size
The minimum chunk size of read data, in bytes, that must be distributed among the gateway nodes during parallel reads.
"afmParallelReadThreshold": Threshold
The minimum file size, in megabytes, at which to do parallel reads.
"afmNumFlushThreads": numThreads
The number of threads that are used on each gateway to synchronize updates to the home cluster.
"afmPrefetchThreshold": {1 | 1-99 | 100}
The percentage of file size that must be cached before the entire file is prefetched.
0
Enables full file prefetching.
1-99
The percentage of file size that must be cached before the entire file is prefetched.
100
Disables full file prefetching.
"afmEnableAutoEviction": "{true | false}"
Enables or disables eviction on the fileset.
"afmParallelWriteThreshold": Threshold
The minimum file size, in megabytes, at which to do parallel writes.
"afmNeedsResync":"true | false"
Whether the AFM needs resynchronization.
"afmParallelWriteChunkSize": Size
The minimum chunk size of write data, in bytes, that must be distributed among the gateway nodes during parallel writes.
"afmNumWriteThreads":"Number of write threads"
"afmPrimaryID": "ID"
The unique primary ID of the primary fileset for asynchronous data replication.
afmDRState":"DR state"
Status of the AFM DR.
"afmAssociatedPrimaryId":"ID"
Associated primary ID.
"afmDIO":"Number"
IO details.
"afmHostMapName":"Name"
The name of the AFM host map this fileset belongs to
"afmHostMapping":
"home":"Home address"
IP or hostname of home.
"cache":"Cache address"
IP or hostname of cache
"afmGatewayNode":"Gateway node",
Name of the gateway node.
"afmIOFlags":"I/O flag"
AFM I/O flag.
"afmVerifyDmapi":"true | false"
Whether to verify AFM DMAPI.
"afmSkipHomeACL":"true | false"
Whether to ignore home ACL.
"afmSkipHomeMtimeNsec":"true | false"
Whether to skip home mtime and nsec.
"afmForceCtimeChange":"true | false"
Whether to force change ctime.
"afmSkipResyncRecovery":"true | false"
"afmSkipConflictQDrop":"true | false"
"afmRefreshAsync":"true | false"
"afmParallelMounts":"true | false"
"afmRefreshOnce":"true | false"
"afmSkipHomeCtimeNsec":"true | false"
"afmReaddirOnce":"true | false"
"afmResyncVer2":"true | false"
"afmSnapUncachedRead":"true | false"
"afmFastCreate":"true | false"
"afmObjectXattr":"true | false"
Whether user extended attributes are available in object store.
"afmObjectVHB":"true | false"
Whether to use Virtual Hosted Bucket, for Alibaba Cloud Object Storage Service (OSS).
"afmObjectBlkIO":"true | false"
"afmSkipHomeRefresh":"true | false"
"afmObjectGCS":"true | false"
Whether to use Google Cloud Services.
"afmObjectUserKeys":"true | false"
Whether to use user keys on requests from the object store.
"afmWriteOnClose":"true | false"
"afmObjectSubdir":"true | false"
Whether to create sub-directory if '/' is present in the object name.
"afmObjectSSL":"true | false"
Whether to enable SSL certificate verification, which is valid only with HTTPS from the object store.
"cacheState":"State of the cache"
Current cache state.
"queueLength":""
Length of the queue on the primary gateway.
"queueNumExec":""
Number of operations played at home since the fileset is last active.
"afmHostMaps":""
"home":""
IP address or hostname of the home site.
"cache":""
IP address or hostname of the cache site.
"usage":""
"usedInodes":"Used inodes"
Specifies the used inodes for the fileset.
"allocatedInodes":"allocated inodes"
Specifies the allocated inodes for the fileset.
"usedBytes":"Used bytes"
Specifies the used bytes for the fileset.
"inodeSpaceUsedInodes":"Used inode space"
Specifies the used inode of the fileset.
"inodeSpaceFreeInodes":"Free inodes"
Specifies the number of inode that are available for the fileset.

Examples

The following example gets information about the filesets in file system gpfs0:

Request data:
curl -k -u admin:admin001 -X GET --header 'accept:application/json' 
'https://198.51.100.1:443/scalemgmt/v2/filesystems/gpfs0/filesets'
The request URL with no field or filter parameter returns only the details that uniquely identify the object.
Response data:
Note: In the JSON data that is returned, the return code indicates whether the command is successful. The response code 200 indicates that the command successfully retrieved the information. Error code 400 represents an invalid request and 500 represents internal server error.
{
  "filesets" : [ {
    "config" : {
      "filesetName" : "root",
      "filesystemName" : "gpfs0"
    }
  }, {
    "config" : {
      "filesetName" : "fset1",
      "filesystemName" : "gpfs0"
    }
  }, {
    "config" : {
      "filesetName" : "fset2",
      "filesystemName" : "gpfs0"
    }
  } ],
  "status" : {
    "code" : 200,
    "message" : "The request finished successfully"
  }
}
Using the field parameter ":all:" returns entire details of the filesets that are part of the specified file system. For example:
curl -k -u admin:admin001 -X GET --header 'accept:application/json' 
'https://198.51.100.1:443/scalemgmt/v2/filesystems/gpfs0/filesets?fields=:all:'
{
  "status": {
    "code": 200,
    "message": "..."
  },
  "paging": {
    "next": "https://localhost:443/scalemgmt/v2/filesystems/gpfs0/filesets?lastId=10001",
    "fields": "period,restrict,sensorName",
    "filter": "usedInodes>100,maxInodes>1024",
    "baseUrl": "/scalemgmt/v2/perfmon/sensor/config",
    "lastId": 10001
  },
  "filesets": [
    {
      "filesetName": "myFset1",
      "filesystemName": "gpfs0",
      "config": {
        "path": "/mnt/gpfs0/myFset1",
        "inodeSpace": 0,
        "maxNumInodes": 4096,
        "permissionChangeMode": "chmodAndSetAcl",
        "comment": "Comment1",
        "iamMode": "off",
        "oid": 158,
        "id": 5,
        "status": "Linked",
        "parentId": 1,
        "created": "2016-12-13 13.59.15",
        "isInodeSpaceOwner": false,
        "inodeSpaceMask": 0,
        "snapId": 0,
        "rootInode": 131075
      },
      "afm": {
        "afmTarget": "nfs://10.0.100.11/gpfs/afmHomeFs/afmHomeFileset2",
        "afmState": "enabled",
        "afmMode": "read-only",
        "afmFileLookupRefreshInterval": 30,
        "afmFileOpenRefreshInterval": 0,
        "afmDirLookupRefreshInterval": 60,
        "afmDirOpenRefreshInterval": 60,
        "afmAsyncDelay": 0,
        "afmNeedsRecovery": true,
        "afmExpirationTimeout": 100,
        "afmRPO": 0,
        "afmLastPSnapId": 0,
        "afmShowHomeSnapshots": false,
        "afmNumReadThreads": 0,
        "afmReadBufferSize": 0,
        "afmWriteBufferSize": 0,
        "afmReadSparseThreshold": 0,
        "afmParallelReadChunkSize": 134217728,
        "afmParallelReadThreshold": 1024,
        "afmNumFlushThreads": 4,
        "afmPrefetchThreshold": 0,
        "afmEnableAutoEviction": false,
        "afmParallelWriteThreshold": 0,
        "afmNeedsResync": true,
        "afmParallelWriteChunkSize": 0,
        "afmNumWriteThreads": 4,
        "afmPrimaryID": "string",
        "afmDRState": "string",
        "afmAssociatedPrimaryId": "string",
        "afmDIO": 0,
        "afmHostMapName": "map1",
        "afmHostMapping": [
          {
            "home": "10.0.100.13",
            "cache": "cache-41"
          }
        ],
        "afmGatewayNode": "testnode-11",
        "afmIOFlags": "0x4000000",
        "afmVerifyDmapi": true,
        "afmSkipHomeACL": true,
        "afmSkipHomeMtimeNsec": true,
        "afmForceCtimeChange": true,
        "afmSkipResyncRecovery": true,
        "afmSkipConflictQDrop": true,
        "afmRefreshAsync": true,
        "afmParallelMounts": true,
        "afmRefreshOnce": true,
        "afmSkipHomeCtimeNsec": true,
        "afmReaddirOnce": true,
        "afmResyncVer2": true,
        "afmSnapUncachedRead": true,
        "afmFastCreate": true,
        "afmObjectXattr": false,
        "afmObjectVHB": false,
        "afmObjectBlkIO": true,
        "afmSkipHomeRefresh": true,
        "afmObjectGCS": false,
        "afmObjectUserKeys": false,
        "afmWriteOnClose": true,
        "afmObjectSubdir": true,
        "afmObjectSSL": false,
        "cacheState": "Active",
        "queueLength": 5,
        "queueNumExec": 10,
        "afmHostMaps": [
          {
            "home": "10.0.100.13",
            "cache": "cache-41"
          }
        ]
      },
      "usage": {
        "usedInodes": 1000,
        "allocatedInodes": 65856,
        "usedBytes": 134217728,
        "inodeSpaceUsedInodes": 1100,
        "inodeSpaceFreeInodes": 55856
      }
    }
  ]
}