1STAFD(8)                                                              STAFD(8)
2
3
4

NAME

6       stafd - STorage Appliance Finder
7

SYNOPSIS

9       stafd [OPTIONS...]
10

DESCRIPTION

12       stafd is a system daemon that can be used to automatically locate and
13       connect to NVMe-oF Discovery Controllers using mDNS service discovery.
14       It can also be manually configured with stafd.conf(5) to connect to
15       Discovery Controllers that cannot be located using mDNS.
16

OPTIONS

18       The following options are understood:
19
20       -h, --help
21           Print the help text and exit.
22
23       --version
24           Print the version string and exit.
25
26       -fFILE, --conf-file=FILE
27           Specify a different configuration file than stafd.conf(5) (default:
28           /etc/stas/stafd.conf).
29
30       -s, --syslog
31           Send messages to syslog instead of stdout. Use this when running
32           stafd as a daemon. (default: false).
33
34       --tron
35           Trace ON. (default: false)
36
37       --idl=FILE
38           Print D-Bus IDL to FILE and exit.
39

EXIT STATUS

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

DAEMONIZATION

44       stafd is managed by systemd. The following operations are supported:
45
46       Table 1.
47       ┌─────────────────────────────────────┬────────────────────────────┐
48Command                              Description                
49       ├─────────────────────────────────────┼────────────────────────────┤
50       │           $ systemctl start stafd   │ Start daemon.              │
51       ├─────────────────────────────────────┼────────────────────────────┤
52       │           $ systemctl stop stafd    │ Stop daemon. The SIGTERM   │
53       │                                     │ signal is used to tell the │
54       │                                     │ daemon to stop.            │
55       ├─────────────────────────────────────┼────────────────────────────┤
56       │           $ systemctl restart stafd │ Effectively a stop +       │
57       │                                     │ start.                     │
58       ├─────────────────────────────────────┼────────────────────────────┤
59       │           $ systemctl reload stafd  │ Reload configuration. This │
60       │                                     │ is done in real time       │
61       │                                     │ without restarting the     │
62       │                                     │ daemon. The SIGHUP signal  │
63       │                                     │ is used to tell the daemon │
64       │                                     │ to reload its              │
65       │                                     │ configuration file. Note   │
66       │                                     │ that configuration         │
67       │                                     │ parameters that affect     │
68       │                                     │ connections (e.g. kato),   │
69       │                                     │ will not apply to existing │
70       │                                     │ connections. Only          │
71       │                                     │ connections established    │
72       │                                     │ after the configuration    │
73       │                                     │ was changed will utilize   │
74       │                                     │ the new configuration      │
75       │                                     │ parameters.                │
76       └─────────────────────────────────────┴────────────────────────────┘
77

DESIGN

79       stafd use the GLib main loop. The GLib Python module provides several
80       low-level building blocks that stafd requires. In addition, many Python
81       modules "play nice" with GLib such as dasbus (D-Bus package) and pyudev
82       (UDev package).  GLib also provides additional components such as
83       timers, signal handlers, and much more.
84
85       stafd connects to the avahi-daemon using D-Bus. The avahi-daemon, or
86       simply Avahi, is an mDNS discovery service used for zero-configuration
87       networking (zeroconf).  stafd registers with Avahi to automatically
88       locate Central Discovery Controllers (CDC) and Direct Discovery
89       Controllers (DDC). When Avahi finds Discovery Controllers (DC), it
90       notifies stafd which connects to the DC with the help of the libnvme
91       library. Once a connection to a DC is established, stafd can retrieve
92       the discovery log pages from that DC and cache them in memory.
93

CONFIGURATION

95       stafd can automatically locate discovery controllers (DC) with the help
96       of Avahi and connect to them. However, stafd can also operate in a
97       non-automatic mode based on manually entered configuration. In other
98       words, DCs can be entered in a configuration named
99       /etc/stas/stafd.conf. This configuration file also provides additional
100       parameters, such as log-level attributes used for debugging purposes.
101

D-BUS API

103       The interface to stafd is D-Bus. This allows other programs, such as
104       stafctl, to communicate with stafd. The D-Bus address is
105       org.nvmexpress.staf.
106

SEE ALSO

108       stafd.conf(5), stafd.service(8), stafctl(1), org.nvmexpress.staf(5).
109
110
111
112nvme-stas 2.2.2                                                       STAFD(8)
Impressum