NVMe-oF Share Screens
17 minute read.
The NVMe-oF screens provide access to screens, widgets, settings, and dialogs to add, manage, or delete NVMe over Fabric subsystems (targets). NVMe-oF (NVMe over Fabric) is a specification that extends NVMe storage access over network fabrics like Ethernet, Fibre Channel, and InfiniBand. It allows hosts to access NVMe storage remotely while maintaining the high performance and low latency benefits of NVMe.
The NVMe-oF Subsystems widget shows on the Shares screen. The header shows the status of the NVMe service as Stopped or Running, the Add button, and the
dropdown menu with two options:- Turn Service On/Off toggle. You can also turn the service on/off from the System > Services screen or set it to automatically restart after a system restart.
- Config Service that opens the NVMe-oF Global Configuration screen. You can access this configuration screen by going to System > Services or using the Global Configuration button on the NVMe-oF screen.
The table in the NVMe-oF Subsystems widget lists each subsystem added in TrueNAS.
Each row shows the subsystem name, the number of namespaces associated with the subsystem, the number of ports available through the subsystem, and the number of hosts allowed or restricted from accessing the subsystem.
The
dropdown menu for each subsystem shows two options:- View - Opens the NVMe-oF screen showing the widgets for the selected subsystem.
- Delete - Opens Delete Subsystem dialog.
The Delete Subsystem dialog confirms you want to delete the subsystem before it is deleted from the TrueNAS system.
Force forces the delete operation if it is in use.
Cancel closes the dialog without deleting the subsystem.
Delete removes the subsystem from the TrueNAS system.
The NVMe-oF screen displays a table listing subsystems (targets) added to Truenas, and a set of Details widgets for the subsystem selected in the table. Shares on top breadcrumb returns you to the Shares screen.
Before adding an NVMe-oF subsystem, the NVMe-oF screen shows a general widget with information about subsystems and a basic comparison to iSCSI.
Global Configuration opens the NVMe-oF Global Configuration screen.
Add Subsystem opens the Add Subsystem screen.
After adding a subsystem, the NVMe-oF screen Subsystem table lists it. The first row of the table is selected by default and shows four Details widgets for that subsystem. Select the row of any listed subsystem to view the detail widgets for that subsystem.
The NVMe-oF screen Subsystem table lists subsystems added to TrueNAS. Each row shows the subsystem name, the number of namespaces associated with the subsystem, the number of ports available through the subsystem, and the number of hosts allowed or restricted from accessing the subsystem.
TrueNAS allows adding a subsystem without configuring a namespace, port, or host, which can be added later. An
alert icon shows beside the namespace name in the table and on the Ports and Namespaces widgets until these are added.Each subsystem shows a group of four Details for subsystemName widgets on the right side of the screen, subsystemName is the name given to the subsystem (i.e., test). Subsystem widgets are:
The Details widget shows the name and NQN ID associated with the TrueNAS subsystem. The NQN shows an edit
icon that changes the NQN to a text-entry field.The Namespaces widget lists namespaces (zvol or file) added to the subsystem and the path to it. Namespaces are similar to iSCSI extents.
Add opens the Add Namespace screen.
Edit opens the Edit Namespace screen.
Delete opens a confirmation dialog for the namespace.
The Ports widget shows the port type and ID associated with the subsystem.
The Add button to the right of Ports shows a dropdown list of options:
The Remove this port from the subsystem icon removes the port from the subsystem but does not delete the port from TrueNAS.
After removing a port, the Add button dropdown list shows the removed port and all available ports on the system in the format IP address:port.
The Associated Hosts widget shows a list of hosts associated with the subsystem. Shows All hosts are allowed if a host is not specified.
After adding a host, the widget shows the NQN identification number for the client host and the Removes this host from the subsystem icon that only removes the host from the subsystem but does not delete it from TrueNAS.
Add shows a dropdown list of options:
- Create New opens the Add Host screen.
- Manage Hosts opens the Hosts window
- Allow all hosts that removes the host from the subsystem but does not delete it. It toggles the Add dropdown list to show the available host NQN hidden by selecting Allow all hosts and removes Allow all hosts from the dropdown list.
Set system-wide NVMe-oF settings. Config Service on the NVMe-oF Subsystem widget dropdown menu, Global Configuration on the NVMe-oF screen, and the
edit icon on the NVMe-oF row on the System > Services screen open the NVMe-oF Global Configuration screen.The Add Subsystem wizard opens after clicking Add on the NVMe-oF Subsystem widget or Add Subsystem on the NVMe-oF screen. The wizard has two parts, What to Share and Access. What to Share shows by default.
The What to Share screen allows configuring the subsystem and adding a namespace.
The Access screen in the Add Subsystem wizard allows configuring hosts allowed to connect to the subsystem and ports the target uses to communicate with hosts.
Allow any host to connect is selected by default. When selected, it allows connections to any host. When not selected, it shows the Allow Hosts option and Add button that opens the Add Host screen.
The Add button to the right of Ports shows a dropdown list of options:
Save saves changes, creates the subsystem, closes the wizard screen, and returns to the previous screen.
The Add Namespace and Edit Namespace screens show the same settings and options. Use to select or create the storage device (zvol or file) for the NVMe-oF share.
Add to the right of Namespaces on the What to Share option of the Add Subsystem wizard opens the Add Namespace screen. Add on the Namespaces widget on the NVMe-oF screen opens the Add Namespaces screen. The
edit icon on the Namespaces widget opens the Edit Namespaces screen.These screens have three tabs:
- Zvol (selected by default)
- Existing File
- New File
The Zvol tab on the Edit Namespace screen allows selecting an existing or creating a new zvol namespace. There are two Path to Zvol fields: the blank field and the file browser field. The top blank field populates with the path for the existing zvol or parent dataset selected using the file browser field below it.
Create Zvol only shows on the Zvol tab. It activates after selecting the parent dataset in the file browser field. It opens the Add Zvol screen.
The Existing File tab on the Edit Namespace allows selecting an existing file as a namespace. There are two Path to File fields: the blank field and the file browser field. The top blank field populates with the path for the existing file selected using the file browser field below it.
The New File tab on the Edit Namespace screen allows creating a new file for a namespace.
Save saves the settings, closes the screen, and returns to the previous screen.
The Delete Namespace opens after clicking the delete icon to the right of a zvol on the Namespaces widget.
The delete icon to the right of a file opens a Delete Namespace dialog showing the option to delete the file.
Use to create a new zvol for the namespace to use for storage. Create Zvol on the Add Namespace screen with the Zvol tab selected opens this screen.
Encryption settings secure data within this zvol. These settings establish the level and type of encryption applied. The default setting is Inherit (non-encrypted) when the root or parent dataset for the new storage is unencrypted. If encrypted, this shows Inherit (encrypted).
Clearing the checkbox shows the Encryption Type setting with two options: Key and Passphrase. Each option shows different setting options.
The Key settings accept a system-generated or user-entered encryption key. Creating a new key file invalidates the previously downloaded key file associated with this dataset. Shows with Generate Key selected by default. This automatically generates an encryption key for the zvol. Clearing the checkmark shows the additional key encryption settings.
The Passphrase settings set encryption to a passphrase of your choice to encrypt the data in the zvol.
The Add Host screen specifies a host and adds it to a subsystem when the Allow any host to connect option on the Add Subsystem > Access screen is not enabled. The Edit Host screen shows the fields associated with the subsystem and allows you to change the host settings.
Require Host Authentication shows the additional setting options.
The Hosts window shows a table listing the host NQN, if it requires authentication, and the number of subsystems that use it. The host row shows the
edit icon and the delete icons.Add New opens the Add Host screen.
Edit opens the Edit Host screen.
Delete opens a delete confirmation dialog for the port.
The Delete Host confirmation dialog deletes the host(s) from the listed subsystems(s) listed in the dialog and from TrueNAS.
Cancel closes the dialog without removing the host from the subsystem.
Delete Anyway deletes the host from the subsystem(s) specified in the dialog.
by subsystems. Ports are formatted as IP address:port.
The Edit Port screen shows current port settings for the selected subsystem. The
edit icon on the port row listed on the Ports dialog opens the Edit Port screen.The Ports window shows a table showing the port name, type, IP address, communication port number, and the number of subsystems that use it. The port row shows the
edit icon and the delete icon.Add New opens the Add Port screen.
Edit opens the Edit Port screen.
Delete opens a delete confirmation dialog for the port.
The Delete Port confirmation dialog removes the port from the selected subsystem but does not delete it from TrueNAS. A deleted port shows on the Add dropdown list on the Ports widget for a selected subsystem on the NVMe-oF screen. The dialog shows the name of the subsystem and the assigned IP address:port assignment.
Cancel closes the dialog without removing the port from the subsystem. Delete Anyway removes the port assignment from the subsystem specified in the dialog.