Mindmapping the ESXCLI command

UPDATE: 2013-12-01

One of the most interesting vSphere CLI commands is ESXCLI. In fact ESXCLI is a complete set of commands. With the vSphere 5 edition of ESXCLI many new features were introduced.

ESXCLI is available in various forms:

  • On a ESXI server in the shell
  • In the vSphere CLI package, available for Windows and Linux
  • As part of the commands in the vMA
  • Even the vSphere PowerCLI has a Get-EsxCli cmdlet

The general syntax of the ESXCLI command is:

esxcli [dispatcher options] <namespace> [<namespace> ...] <cmd> [cmd options]
  • dispatcher options. Predefined options for connection information such as target host, user name, and so on.
  • namespace. Groups ESXCLI commands. vSphere 5.0 supports nested namespaces.
  • command. Reports on or modifies state on the system. A command can have additional options

To get an overview of the available namespaces, just type:

~ # esxcli
Usage: esxcli [options] {namespace}+ {cmd} [cmd options]

Options:
  --formatter=FORMATTER
                        Override the formatter to use for a given command.
                        Available formatter: xml, csv, keyvalue
  --debug               Enable debug or internal use options
  --version             Display version information for the script
  -?, --help            Display usage information for the script

Available Namespaces:
  esxcli                Commands that operate on the esxcli system itself
                        allowing users to get additional information.
  fcoe                  VMware FCOE commands.
  hardware              VMKernel hardware properties and commands for
                        configuring hardware.
  iscsi                 VMware iSCSI commands.
  network               Operations that pertain to the maintenance of
                        networking on an ESX host. This includes a wide
                        variety of commands to manipulate virtual networking
                        components (vswitch, portgroup, etc) as well as local
                        host IP, DNS and general host networking settings.
  software              Manage the ESXi software image and packages
  storage               VMware storage commands.
  system                VMKernel system properties and commands for
                        configuring properties of the kernel core system.
  vm                    A small number of operations that allow a user to
                        Control Virtual Machine operations.

~ #

Under “Available Namespaces”, you will see an overview of the “first level” namespaces. Proceeding with the “storage” namespace will lead you to the next level of available namespaces and so on. Sometimes it becomes quite confusing and it is not always clear where a certain namespace hides.

The “Getting Started with vSphere Command-Line Interfaces” document provides an overview of the hierarchy of namespaces and certainly is good reading, but I wanted a more graphical approach to gain some insight.

With use of Freemind, an open source Mindmapping tool, I have created mindmaps of all available Namespaces.

Figure 1 – esxcli

Namespace esxcli contains commands that operate on the esxcli system itself, allowing users to get some extra information.

Figure 2 – esxcli esxcli

The most curious command presents a complete output of all available namespaces and command options.

# esxcli esxcli command list | more

Namespace                                           Command
--------------------------------------------------  -----------
esxcli.command                                      list
fcoe.adapter                                        list
fcoe.nic                                            disable
fcoe.nic                                            discover
fcoe.nic                                            list
hardware.bootdevice                                 list
hardware.clock                                      get
hardware.clock                                      set
hardware.cpu.cpuid                                  get
hardware.cpu.global                                 get
hardware.cpu.global                                 set
hardware.cpu                                        list
hardware.memory                                     get
hardware.pci                                        list
hardware.platform                                   get
iscsi.adapter.auth.chap                             get
iscsi.adapter.auth.chap                             set
iscsi.adapter.capabilities                          get
iscsi.adapter.discovery                             rediscover
iscsi.adapter.discovery.sendtarget                  add
iscsi.adapter.discovery.sendtarget.auth.chap        get
iscsi.adapter.discovery.sendtarget.auth.chap        set
iscsi.adapter.discovery.sendtarget                  list
iscsi.adapter.discovery.sendtarget.param            get
iscsi.adapter.discovery.sendtarget.param            set
iscsi.adapter.discovery.sendtarget                  remove
iscsi.adapter.discovery.statictarget                add
iscsi.adapter.discovery.statictarget                list
iscsi.adapter.discovery.statictarget                remove
iscsi.adapter.discovery.status                      get
iscsi.adapter.firmware                              get
iscsi.adapter.firmware                              set
iscsi.adapter                                       get
iscsi.adapter                                       list
iscsi.adapter.param                                 get
iscsi.adapter.param                                 set
iscsi.adapter                                       set
iscsi.adapter.target                                list
iscsi.adapter.target.portal.auth.chap               get
iscsi.adapter.target.portal.auth.chap               set
iscsi.adapter.target.portal                         list
iscsi.adapter.target.portal.param                   get
iscsi.adapter.target.portal.param                   set
--More—

Namespace fcoe, VMware FCOE commands. Figure 3 – esxcli fcoe

Namespace  hardware contains the VMKernel hardware properties and commands for configuring hardware. Figure 4 – esxcli hardware

Namespace  iscsi, the VMware iSCSI commands. Figure 5 – esxcli iscsi

Namespace  network. Operations that pertain to the maintenance of networking on an ESX host. This includes a wide variety of commands to manipulate virtual networking components (vswitch, portgroup, etc) as well as local host IP, DNS and general host networking settings. Figure 6 – esxcli network

Namespace software, manage the ESXi software image and packages Figure 7 – esxcli software

Namespace storage, the VMware storage commands. Figure 8 – esxcli storage

Namespace system, VMKernel system properties and commands for configuring properties of the kernel core system. Figure 9 – esxcli system

Namespace vm. A small number of operations that allow a user to Control Virtual Machine operations. Figure 10 – escli vm

And finally, the complete overview Figure 11 – esxcli ALL

Another document I can recommend is the vSphere Command-Line Interface Concepts and Examples document. This document discusses how to manage Hosts, files, storage and so on, using the CLI commands.

Well, I hope this graphics will help you while studying the ESXCLI command. As always, I thank you very much for reading and I welcome your comments.

UPDATE per 2013-12-01, for some reason, I did not upload my FreeMind data.

esxcli_50_rename_me_mm

WordPress does not allow to upload .mm files. So download the file and change the extension from . doc to .mm. Have fun.

Advertisements

3 Responses to Mindmapping the ESXCLI command

  1. sam salour says:

    I’m a student at the university of York studying mathematics and I have been using mind maps to solve problems, brainstorm ideas, make presentations and to write essays. I put my general Idea in the middle of the page and draw colorful branches and write a single word on each branch. It’s extremely useful and helps me see connections that would be very difficult to see without a mind map, I strongly recommend it.

  2. […] VMware is shifting to the ESXCLI command. For an overview, see my post. So to get an overview of connected distributed switches use this esxcli […]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: