ESXCLI Commands

ESXCLI Commands

esxcli nvme Commands

Command Description Options Help
nvme adapter list List all NVMe adapters.
--help
Show the help message.
nvme controller identify Get NVMe Identify Controller data.
--controller | -c
Controller to operate on. (required)
--format | -f
Output format. Valid values are:
detailed: Show bit level value and description.
hex: Dump the data in hex format.
--help
Show the help message.
nvme controller list List NVMe controllers.
--adapter | -a
Filter the output to a specific adapter.
--protocol | -p
Filter the output to a specific transport protocol. Valid Values are: [FC, PCIe, RDMA, TCP].
--skip-vvols | -V
Filter the output to exclude vVol controllers.
--vvols | -v
Filter the output to vVol controllers only.
--help
Show the help message.
nvme device get Get NVMe device information
--adapter | -A
Adapter to operate on (required)
--help
Show the help message.
nvme device list List NVMe devices registered to VMware NVMe driver
--help
Show the help message.
nvme device config list List the configurable parameters for this plugin
--help
Show the help message.
nvme device config set Set the plugin's parameter
--parameter | -p
Parameter name (required)
--value | -v
Parameter value (required)
--help
Show the help message.
nvme device controller list List all controllers on the device if namespace is not specified, otherwise list all controllers the namespace attached
--adapter | -A
Adapter to operate on (required)
--namespace | -n
Namespace ID attached. ID starts from 1
--help
Show the help message.
nvme device feature cap Get NVMe device feature supported capabilities information
--adapter | -A
Adapter to operate on (required)
--help
Show the help message.
nvme device feature get Get NVMe device feature
--adapter | -A
Adapter to operate on (required)
--cdw11 | -c
Command Dword 11
--cdw12 | -w
Command Dword 12
--cdw13 | -x
Command Dword 13
--cdw14 | -y
Command Dword 14
--cdw15 | -z
Command Dword 15
--fid | -f
Feature ID (required)
--length | -l
Feature data length.
--namespace | -n
Namespace to operate on
--path | -p
Data path. If set, the raw feature data will be wrote to the specified file. If not set, the feature data will be printed in hex format.
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature set Set NVMe device feature
--adapter | -A
Adapter to operate on (required)
--cdw11 | -c
Command Dword 11
--cdw12 | -w
Command Dword 12
--cdw13 | -x
Command Dword 13
--cdw14 | -y
Command Dword 14
--cdw15 | -z
Command Dword 15
--fid | -f
Feature ID (required)
--namespace | -n
Namespace to operate on
--path | -p
Feature data file path
--save | -S
save the attribute
--help
Show the help message.
nvme device feature aec get Get NVMe device feature async event configuration information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature aec set Set NVMe device feature async event configuration information
--adapter | -A
Adapter to operate on (required)
--fwnotices | -w
an asynchronous event notification is sent to the host for a Firmware Activation Starting event, 0 for false, 1 for true, 0 will be passed as default value, if not set
--nsnotices | -m
an asynchronous event notification is sent to the host for a Namespace Attribute change, 0 for false, 1 for true, 0 will be passed as default value, if not set
--save | -S
save the attribute
--value | -v
SMART health critical warnings bitmap to be set, refer to Figure 79, NVMe 1.2 SPEC (required)
--help
Show the help message.
nvme device feature apst get Get NVMe device feature autonomous power state transition information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature ar get Get NVMe device feature arbitration information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature ar set Set NVMe device feature arbitration information
--adapter | -A
Adapter to operate on (required)
--save | -S
save the attribute
--value | -v
Arbitration Burst value to be set (required)
--value2 | -x
Low Priority Weight value to be set (required)
--value3 | -y
Medium Priority Weight value to be set (required)
--value4 | -z
High Priority Weight value to be set (required)
--help
Show the help message.
nvme device feature er get Get NVMe device feature error recovery information
--adapter | -A
Adapter to operate on (required)
--namespace | -n
Namespace to operate on
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature er set Set NVMe device feature error recovery information
--adapter | -A
Adapter to operate on (required)
--enable | -e
Deallocated or unwritten logical block error enable value to be set. The default value is 0.
--namespace | -n
Namespace to operate on, 0 will be passed as default value, if not set
--save | -S
Save the attribute
--value | -v
Time limited error recovery value to be set (required)
--help
Show the help message.
nvme device feature hi get Get NVMe device feature host identifier information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature hmb get Get NVMe device feature host memory buffer information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature ic get Get NVMe device feature interrupt coalescing information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature ic set Set NVMe device feature interrupt coalescing information
--adapter | -A
Adapter to operate on (required)
--save | -S
save the attribute
--value | -v
Aggregation threshold value to be set (required)
--value2 | -x
Aggregation time value to be set (required)
--help
Show the help message.
nvme device feature ivc get Get NVMe device feature interrupt vector configuration information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature ivc set Set NVMe device feature interrupt vector configuration information
--adapter | -A
Adapter to operate on (required)
--save | -S
Save the attribute
--value | -v
Interrupt vector value to be set (required)
--value2 | -x
Coalescing deactivate value to be set, 0 for false (activate), 1 for true (deactivate) (required)
--help
Show the help message.
nvme device feature kat get Get NVMe device feature keep alive timer information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature kat set Set NVMe device feature keep alive timer information
--adapter | -A
Adapter to operate on (required)
--save | -S
save the attribute
--timeout | -t
timeout value for the keep alive feature to be set (required)
--help
Show the help message.
nvme device feature lba get Get NVMe device feature LBA range type information
--adapter | -A
Adapter to operate on (required)
--namespace | -n
Namespace to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature nq get Get NVMe device feature number of queue information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature pm get Get NVMe device feature power management information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature pm set Set NVMe device feature power management information
--adapter | -A
Adapter to operate on (required)
--save | -S
save the attribute
--value | -v
Power state value to be set (required)
--workload | -w
Workload Hint to be set, 0 will be passed as default value, if not set
--help
Show the help message.
nvme device feature spm get Get NVMe device feature software progress marker information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature spm set Set software progress marker feature information, will clear Pre-boot Software Load Count (PBSLC) to 0
--adapter | -A
Adapter to operate on (required)
--save | -S
save the attribute
--help
Show the help message.
nvme device feature tt get Get NVMe device feature temperature threshold information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature tt set Set NVMe device feature temperature threshold information
--adapter | -A
Adapter to operate on (required)
--save | -S
save the attribute
--sensor | -s
Threshold temperature select value to be set, 0 will be passed as default value, if not set
--under | -u
Set under temperature threshold
--value | -v
Temperature threshold value to be set (required)
--help
Show the help message.
nvme device feature vwc get Get NVMe device feature volatile write cache information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature vwc set Set NVMe device feature volatile write cache information
--adapter | -A
Adapter to operate on (required)
--save | -S
save the attribute
--value | -v
Volitale write cache enable value to be set (required)
--help
Show the help message.
nvme device feature wa get Get NVMe device feature write atomicity information
--adapter | -A
Adapter to operate on (required)
--select | -S
specify which value of the attributes to return, "current", "default", "saved"
--help
Show the help message.
nvme device feature wa set Set NVMe device feature write atomicity information
--adapter | -A
Adapter to operate on (required)
--save | -S
Save the attribute
--value | -v
Deactivate Normal value to be set, 0 for false (activate), 1 for true (deactivate) (required)
--help
Show the help message.
nvme device firmware activate Commit downloaded firmware image to a specific slot
--action | -a

