Skip to content

New ESXCLI Commands in vSphere 6.7

esxcli-65In vSphere 6.7 the command line interface esxcli has been extended with new features. This post introduces the new and extended namespaces.

Quick Summary
62 new ESXCLI commands including:

  • 3 Device
  • 6 Hardware
  • 1 iSCSI
  • 14 Network
  • 14 NVMe
  • 2 RDMA
  • 9 Storage
  • 6 System
  • 7 vSAN

esxcli device software
Commands to create, list an delete software device drivers.

# esxcli device software list
Device ID             Instance
--------------------  --------
com.vmware.iscsi_vmk  0

esxcli hardware cpu cpuid raw
In previous versions only a subset of CPUID fields was available. The new raw command displays all CPUID fields for a given CPU.

# esxcli hardware cpu cpuid raw list -c 0
      Leaf     Subleaf         EAX         EBX         ECX         EDX
----------  ----------  ----------  ----------  ----------  ----------
0x00000000  0x00000000  0x00000014  0x756e6547  0x6c65746e  0x49656e69
0x00000001  0x00000000  0x000306d4  0x00100800  0x7ffafbff  0xbfebfbff
0x00000002  0x00000000  0x76036301  0x00f0b5ff  0x00000000  0x00c30000
0x00000003  0x00000000  0x00000000  0x00000000  0x00000000  0x00000000
0x00000004  0x00000000  0x1c004121  0x01c0003f  0x0000003f  0x00000000
[...]

esxcli hardware ipmi bmc
Allows configuration of IPMI Baseboard Management Controller (BMC) properties. OS name and OS version can be configured.

  • esxcli hardware ipmi bmc get
  • esxcli hardware ipmi bmc set
# esxcli hardware ipmi bmc get -n <os-name> -v <os-version>

esxcli hardware power policy
Provides information and configuration options for system power policies.

  • esxcli hardware power policy choices list
  • esxcli hardware power policy get
  • esxcli hardware power policy set
# esxcli hardware power policy choices list
Id  Short name  Name
--  ----------  ----------------
 1  static      High Performance
 2  dynamic     Balanced
 3  low         Low Power
 4  custom      Custom
# esxcli hardware power policy get
   Id: 2
   Name: Balanced
   Short Name: dynamic
# esxcli hardware power policy set --short-name static

esxcli iscsi adapter target lun list
Displays iSCSI LUN (Channel-, Target-, LUN numbers and LUN size) information.

] esxcli iscsi adapter target lun list
Adapter  LUN Identifier                        Channel Number  Target Number  LUN Number  LUN Size in MB
-------  ------------------------------------  --------------  -------------  ----------  --------------
vmhba64  naa.6589cfc000000ed999506ae18cee259a               0              1           0          524288
vmhba64  naa.6589cfc000000edb69013b560081bf6d               0              4           1         1048576
vmhba64  naa.6589cfc000000edb69013b560081bf6d               1              4           1         1048576
vmhba64  naa.6589cfc000000656da382d1be31512d2               0              0           0          524288
vmhba64  naa.6589cfc000000de65b947c67a1d4ea02               0              4           0          358400
vmhba64  naa.6589cfc000000de65b947c67a1d4ea02               1              4           0          358400

esxcli network ens
A bunch of new commands to configure ens (Enhanced Networking Stack) logical core affinity.

  • esxcli network ens lcore add
  • esxcli network ens lcore affinity get
  • esxcli network ens lcore affinity set
  • esxcli network ens lcore list
  • esxcli network ens lcore remove
  • esxcli network ens lcore switch add
  • esxcli network ens lcore switch get
  • esxcli network ens lcore switch remove
  • esxcli network ens maxLcores get
  • esxcli network ens maxLcores

esxcli network nic queue loadbalancer
Commands to display details from installed and loaded NetQueue balancer plugins on physical NICs. Plugins can be enabled or disabled with the plugin set command. NetQueue takes advantage of the ability of some network adapters to deliver network traffic to the system in multiple receive queues that can be processed separately, allowing processing to be scaled to multiple CPUs, improving receive-side networking performance.

  • esxcli network nic queue loadbalancer plugin list
  • esxcli network nic queue loadbalancer plugin set
  • esxcli network nic queue loadbalancer state list
  • esxcli network nic queue loadbalancer state set
