stafctl

nvme-stas 1.0

## Name

stafctl — STorage Appliance Finder (STAF) utility program

## Synopsis

`stafctl` [OPTIONS...] {COMMAND} [OPTIONS...]

## Description

stafctl is a tool that can be used to communicate with the stafd(8) daemon to retrieve operational data.

## Commands

The following commands are understood:

tron

  Trace ON. Enable code tracing, which is to say that lots of debug information will be printed to the syslog (e.g. systemd-journal).

troff

  Trace OFF. Disable code tracing.

status

  Show runtime status information.

ls

  Show the list of discovery controllers. This will list all the controllers configured in stafd.conf(5) as well as those discovered with mDNS service discovery.

dlp

  Show discovery log pages.

adlp

  Show all discovery log pages.

## Options

The following options are understood:

`-h`, `--help`

  Print the help text and exit.

`--version`

  Print the version string and exit.

`-d`, `--detailed`

  Print additional details.

`-tTRTYPE`, `--transport=TRTYPE`

  NVMe-over-Fabrics fabric type (default: "tcp").

`-aTRADDR`, `--traddr=TRADDR`

  Discovery controller's network address.

`-sTRSVCID`, `--trsvcid=TRSVCID`

  Transport service id (for IP addressing, e.g. tcp, rdma, this field is the port number).

`-wTRADDR`, `--host-traddr=TRADDR`

  Network source address used on the host to connect to the controller.

`-fIFACE`, `--host-iface=IFACE`

  This field specifies the network interface used on the host to connect to the controller.

`-nNQN`, `--nqn=NQN`

  This is an optional field that specifies the Discovery Controller's NVMe Qualified Name. If not specified, this will default to the well-known DC NQN: "`nqn.2014-08.org.nvmexpress.discovery`".

## Values

`TRTYPE`

  rdma, fc, tcp, loop.

`TRADDR`

  IP or Fibre Channel address. E.g. 10.10.0.100.

`TRSVCID`

  E.g., 8009.

`IFACE`

  Network interface name. E.g., eth1, enp0s8, wlp0s20f3.

`NQN`

  NVMe Qualified Name.

## Exit status

On success, 0 is returned; otherwise, a non-zero failure code is returned.

## Examples

Example 1. List all the discovery controllers

    $ stafctl ls
    [{'device':      'nvme0',
      'host-iface':  '',
      'host-traddr': '',
      'subsysnqn':   'nqn.2014-08.org.nvmexpress.discovery',
      'traddr':      '::1',
      'transport':   'tcp',
      'trsvcid':     '8009'}]

Example 2. Enable tracing

    $ stafctl tron

Example 3. Show discovery log pages from a specific discovery controller

    $ stafctl dlp --transport tcp --traddr ::1 --trsvcid 8009
    [{'adrfam':  'ipv6',
      'asqsz':   '32',
      'cntlid':  '65535',
      'portid':  '1',
      'subnqn':  'nqn.1988-11.com.dell:PowerSANxxx:01:20210225100113-454f73093ceb4847a7bdfc6e34ae8e28',
      'subtype': 'nvme',
      'traddr':  '::1',
      'treq':    'disable sqflow',
      'trsvcid': '8009',
      'trtype':  'tcp'},
     {'adrfam':  'ipv6',
      'asqsz':   '32',
      'cntlid':  '65535',
      'portid':  '1',
      'subnqn':  'nqn.1988-11.com.dell:PowerSANxxx:01:20210225100113-454f73093ceb4847a7bdfc6e34aedead',
      'subtype': 'nvme',
      'traddr':  '::1',
      'treq':    'disable sqflow',
      'trsvcid': '8009',
      'trtype':  'tcp'},
     {'adrfam':  'ipv6',
      'asqsz':   '32',
      'cntlid':  '65535',
      'portid':  '1',
      'subnqn':  'nqn.1988-11.com.dell:PowerSANxxx:01:20210225100113-454f73093ceb4847a7bdfc6e34aebeef',
      'subtype': 'nvme',
      'traddr':  '::1',
      'treq':    'disable sqflow',
      'trsvcid': '8009',
      'trtype':  'tcp'}]

## See Also

stafd.conf(5), stafd(8)