Activate action
0: Downloaded image replaces the image indicated by the firmware slot field. This image is not activated.
1: Downloaded image replaces the image indicated by the firmware slot field. This image is activated at the next reset.
2: The image specified by the firmware slot field is activated at the next reset.
3: The image specified by the firmware slot field is requested to be activated immediately without reset.
(required)
--adapter | -A
Adapter to operate on (required)
--slot | -s
Slot number. If the value specified is 0, then the controller shall choose the firmware slot. (required)
--help
Show the help message.
nvme device firmware download Download firmware image to the device
--adapter | -A
Adapter to operate on (required)
--firmware | -f
Firmware image path (required)
--offset | -o
Firmware image offset. This parameter is needed if the firmware image is split across multiple files. The default value is 0.
--xfersize | -x
Size to split each transfer. This parameter is needed if the device has special requirement on the firmware transfer size.
--help
Show the help message.
nvme device log get Get NVMe log page
--adapter | -A
Adapter to operate on (required)
--length | -l
Log page length. (required)
--lid | -i
Log page ID. Both decimal number and hexadecimal number are accepted. Hexadecimal number should start with '0x' or '0X'. (required)
--lsi | -I
Log specific ID. The default value is 0.
--lsp | -s
Log specific field. The default value is 0.
--namespace | -n
Namespace ID. The default value is 0xFFFFFFFF.
--offset | -o
Log page offset. The default value is 0.
--path | -p
Log path. If set, the raw log data will be wrote to the specified file. If not set, the log data will be printed in hex format.
--rae | -r
Retain asynchronous event. The default value is 0.
--uuid | -u
UUID index. The default value is 0.
--help
Show the help message.
nvme device log error get Get NVMe device error log information
--adapter | -A
Adapter to operate on (required)
--elpe | -e
Error log page entries. This value indicates the number of log entries you wish to get. The maximum number of entries supported is device-specific. (required)
--help
Show the help message.
nvme device log fwslot get Get NVMe device firmware slot log information
--adapter | -A
Adapter to operate on (required)
--help
Show the help message.
nvme device log persistentevent get Get NVMe persistent event log
--action | -a
Action the controller shall take during processing this command. 0: Read log data. 1: Establish context and read log data. 2: Release context. (required)
--adapter | -A
Adapter to operate on (required)
--path | -p
Persistent event log path. This parameter is required if the --action parameter is 0 or 1.
--help
Show the help message.
nvme device log smart get Get NVMe device SMART log information
--adapter | -A
Adapter to operate on (required)
--namespace | -n
Namespace ID. If log page is supported on a per namespace basis this value indicates the ID of namespace you wish to get log from. This parameter can be omitted to request global log page.
--help
Show the help message.
nvme device log telemetry controller get Get NVMe telemetry controller-initiated data
--adapter | -A
Adapter to operate on (required)
--data | -d
Data area to get telemetry data, 3 is selected if not set
--path | -p
Telemetry log path (required)
--help
Show the help message.
nvme device log telemetry host get Get NVMe telemetry host-initiated data
--adapter | -A
Adapter to operate on (required)
--data | -d
Data area to get telemetry data, 3 is selected if not set
--path | -p
Telemetry log path (required)
--help
Show the help message.
nvme device namespace attach Attach namespace on NVMe device
--adapter | -A
Adapter to operate on (required)
--controller | -c
Controller ID to attach. ID starts from 0 (required)
--namespace | -n
Namespace ID to attach. ID starts from 1 (required)
--help
Show the help message.
nvme device namespace create Create namespace on NVMe device
--adapter | -A
Adapter to operate on (required)
--capacity | -c
Namespace Capacity (required)
--dps | -p
End-to-End Data Protection Type Settings (required)
--flbas | -f
Formatted LBA Size (required)
--nmic | -m
Namespace Multi-path IO and Namespace Sharing Capabilities (required)
--size | -s
Namespace Size (required)
--help
Show the help message.
nvme device namespace delete Delete namespace on NVMe device
--adapter | -A
Adapter to operate on (required)
--namespace | -n
ID of namespace to delete, starts from 1 (required)
--help
Show the help message.
nvme device namespace detach Detach namespace on NVMe device
--adapter | -A
Adapter to operate on (required)
--controller | -c
Controller ID to detach. ID starts from 0 (required)
--namespace | -n
ID of namespace to detach. ID starts from 1 (required)
--help
Show the help message.
nvme device namespace format Change namespace format
--adapter | -A
Adapter to operate on (required)
--format | -f
LBA Format(LBAF) (required)
--ms | -m
Metadata Settings(MS). 0: Metadata is transferred as part of a separate buffer. 1: Metadata is transferred as part of an extended data LBA. (required)
--namespace | -n
Namespace ID (required)
--pi | -p
Protection Information(PI). 0: Protection information is not enabled. 1: Protection information is enabled, Type 1. 2: Protection information is enabled, Type 2. 3: Protection information is enabled, Type 3. (required)
--pil | -l
Protection Information Location(PIL). 0: PI is transferred as the last eight bytes of metadata, if PI is enabled. 1: PI is transferred as the first eight bytes of metadata, if PI is enabled. (required)
--ses | -s
Secure Erase Settings(SES). 0: No secure erase operation requested. 1: User Data Erase. 2: Cryptographic Erase. (required)
--help
Show the help message.
nvme device namespace get Get nvme namespace information
--adapter | -A
Adapter to operate on (required)
--namespace | -n
ID of namespace to get information from. ID starts from 1 (required)
--help
Show the help message.
nvme device namespace list List namespace on NVMe device
--adapter | -A
Adapter to operate on (required)
--help
Show the help message.
nvme device register get Dump NVMe device registers
--adapter | -A
Adapter to operate on (required)
--help
Show the help message.
nvme device timeout get Get timeout value of IO timeout checker
--adapter | -A
Adapter to operate on (required)
--help
Show the help message.
nvme device timeout set Set timeout value for IO timeout checker
--adapter | -A
Adapter to operate on (required)
--timeout | -t
IO timeout seconds for internal checker. Maximum timeout value is 40. 0: deactivate timeout checker. (required)
--help
Show the help message.
nvme driver loglevel set Set NVMe driver log level and debug level
--debuglevel | -d