# esxcli network nic queue loadbalancer plugin list
NIC     Module Name     Plugin Name            Enabled  Description
------  --------------  ---------------------  -------  -------------------------------------------------------------------------------------------------------------------
vmnic0  load-based-bal  filter-packer             true  Perform packing of filters from two queues
vmnic0  load-based-bal  queue-allocator           true  Allocates Rx queue with best feature for loaded filter
vmnic0  load-based-bal  filter-unpacker           true  Perform unpacking of filters from saturated queues
vmnic0  load-based-bal  filter-equalizer          true  Distribute filters between two queues for better fairness
vmnic0  load-based-bal  rssflow-mapper            true  Dynamically map flows in indirection table of RSS engine
vmnic0  load-based-bal  netpoll-affinitizer       true  Affinitize Rx queue netpoll to highly loaded filter
vmnic0  load-based-bal  geneveoam-allocator       true  Allocate geneve-oam queue based on applied filters
vmnic0  load-based-bal  numaaware-affinitizer     true  Numa aware filter placement on Rx queue and dynamically affinitize Rx queue netpoll to device numa

# esxcli network nic queue loadbalancer state list
NIC     Enabled
------  -------
vmnic0     true

esxcli nvme device
New NVMe device namespace and feature configuration capabilities.

  • esxcli nvme device controller list
  • esxcli nvme device feature cap
  • esxcli nvme device feature apst get
  • esxcli nvme device feature hi get
  • esxcli nvme device feature hmb get
  • esxcli nvme device feature kat get
  • esxcli nvme device feature kat set
  • esxcli nvme device feature lba get
  • esxcli nvme device feature spm get
  • esxcli nvme device feature spm set
  • esxcli nvme device namespace attach
  • esxcli nvme device namespace create
  • esxcli nvme device namespace delete
  • esxcli nvme device namespace detach
# esxcli nvme device feature cap  -A vmhba1
Feature Identifier                 saveable  namespace specific  changeable
---------------------------------  --------  ------------------  ----------
Arbitration                           false               false        true
Power Management                      false               false        true
Temperature Threshold                 false               false        true
Error Recovery                        false               false        true
Volatile Write Cache                  false               false        true
Number of Queues                      false               false        true
Interrupt Coalescing                  false               false        true
Interrupt Vector Configuration        false               false        true
Write Atomicity Normal                false               false        true
Asynchronous Event Configuration      false               false        true
Autonomous Power State Transition     false               false        true
Software Progress Marker              false               false        true

# esxcli nvme device feature apst get -A vmhba1
Autonomous Power State Transition Info:
   Autonomous Power State Transition Enable: false
   Autonomous Power State Transition Data:
         Power State: 0
         Idle Transition Power State: 3
         Idle Time Prior to Transition(milliseconds): 60

         Power State: 1
         Idle Transition Power State: 3
         Idle Time Prior to Transition(milliseconds): 60

         Power State: 2
         Idle Transition Power State: 3
         Idle Time Prior to Transition(milliseconds): 60
[...]

esxcli rdma
Commands to list all enabled RDMA (Remote direct memory access) protocols and delete iser (iSCSI Extensions for RDMA) logical devices.

  • esxcli rdma device protocol list
  • esxcli rdma iser

esxcli storage core adapter device list
A nice an simple command to display HBA to device mapping

] esxcli storage core adapter device list
HBA      Device UID
-------  -------------------------------------
vmhba1   t10.NVMe____Samsung_SSD_960_EVO_250GB
vmhba32  mpx.vmhba32:C0:T0:L0
vmhba64  naa.6589cfc000000656da382d1be31512d2
vmhba64  naa.6589cfc000000de65b947c67a1d4ea02
vmhba64  naa.6589cfc000000de65b947c67a1d4ea02

esxcli storage core device vaai
List the ats, clone, delete and zero VAAI attributes for the devices.

  • esxcli storage core device vaai ats list
  • esxcli storage core device vaai clone list
  • esxcli storage core device vaai delete list
  • esxcli storage core device vaai zero list