Debug level(hex int format). When log level is 5, this value is used to manupulate NVMe driver parameter: nvme_dbg. This parameter can be omitted to indicate value 0.
BIT_0: Print ctrlr level log
BIT_1: Print namespace level log
BIT_2: Print queue level log
BIT_3: Print IO command level log
BIT_4: Print admin command level log
BIT_5: Print management level log
BIT_6: Print exception handler log
BIT_7: Print split command log
BIT_13: Print timeout handler log
BIT_14: Print init/cleanup log
BIT_15: Print temp log
BIT_16: Dump SG array
BIT_17: Dump PRP
BIT_18: Dump cdb
BIT_19: Dump NVM command
BIT_20: Dump completion queue entry
BIT_21: Dump user passthru data
BIT_22: Dump namespace info
BIT_23: Dump timeout info
BIT_24: Dump smart log info
--loglevel | -l

Log level. This value is used to manupulate NVMe driver parameter: nvme_log_level.
1: error
2: warning
3: info
4: verbose
5: debug
(required)
--help
Show the help message.
nvme fabrics connect Connect to an NVMe controller on a specified target through an adapter.
--adapter | -a
Adapter through which the controller will be connected. (required)
--admin-queue-size | -q
Size of the admin queue (default: 32).
--controller-id | -c
ID of the controller to be connected. (default: 0xFFFF)
--digest | -d
Enable/disable digest verification (only for NVMe over TCP). Available options are:
0: Disable digest verification (default)
1: Enable header digest verification
2: Enable data digest verification
3: Enable header and data digest verification
--io-queue-number | -N
Expected number of IO queues to create. (range: 1~16)
--io-queue-size | -Q
Expected size of IO queue to create. (range: 8~1024)
--ip-address | -i
IP(v4/v6) address of the RDMA/TCP target port. (required for NVMe over RDMA/TCP)
--keep-alive-timeout | -t
Keep alive timeout value in seconds. (range: 5~60, default: 30)
--port-number | -p
Target port number. Default: 4420 (for NVMe/RDMA), 8009(for NVMe/TCP)
--subsystem-nqn | -s
NVMe Qualified Name of the NVM subsystem. (required)
--world-wide-node-name | -W
World Wide Node Name of the fibre channel target port. (required for NVMe/FC)
--world-wide-port-name | -w
World Wide Port Name of the fibre Channel target port. (required for NVMe/FC)
--help
Show the help message.
nvme fabrics disable Disable NVMe over Fabrics for a transport protocol.
--device | -d
Device on which to disable NVMe. (required)
--protocol | -p
Transport protocol to be disabled. Options are:
RDMA: RDMA Protocol
TCP: TCP protocol
(required)
--help
Show the help message.
nvme fabrics disconnect Disconnect specified NVMe controller(s) on the specified NVMe adapter.
--adapter | -a
Adapter to use for target disconnection. (required)
--controller-number | -n
Controller number to disconnect.
--subsystem-nqn | -s
NVMe Qualified Name of the NVM subsystem. This will be ignored if --controller-number is specified.
--help
Show the help message.
nvme fabrics discover Discover NVMe controllers on the specified target port through the specified NVMe adapter and list all of them.
--adapter | -a
Adapter to use for target discovery. (required)
--connect-all | -c
Connect to all the discovered NVM Subsystems.
--digest | -d
Enable/disable digest verification (only for NVMe over TCP). Available options are:
0: Disable digest verification (default)
1: Enable header digest verification
2: Enable data digest verification
3: Enable header and data digest verification
--dynamic | -D
Dynamically discover and connect to controllers (only for NVMe/TCP adapters).
--io-queue-number | -N
Expected number of IO queues to create. (range: 1~16)
--io-queue-size | -Q
Expected size of IO queue to create. (range: 8~1024)
--ip-address | -i
IP(v4/v6) address of the RDMA/TCP target port. (required for NVMe over RDMA/TCP)
--port-number | -p
Target port number. Default: 4420 (for NVMe/RDMA), 8009 (for NVMe/TCP)
--rdc | -r
Connect to RDC/CDC (Root/Central Discovery Controller).
--world-wide-node-name | -W
World Wide Node Name of the fibre channel target port. (required for NVMe/FC)
--world-wide-port-name | -w
World Wide Port Name of the fibre Channel target port. (required for NVMe/FC)
--help
Show the help message.
nvme fabrics enable Enable NVMe over Fabrics for a transport protocol.
--device | -d
Device on which to enable NVMe. (required)
--protocol | -p
Transport protocol to be enabled. Available options are:
RDMA: RDMA Protocol
TCP: TCP Protocol
(required)
--help
Show the help message.
nvme fabrics connection delete Delete persistent NVMe over Fabrics connection entries. Reboot required for settings to take effect.
--aqn | -a
Adapter's AQN(Adapter Qualified Name) of the NVMe over Fabrics connection to be deleted. (required)
--ip-address | -i
IP(v4/v6) address of the RDMA/TCP target port. (required for NVMe over RDMA/TCP)
--port-number | -p
Target port number. Default: 4420 (for NVMe/RDMA), 8009 (for NVMe/TCP)
--rdc | -r
Delete RDC/CDC (Root/Central Discovery Controller) connection.
--subsystem-nqn | -s
NVMe Qualified Name of the NVM subsystem.
--world-wide-node-name | -W
World Wide Node Name of the fibre channel target port. (required for NVMe/FC)
--world-wide-port-name | -w
World Wide Port Name of the fibre Channel target port. (required for NVMe/FC)
--help
Show the help message.
nvme fabrics connection list List all persistent NVMe over Fabrics connection entries.
--help
Show the help message.
nvme info get Get NVMe host information.
--help
Show the help message.
nvme info set Set NVMe host information.
--hostnqn
The HostNQN to set. --hostnqn=default will regenerate HostNQN with default policy.
--help
Show the help message.
nvme namespace identify Get NVMe Identify Namespace data.
--format | -f
Output format. Valid values are:
detailed: Show bit level value and description.
hex: Dump the data in hex format.
--namespace | -n
Namespace to operate on. (required)
--help
Show the help message.
nvme namespace list List all NVMe namespaces.
--controller-number | -c
Filter the output to a specific controller number.
--namespace | -n
Filter the output to a specific namespace name.
--help
Show the help message.