# esxcli storage core device vaai delete list
Device                                 Max LBA Count  Max Block Desc Count  Optimal Granularity   UGA Valid  Granularity Alignment
                                                      (in blocks)           (in blocks)                      (in blocks)
------------------------------------   -------------  --------------------  --------------------  ---------  ---------------------
naa.6589cfc000000ed999506ae18cee259a   N/A            N/A                   N/A                   N/A        N/A
mpx.vmhba32:C0:T0:L0                   N/A            N/A                   N/A                   N/A        N/A
t10.ATA_____SanDisk_SDSSDP064G         33553920       512                   1                     False      N/A
naa.6589cfc000000edb69013b560081bf6d   N/A            N/A                   N/A                   N/A        N/A
naa.6589cfc000000656da382d1be31512d2   N/A            N/A                   N/A                   N/A        N/A
naa.6589cfc000000de65b947c67a1d4ea02   N/A            N/A                   N/A                   N/A        N/A

esxcli storage hpp
Commands to display information about devices controlled by the hpp (VMware High Performance Plugin).

  • esxcli storage hpp device list
  • esxcli storage hpp device set
  • esxcli storage hpp device usermarkedssd list
  • esxcli storage hpp path list

esxcli system clock
Display and configure clock phase correction settings. The default positive or negative phase correction is configured to 48 hours (172800 seconds)

  • esxcli system clock get
  • esxcli system clock set
# esxcli system clock get
   Max Negative Phase Correction: 172800
   Max Phase Corrections Allowed: -1
   Max Positive Phase Correction: 172800

system security fips140
Enable or disable FIPS140 mode for rhttpproxy and ssh.vSphere 6.7 uses FIPS 140-2 validated Cryptographic Modules which for example enforces specific secure encryption ciphers.

  • esxcli system security fips140 rhttpproxy get
  • esxcli system security fips140 rhttpproxy set
  • esxcli system security fips140 ssh get
  • esxcli system security fips140 ssh set
# esxcli system security fips140 ssh get
 Enabled: true

esxcli vsan datastore
Commands to create and configure vSAN datastores. Creating datastores is only allowed if vSAN is enabled on the host. In general, add should be done at cluster level. Across a vSAN cluster vSAN datastores should be in sync.

  • esxcli vsan datastore add
  • esxcli vsan datastore clear
  • esxcli vsan datastore list
  • esxcli vsan datastore remove
# esxcli vsan cluster new

esxcli vsan datastore add -n test
# esxcli vsan datastore list
Datastore
   Datastore UUID: 524f6f45-2b4d-12f3-d213-a9483d4df18e
   User Friendly Name: vsanDatastore (1)
   Default: true

Datastore
   Datastore UUID: 52535bac-cba8-f715-7f6b-5360dbbd70c1
   User Friendly Name: test
   Default: false

esxcli vsan debug
New vSAN debugging features. Allows to Start/Stop the vSAN Managed Object Browser Service and to perform a host evacuation precheck.

  • esxcli vsan debug evacuation precheck
  • esxcli vsan debug mob start
  • esxcli vsan debug mob
# esxcli vsan debug evacuation precheck -a noAction -e localhost
Action: No Action
   Evacuation Outcome: Success
   Entity: Host localhost
   Data to Move: 0.00 GB
   Number Of Objects That Would Become Inaccessible: 0
   Objects That Would Become Inaccessible: None
   Number Of Objects That Would Have Redundancy Reduced: 0
   Objects That Would Have Redundancy Reduced: None
   Additional Space Needed for Evacuation: N/A

5 thoughts on “New ESXCLI Commands in vSphere 6.7”

  1. I disabled fips140 using the command listed here but I still getting the message "FIPS mode initialized" when I try to start an scp from ESXi to an external server.

  2. All esxcli system security fips140 ssh set -e false does is replace the 'FipsMode' line with 'FipsMode no' from /etc/ssh/sshd_config.
    However that doesn't actually appear to disable FipsMode within OpenSSH.

    It used to work for me with the original 6.7 release but after applying Update 1 or later it stopped it.

    So now can't use arcfour for scp.

Leave a Reply to Anonymous Cancel reply

Your email address will not be published. Required fields are marked *