Vmware Command Line Management In VSphere 5.0 For Service Console Users ESXI 6.0 V Sphere 5 And 6 Vcenter Server 60 En

User Manual: vmware ESXI - 6.0 - Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users Free User Guide for VMware ESXI Software, Manual

Open the PDF directly: View PDF PDF.
Page Count: 30

DownloadVmware Command-Line Management In VSphere 5.0 For Service Console Users ESXI - 6.0 V Sphere 5 And 6 Vsphere-esxi-vcenter-server-60-command-line-management-for-service-console-en
Open PDF In BrowserView PDF
Technical Note

Command-Line Management in vSphere 5 and
vSphere 6 for Service Console Users
ESXi 6.0

Starting with vSphere 5.0, the service console (also called console OS or COS) with its associated Linux
installation is no longer available. If you are currently using ESX service console commands, scripts, agents, or
logs, this technical note helps you transition to an off‐host implementation or to use the ESXi Shell in special
cases.
The focus of this document is on ESXCLI commands and vicfg- commands. Commands in the dCLI
command set, available in vSphere 6.0 and later, are initially for managing vCenter services and not for host
management. These commands are not discussed in this document.


“Introduction” on page 1



“Transitioning Service Console Commands” on page 2



“ESXi Shell Access” on page 5



“Replacing Agents” on page 10



“Logging in vSphere 5 and Later” on page 10



“Retrieving Networking Information” on page 13



“Adding Third‐Party Extensions to Hosts” on page 13



“Reference to Replacements for Service Console Commands” on page 13

IMPORTANT Changes made to the host using the DCUI, the vSphere Client, ESXCLI, or other administrative
tools are committed to permanent storage every hour or upon graceful shutdown. Changes might be lost if the
host fails before they are committed.

Introduction
In vSphere 5.x and vSphere 6.x, VMware offers the following tools, CLIs, and APIs that replace ESX 4.x service
console components.
CLI or Tool

Description

Availability

vCLI

Includes ESXCLI commands, vicfgcommands, and a few other commands for
managing vSphere.

Install a vCLI package on a Windows or Linux
system or run commands from vMA.

PowerCLI

PowerCLI cmdlets for managing ESXi hosts and
virtual machines.

Install Microsoft PowerShell on a Windows
system, and install vSphere PowerCLI to run
both PowerShell and PowerCLI cmdlet from the
PowerCLI prompt.

VMware, Inc.

1

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

CLI or Tool

Description

Availability

vMA

A Linux virtual appliance that includes the
vSphere SDK for Perl and the vCLI package.
Also supports the vi‐fastpass authentication
component.

Deploy vMA on an ESXi system and run
commands against authenticated target servers
from vMA.

ESXi Shell
commands

Set of troubleshooting commands to use when
vCLI cannot access your ESXi system. Includes
ESXCLI commands and esxcfg- commands
(deprecated).

The ESXi Shell is disabled by default. You can
enable the Shell for local or remote access.

Transitioning Service Console Commands
If you are currently managing your environment with service console commands, you can perform the same
management tasks in vSphere 5.0 and vSphere 5.1 in one of the following ways.


Use one of the vSphere Client interfaces.



Install vCLI or PowerCLI on a management server, write scripts with those commands, and run the scripts
against target hosts. See “Running vCLI or PowerCLI Commands from Remote Hosts” on page 3.



For certain troubleshooting and advanced management commands, use commands from the ESXCLI
command set directly the ESXi Shell. See “Using the ESXi Shell” on page 5.

ESX 4.x Service Console
Service console commands

vSphere 5.0 and vSphere 5.1

See

Off‐host management with vCLI.

“Transitioning Service Console
Commands” on page 2. “Reference to
Replacements for Service Console
Commands” on page 13 lists vCLI or
ESXCLI replacements for service console
commands and points to migration lists
in this technical note.

Install on Windows or Linux or use vMA.

Service console commands

Off‐host management with VMware
PowerCLI cmdlets from a Windows system.

Getting Started with vSphere
Command‐Line Interfaces
vSphere Command‐Line Interface Solutions
and Examples

Service console commands

On‐host management in the ESXi Shell is
possible if system failures or other issues
prevent you from using off‐host management
commands.

See “ESXi Shell Local Access” on page 5
and “Remote Access to ESXi Shell Using
SSH” on page 7.

ESXi Shell is disabled by default
Agents

If you run agents in the ESX 4.x service
console, you can replace them with
infrastructure services in many cases.

“Replacing Agents” on page 10.

Running third‐party agents in the ESXi Shell
is not supported.
Linux networking
commands.

Not available in the ESXi Shell. Use ESXCLI
commands instead.

See “Retrieving Networking
Information” on page 13.

Service console logs

Fine‐grained control over system logs is
available. You can send logs to the local
system or to a remote host.

“Logging in vSphere 5 and Later” on
page 10

Figure 1 illustrates the differences between CLIs in ESXi 4.1 and ESXi 5.0 and later.


In ESX 4.1, a fairly large set of service console commands is available. A small set of ESXCLI commands
is available in both the service console and as part of the vCLI package. The vCLI package includes, in
addition to ESXCLI commands, a set of vicfg- commands and other commands for host management.



ESXi 5.0 and later does not include a service console. In the ESXi Shell, you can run a much expanded set
of ESXCLI commands and a small set of other commands. The same ESXCLI commands, as well as a few
other commands, are included in the vCLI package for off‐host management.

VMware, Inc.

2

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

Figure 1. Command-Line Interfaces in ESX 4.1 and ESXi 5.0 and later
Commands running on host

vCLI

ESX 4.1

Service console commands

ESXCLI ESXCLI

Commands running on host

vicfg-and other commands
vCLI

ESXi 5

esxcfg(deprecated)
POSIX
(subset)

ESXCLI ESXCLI

vicfg-and other
commands

Using vSphere Client Interfaces
Most tasks you perform in the ESX Service Console can be performed by one of the graphical user interfaces
to ESXi or vCenter Server systems. The interfaces allow you to manage your infrastructure, and to perform
operations on multiple hosts at the same time.


Install the vSphere Client on the Windows system of your choice and connect to an ESXi or vCenter Server
system. Perform management operations using the client.



Use the vSphere Web Client from one of the supported browsers. The vSphere Web Client is a new
interface and supports primarily operations on virtual machines.

vSphere 5 documentation explains how to perform tasks by using one of the client UIs. Online help is available
from both client UIs.

Running vCLI or PowerCLI Commands from Remote Hosts
If you have scripts that use ESX 4.x service console commands or run commands in the ESX 4.x service console
directly, running vCLI commands or PowerCLI cmdlets from the host on which you installed those packages
gives the best results. Running off‐host is highly recommended because it facilitates scripting.
You can use vCLI even if hosts are in lockdown mode by targeting the vCenterServer system and specifying
the target ESXi host with the --vihost parameter, for example:
esxcli --server  --vihost  [] storage nfs list

If you do not specify additional authentication parameters, the vCLI infrastructure prompts for a username
and password for the vCenter Server system specified by --server.

vCLI Command Set
The vCLI command set includes common system administration commands which you can run against ESXi
systems from any machine with network access to those systems. You can also run most vCLI commands
against a vCenter Server system and target any ESXi system that vCenter Server system manages.
Install the vCLI command set on a supported versions of Windows or Linux. The user running a command
against a server must be authenticated for that server. The vCLI package includes several command sets.

VMware, Inc.

3

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

Command Set
ESXCLI vCLI
commands

Description
Extensible command framework for managing many aspects of vSphere.
Run esxcli --help to see all top-level namespaces. You can run --help at any level of the
hierarchy.
The esxcli command set in the ESXi Shell and the esxcli vCLI command set support the same
functionality. When running vCLI commands, you must specify the target server and
authentication options.

vicfg- (esxcfg-)
vCLI commands

Set of commands for managing many aspects of vSphere. For each vicfg- vCLI command, the
package includes an esxcfg- vCLI command that is equivalent of the vicfg- vCLI command.
Important: esxcfg- vCLI commands are not always equivalent to corresponding esxcfgservice console or ESXi Shell commands.
vicfg- commands will be deprecated in future releases. Use esxcli commands instead where
possible.

Management
commands

A small set of management commands is available. Commands include vifs for file migration,
vmware-cmd for managing virtual machines, and vmkfstools for VMFS file management.

The following documentation helps you work with vCLI commands.


Getting Started with vSphere Command‐Line Interfaces gives overviews of available commands and includes
instructions for installing vCLI on Widows or Linux and detailed information about connection options.



vSphere Command‐Line Interface Concepts and Examples presents usage examples for many commands, such
as setting up software and hardware iSCSI, adding virtual switches, setting up Active Directory
authentication, and so on. The document includes the same example with the vicfg- command and the
ESXCLI command where supported.



vSphere Command‐Line Interface Reference is a reference to both vicfg- commands and ESXCLI commands.
The vicfg- command help is generated from the POD available for each command, run pod2html for
any vicfg- command to generate individual HTML files interactively. The ESXCLI reference information
is generated from the ESXCLI help.

Running ESXCLI Commands Against ESXi 4.x Hosts
When you run an ESXCLI vCLI command, you must know the commands supported on the target host
specified with --server or as a vMA target.


If you run commands against ESXi 4.x hosts, ESXCLI 4.x commands are supported.



If you run commands against ESXi 5.0 hosts, ESXCLI 5.0 commands and most ESXCLI 5.1 commands are
supported. Commands that are new in ESXCLI 5.1 are not supported.



If you run commands against ESX 5.1 hosts, ESXCLI 5.0 commands and all ESXCLI 5.1 commands are
supported.

VMware partners might develop custom ESXCLI commands that you can run on hosts where the partner VIB
has been installed.
Run esxcli --server  --help for a list of namespaces supported on the target. You can drill
down into the namespaces for additional help.
IMPORTANT ESXCLI on ESX 4.x hosts does not support targeting a vCenter Server system. You can therefore
not run commands with --server pointing to a vCenter Server system even if you install vCLI 5.0 or vCLI 5.1.

PowerCLI Cmdlet Set
VMware offers a comprehensive set of PowerCLI cmdlets. You can install the PowerCLI package on a
Windows system on which Microsoft PowerShell is installed and use PowerCLI cmdlets to manage hosts and
virtual machines. PowerCLI cmdlets and vCLI commands overlap in functionality. The PowerCLI focus is on
virtual machine management. The vCLI focus is on host management.
See the vSphere PowerCLI documentation set, available in the VMware Administration Automation Products
section of http://www.vmware.com/support/pubs.

VMware, Inc.

4

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

Using the ESXi Shell
Each ESXi host includes an ESXi Shell, which is disabled by default. Administrators can use that shell to
perform troubleshooting and advanced tasks such as testing scripts in non production environments.
You can access the shell as follows:


Enable local access and use the local shell on the physical console or using a serial port. See “ESXi Shell
Local Access” on page 5.



Enable SSH access and use the shell over a management network with SSH. See “ESXi Shell Access” on
page 5.

IMPORTANT ESXi Shell is intended for experienced CLI users. Minor errors in the shell can result in serious
problems. Instead of running commands directly in the ESXi Shell, use vCLI commands or PowerCLI cmdlets.
The ESXi Shell includes the following command sets.
Command Set
ESXCLI commands

Description
Extensible command framework for managing many aspects of vSphere.
Run esxcli --help to see all top-level namespaces. You can run --help at any level of the
hierarchy.
The esxcli command set in the ESXi Shell and the esxcli vCLI command set support the same
functionality. When running vCLI commands, you must specify the target server and
authentication options.

esxcfg- commands
(deprecated)

Set of commands for managing many aspects of vSphere. Most esxcfg- commands available
in the ESX 4.x service console are available in the ESXi Shell but are deprecated in ESXi 5.0 and
will be removed in a future release.
Use ESXCLI commands instead of esxcfg- commands. If no ESXCLI command exists, use the
vicfg- commands in the vCLI command set.

Other commands

A small set of POSIX-style commands is included in the shell (see “Shell Commands” on
page 9). These commands are not supported by VMware but are included for use in
troubleshooting situations. Use the vSphere Client or VMware commands instead where
possible.

localcli commands

Set of troubleshooting commands for use with VMware Technical Support. localcli
commands equivalent to ESXCLI commands but bypass the host daemon (hostd).
Warning: localcli commands are only for situations when hostd is unavailable and cannot
be restarted. After you run a localcli command, you must restart hostd. Using localcli
commands in other situations is not supported. An inconsistent system state and potential
failure can result.

ESXi Shell Access
An ESXi system includes a direct console that allows you to start and stop the system and to perform a limited
set of maintenance and troubleshooting tasks. The direct console includes the ESXi Shell. The ESXi Shell
includes a set of fully supported ESXCLI commands and a set of commands for troubleshooting and
remediation. You must enable access to the ESXi Shell from the direct console of each system. You can enable
access to the local ESXi Shell or access to the ESXi Shell with SSH.
NOTE For security reasons, you should enable ESXi Shell only when required.

ESXi Shell Local Access
The ESXi Shell is disabled by default. You can enable the ESXi Shell for troubleshooting from the direct console.
All ESXCLI commands that are available in the ESXi Shell are also included in the vCLI package. Install the
vCLI package or deploy the vMA virtual appliance, and run commands against your ESXi hosts, instead of
running commands in the ESXi Shell itself. See Getting Started with vSphere Command‐Line Interfaces.

VMware, Inc.

5

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

Enabling the ESXi Shell
You can enable the ESXi Shell from the direct console and from the vSphere Client. Enabling the ESXi Shell
means making it accessible as a local console available directly or over an out-of-band network.
To enable the ESXi Shell from the Direct Console
1

Access the direct console of the ESXi host, press F2, and provide credentials when prompted.

2

Scroll to Troubleshooting Options, and press Enter.

3

Select Enable ESXi Shell and press Enter.
On the left, Enable ESXi Shell changes to Disable ESXi Shell. On the right, ESXi Shell is Disabled
changes to ESXi Shell is Enabled.

4

5

(Optional) Configure the time-out for the ESXi Shell
a

Select Modify ESXi Shell timeout and press Enter.

b

Enter the time-out value in minutes and press Enter.

Press Esc until you return to the main direct console screen.

You can enable the ESXi Shell from the vSphere Client.
To enable the local or remote ESXi Shell from the vSphere Client
1

Select the host, click the Configuration tab, and click Security Profile in the Software panel.

2

In the Services section, click Properties.

3

Select ESXi Shell and click Options.

4

Change the ESXi Shell options.

5



To temporarily start or stop the service, click the Start or Stop button.



To enable access permanently, click Start and stop with host. The change will take effect the next time
you reboot the host.

Click OK.

After you have enabled the ESXi Shell, you can use it from that monitor or through an out-of-band network
connection.
To enable to local or remote ESXi Shell from the vSphere Web Client
1

Select the host, click the Manage tab, and click Settings.

2

Under System, select Security Profile.

3

In the Services panel, click Edit.

4

Select a service from the list.

5



ESXi Shell



SSH



Direct Console UI

Click Service Details and select the startup policy Start and stop manually.
When you select Start and stop manually, the service does not start when you reboot the host. If you want
the service to start when you reboot the host, select Start and stop with host.

6

Select Start to enable the service.

7

Click OK.

After you have enabled the ESXi Shell, you can use it from that monitor or through an out-of-band network
connection.

VMware, Inc.

6

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

Setting Timeouts for the ESXi Shell
The ESXi Shell supports availability timeout and idle timeouts. By default, each timeout is disabled.


Availability timeout. The amount of time that can elapse before you must log in after the ESXi Shell is
enabled. After the timeout period, the service is disabled and users are not allowed to log in.



Idle timeout. The amount of time that can elapse before the user is logged out of an idle interactive
sessions. Changes to the idle timeout apply the next time a user logs in to the ESXi Shell and do not affect
existing sessions.

To set ESXi Shell timeouts from the Direct Console
1

From the Troubleshooting Mode Options menu, select Modify ESXi Shell and SSH timeouts and press
Enter.

2

Enter the availability timeout and press Enter.

3

Enter the idle timeout and press Enter.

4

Press Esc until you return to the main menu of the Direct Console Interface.

To set ESXi Shell timeouts from the vSphere Web Client
1

Select the host in the inventory, click the Manage tab, and click Settings.

2

Under System, select Advanced System Settings.

3

In the left panel, click UserVars.

4

Select UserVars.ESXiShellTimeOut and click the Edit icon

5

Enter the availability timeout in minutes.
You must restart the SSH service and the ESXi Shell service for the timeout to take effect.

6

Select UserVars.ESXiShellInteractiveTimeOut and click the Edit icon

7

Enter the availability timeout in minutes.
You must restart the SSH service and the ESXi Shell service for the timeout to take effect.

8

Click OK.

Accessing the ESXi Shell with the Direct Console
After you enable ESXi Shell access, you can access the local shell.
To access the local ESXi Shell
1

At the main direct console screen, press Alt-F1 to open a virtual console window to the host.

2

Provide credentials when prompted.
When you type the password, characters are not displayed on the console.

3

To log out, type exit in the shell.

4

To return to the direct console, press Alt-F2.

Remote Access to ESXi Shell Using SSH
If Secure Shell is enabled for the ESXi Shell, you can run shell commands by using a Secure Shell client such
as SSH or PuTTY.

Enabling SSH for the ESXi Shell
By default, you cannot access the ESXi Shell using a Secure Shell client. You can enable SSH access from the
direct console.

VMware, Inc.

7

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

To enable SSH access in the direct console
1

At the direct console of the ESXi host, press F2 and provide credentials when prompted.

2

Scroll to Troubleshooting Options, and press Enter.

3

Select Enable SSH and press Enter once.
On the left, Enable SSH changes to Disable SSH. On the right, SSH is Disabled changes to SSH is
Enabled.

4

Press Esc until you return to the main direct console screen.

You can enable remote command execution from the vSphere Client.
To enable SSH from the vSphere Client
1

Select the host and click the Configuration tab.

2

Click Security Profile in the Software panel.

3

In the Services section, click Properties.

4

Select SSH and click Options.

5

Change the SSH options.

6



To temporarily start or stop the service, click the Start or Stop button.



To enable SSH permanently, click Start and stop with host. The change takes effect the next time you
reboot the host.

Click OK.

After you have enabled SSH, you can use an SSH client to log in to the ESXi Shell and run ESXi Shell
commands.

Accessing the ESXi Shell with SSH
If SSH is enabled on your ESXi host, you can use an SSH client to run commands on that shell.
To access the ESXi Shell with SSH
1

Open an SSH client.

2

Specify the IP address or domain name of the ESXi host.
Precise directions vary depending on the SSH client you use. See vendor documentation and support.

3

Provide credentials when prompted.

ESXi Shell Commands
The ESXi Shell includes several sets of commands.
Table 1. ESXi Shell Commands
Command Set

Description

ESXCLI commands

A large set of new ESXCLI commands supports many administrative tasks. The commands are
fully supported and tested by VMware and include command-line help. See Getting Started with
vSphere Command‐Line Interfaces.

esxcfg- commands

The esxcfg- commands available in the service console are deprecated. The commands will
be removed from the ESXi Shell in a future release. See “Reference to Replacements for Service
Console Commands” on page 13.

VMware, Inc.

8

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

Table 1. ESXi Shell Commands (Continued)
Command Set

Description

POSIX-like
commands

See “Shell Commands” on page 9.

localcli commands

Set of troubleshooting commands for use with VMware Technical Support. localcli
commands are equivalent to ESXCLI commands but bypass the host daemon (hostd).
Warning: localcli commands are only for situations when hostd is unavailable and cannot
be restarted. After you run a localcli command, you must restart hostd. Using localcli
commands in other situations is not supported. An inconsistent system state and potential
failure can result.

ESXCLI Commands
The ESXi Shell in ESXi 5 includes a large set of new ESXCLI namespaces and commands. The complete ESXCLI
command set is also part of the vCLI package. The ESXCLI command syntax in ESXi 5 is more flexible than
the syntax in ESXi 4 and supports multiple namespaces.
esxcli [dispatch_option]  [namespace, ...]  [cmd_options]

Each command can use an arbitrary number of namespaces, and different commands have a different number
of elements. All commands have also been reviewed for consistency and most commands have been renamed.
For example:


Each get command returns single values.
esxcli hardware memory get



The list commands are used for multiple return values.
esxcli hardware cpu list

Many commands have options. Use an equal sign or a space between the option and the option value.
esxcli storage nfs add --host= --share= --volume=
esxcli storage nfs add --host  --share  --volume 

IMPORTANT For a complete list of ESXCLI commands, see the vSphere Command‐Line Interface Reference. The
vSphere Command‐Line Interface Concepts and Examples document illustrates how to perform common tasks with
ESXCLI or vicfg- commands.

Shell Commands
In contrast to VMware ESX, VMware ESXi does not include a console OS with a large set of shell commands
and other software. However, a small set of shell commands is available in the ESXi Shell.
IMPORTANT The commands are not tested or supported by VMware. Use VMware commands such as
ESXCLI, vicfg- commands, and so on, instead.
You can see a list of commands in /usr/bin. When you list the commands with ls -al, notice that several of
the utilities are redirected to commands appropriate in the vSphere environment. The following commands
produce different results than typical shell commands.


Several commands are redirected to vmkvsitools.
IMPORTANT vmkvsitools is intended for use with VMware Technical Support. Do not use
vmkvsitools to manage your system.



Ping commands are redirected to vmkping.



Some additional commands are available in the ESXi Shell for certain troubleshooting tasks. Use these
commands when instructed by a VMware Knowledge Base article or VMware Technical Support staff.



User management commands are deprecated.

Go to /usr/bin and run ls -a to see a complete list.
VMware, Inc.

9

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

Replacing Agents
With ESX 4.x, management agents and hardware monitoring and management agents run in the service
console. With ESXi 5, agents are implemented in other ways.


Management agents. VMware partners create management agents by using one of the vSphere APIs.



Hardware agents. Developers use CIM (Common Information Model) agents. CIM is a standards-based
approach to monitoring hardware resources. CIM output is readable by third-party management tools.
The VMkernel can include both VMware CIM providers and Partner CIM providers. Use a vSphere Client
logged in to a vCenter Server system to view hardware information including alarms. Use the vSphere
Client extension framework or the vSphere CIM SDK for customization.



Infrastructure service agents. Administrators can use agents available in the ESXi Shell. Agents include
hostd (host daemon), vpxa, NTP, syslog, SNMP, and so on. Use the vSphere SDK, vCLI commands, or
ESXCLI commands to manage the agents.
Table 2. Infrastructure Services for Production Environments
Function

ESX

ESXi

Management

Time synchronization

NTP agent in service
console

Built-in NTP service

vicfg-ntp command

Centralized log collection

Syslog agent in service
console

Built-in Syslog service

esxcli system syslog
commands
vSphere Client

SNMP monitoring

SNMP agent in service
console

Built-in SNMP service

esxcli system snmp
command

Local access
authentication

Active Directory (AD)
agent in service console
Built in Active Directory
service

Built-in Active Directory
service

vSphere Client
vicfg-authconfig vCLI
command.

Logging in vSphere 5 and Later
Logging in vSphere 5 has been significantly enhanced. You now have fine-grained control over system logs,
the location where logs are sent, and, for each log, default size and rotation policy. You can set up logging with
the vSphere Client or with the esxcli system syslog command. You can also set up logging behavior for a
host by using the Host Profiles interface in the vSphere Client and can then import that host profile into other
hosts.

Remote Logging Setup in ESXi
You can move most ESXi logging information off the host. Collecting data to a central location is especially
useful for hosts provisioned with Auto Deploy. You can perform these tasks:


Set up NTP on the ESXi hosts you are monitoring and on the systems that host the logging services or store
the logs. You can use the vSphere Client or the vicfg-ntp vCLI command to set up NTP.



Configure syslog to save logs to a remote host. You can send logs to a specific directory, and configure
subloggers. See “Using ESXCLI for Syslog Configuration” on page 10.



vCenter Server and ESXi have SNMP agents. You can set up the vCenter Server SNMP agent with the
vSphere Client. You can set up the ESXi SNMP agent with the vSphere Client or the esxcli system snmp
commands. See vSphere Command‐Line Interface Solutions and Examples.



Listen for CIM indications.

Using ESXCLI for Syslog Configuration
The esxcli system syslog command allows you to configure the logging behavior of your ESXi system.
You can perform the same customizations with the vSphere client, as discussed in the vCenter Server and Host
Management documentation. The command has the following options:
VMware, Inc.

10

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

Table 3. esxcli syslog Options
Option

Description

mark

Mark all logs with the specified string.

reload

Reload the configuration and update any configuration values that have changed.

config get

Retrieve the current configuration.

config set

Set the configuration. Use one of the following options.


--logdir= – Save logs to a given path.



--loghost= – Send logs to a given host (see discussion on loghost format
below)



--logdir-unique= – Specify whether the log should go to a unique
subdirectory of the directory specified in logdir.



--default-rotate= – Default number of log rotations to keep



--default-size= – Size before rotating logs, in kilobytes.

config logger list

Show currently configured sub-loggers.

config logger set

Set configuration options for a specific sublogger. Use one of the following options:


--id= – ID of the logger to configure (required)



--reset= – Reset values to default



--rotate= – Number of rotated logs to keep for a specific logger (requires
--id)



--size= – Set size of logs before rotation for a specific logger, in kilobytes
(requires --id)

esxcli system syslog Examples
The following workflow illustrates how you might use esxcli system syslog for log configuration.
1

Show configuration options.
esxcli system syslog config get
Default Rotation Size: 1024
Default Rotations: 8
Log Output: /scratch/log
Logto Unique Subdirectory: false
Remote Host: 

2

Set all logs to keep twenty versions, then start overwriting the oldest log.
esxcli system syslog config set --default-rotate=20

3

Set the rotation policy for VMkernel logs to 10 rotations, rotating at 2MB.
esxcli system syslog config logger --id=vmkernel --size=2048 --rotate=10

4

Send logs to remote host myhost.mycompany.com. The logs will use the default UDP port, 514.
esxcli system syslog config set --loghost='myhost.mycompany.com'

5

Send logs /scratch/mylogs on the remote host myhost.mycompany.com using TCP/IP port 1514.
esxcli system syslog config set --loghost='tcp://myhost.mycompany.com:1514'
--logdir='/scratch/mylogs'

6

Send a log message into all logs simultaneously.
esxcli system syslog mark --message="this is a message!"

7

Reload the syslog daemon and apply configuration changes.
esxcli system syslog reload

Viewing Logs in the ESXi Shell
In the ESX 4.x shell, the location for logs is /var/log. In the ESXi Shell, you can also find all current logs in the
/var/log directory. Some of the logs are symbolic links to the /var/run/log directory.

VMware, Inc.

11

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

Most logs are at top level and not inside a directory under /var/run/log. Available logs depend on which
plugins are installed and what other changes might have been made to the system. The following table lists
some frequently used logs in the ESXi Shell.
ESX 4.x shell

ESXi 5.x shell

Description

/var/log/vmware/hostd.log

/var/log/hostd.log

Log for the host daemon.

/var/log/vmkwarning

/var/log/vmkwarning.log

/var/log/vmksummary

/var/log/vmksummary.log

/var/log/messages

/var/log/vmkernel.log

VMkernel warnings and VMkernel
events.

/var/log/vmware/vpx/vpxa.log

/var/log/vpxa.log

vCenter Server agent log.

Core Dump Setup for ESXi
A core dump can be used to determine the reason for system failure. With ESX, the core dump was placed on
the local disk in many cases. With ESXi, you have two options for managing core dumps.


Create a diagnostic partition on SAN storage. Each host must have a diagnostic partition of 100MB. If
multiple hosts share a SAN, configure a diagnostic partition with 100MB for each host.



Install and configure ESXi Dump Collector. New in ESXi, the Dump Collector service allows you to send
core dumps to a network server. ESXi Dump Collector is especially useful for determining reasons for
failure of ESXi hosts provisioned with Auto Deploy.

You can use esxcli system coredump to configure a remote or local core dump partition. You can also use
the Network Configuration host profile to set up hosts to use ESXi Dump Collector. For either case, you can
apply the host profile of a host that uses ESXi Dump Collector to other hosts.
To use ESXi Dump Collector
1

Install the ESXi Dump Collector service on the vCenter Server system or a Windows or Linux system of
your choice.
ESXi Dump Collector is one of the services you can install using the vCenter Server system installation
package. See vSphere Installation and Setup.
If you use the vCenter Server on Linux appliance, ESXi Dump Collector is preinstalled.

2

Set up ESXi systems that should use ESXi Dump Collector with commands in the esxcli system
coredump namespace.
Two namespaces are supported inside this namespace.




esxcli system coredump partition


get: Retrieve one of the dump partition values.



list: List all partitions on the system that have a partition type matching the VMware Core
partition type.



set: Set the core dump partition for this system.

esxcli system coredump network


get: Get the currently configure parameters for ESXi Dump Collector (network coredump), if
enabled.



set: Set the parameters used for network coredump.

The following example sets up the network and enables ESXi Dump Collector with the ESXCLI vCLI
command.
esxcli --server MyESXiHost system coredump network set --interface-name vmk0 --server-ipv4 10XX...
--port 6500
esxcli --server MyESXiHost system coredump network get --enable true --type network

VMware, Inc.

12

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

You are prompted for a user name and password for the ESXi host.

Retrieving Networking Information
Linux commands for retrieving networking information are not included in the ESXi Shell. You can instead
use ESXCLI commands.
On ESXi 5, ifconfig information is the information for the VMkernel NIC that attaches to the Management
Network port group. You can retrieve that information by using ESXCLI commands.
esxcli
esxcli
esxcli
esxcli

network
network
network
network

ip
ip
ip
ip

interface
interface
interface
interface

list
ipv4 get -i vmk
ipv6 get -n vmk
ipv6 address list

You can retrieve information about DNS with the esxcli network ip dns command in the following two
namespaces:
esxcli network ip dns search
esxcli network ip dns server

For information corresponding to the Linux netstat command, use the following ESXCLI command.
esxcli network ip connection list

Adding Third-Party Extensions to Hosts
The process of adding patches is simplified in ESXi 5. All patches and third-party extensions can be made
available as VIB packages. When a VMware partner releases a third-party extension as a VIB package, the
partner can make the package available as a ZIP depot (offline depot).
1

Download the ZIP depot to your ESXi system but do not unpack it.

2

Run esxcli software vib to add the package to your system.

3

Reboot your ESXi system
Reboot is always recommended. Some patches do not require reboot.

The VIB system refreshes the host daemon after you reboot your system. If the VIB requires an exception to
the firewall rules, rebooting also updates the firewall ruleset.
You can instead use a firewall configuration file to specify port rules for host services you want to enable for
the extension.
vSphere Security documentation discusses how to add, apply, and refresh a firewall rule set and lists the esxcli
network firewall commands. The ESXi 5 ruleset.xml format is the same as in ESX/ESXi 4.x, but has two
additional tags, enabled and required. The firewall on ESXi 5.0 and on ESXi 5.1 still supports the old format.
vSphere Upgrade documentation discusses using esxcli software sources and esxcli software vib to
explore and install patches and extensions.
In some situations, you might use vSphere Update Manager instead of the esxcli command to install
third-party extensions. The extension vendor provides information on the install or upgrade process.

Reference to Replacements for Service Console Commands
Table 4 lists common ESX/ESXi 4.x service console commands and corresponding ESXi 5 shell commands.
IMPORTANT This document does not present a complete list of ESXCLI commands. The focus is on replacing
existing service console commands. See the vSphere Command‐Line Interface Reference for a complete list of
commands.
The links in the Command column of the table point to more detailed information for each command, with
corresponding ESXCLI commands for each option where available. Click the link in the More Information
column for a table with detailed information about that command.
VMware, Inc.

13

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

Table 4. Replacements for Service Console Commands
Service Console
Command

ESXi 5 Replacement

More Information

Deprecated
ESXi Shell

esxcli

Syntax for most ESXCLI commands has changed.

“ESXCLI Command
Syntax” on page 15

No

esxcfg-advcfg

esxcli system settings advanced

“esxcfg-advcfg” on page 17

Yes

esxcfg-dumppart

esxcli system coredump

“esxcfg-dumppart” on
page 18

Yes

esxcfg-firewall

In ESX 4.x, protects the service console. In ESXi 5.x,
esxcfg-firewall is not necessary because no service
console exists.

vSphere Security
documentation.

N.A.

The esxcli network firewall command is available for
ESXi firewall management.
esxcfg-info

Provides a view of the internal state of the VMkernel and
service console components. Some of the functionality is
covered by certain ESXCLI commands.

“esxcfg-info” on page 19

No

esxcfg-ipsec

esxcli network ip ipsec

“esxcfg-ipsec” on page 20

No

esxcfg-swiscsi

esxcli iscsi

“esxcfg-swiscsi and
esxcfg-hwiscsi” on page 21

Yes

esxcfg-module

esxcli system module

“esxcfg-module” on
page 23

Yes

esxcfg-mpath

esxcli storage core path commands.

“esxcfg-mpath” on page 23

Yes

esxcfg-nas

esxcli storage nfs

“esxcfg-nas” on page 24

Yes

esxcfg-nics

esxcli network nic

“esxcfg-nics” on page 24

Yes

esxcfg-rescan

esxcli storage core commands.

“esxcfg-rescan” on page 25

Yes

esxcfg-route

esxcli network ip route commands

“esxcfg-route” on page 22

Yes

esxcfg-scsidevs

Use esxcli storage core and esxcli storage core
filesystem commands.

“esxcfg-scsidevs” on
page 22

Yes

esxcfg-vmknic

esxcli network ip interface covers most options and
includes a number of options not available in the
esxcfg-vmknic command.

“esxcfg-vmknic” on
page 25

Yes

esxcfg-volume

esxcli storage filesystem

“esxcfg-volume” on
page 26

Yes

esxcfg-vswif

Used to configure service console networking in 4.x systems.
Not needed and not available in the ESXi 5.x ESXi Shell.

esxcfg-hwiscsi

esxcfg-vswitch

esxcli network vswitch standard for standard switches.

“esxcfg-vswitch” on
page 27

Yes

Supported in the ESXi 5.x ESXi Shell. If you do not have
access to the ESXi Shell, use the resxtop remote vCLI
command from a supported Linux system or from vMA.

“esxtop” on page 29

No

esxcli software vib

“esxupdate” on page 29

Yes

esxcli network vswitch dvs for distributed switches.
esxtop

esxupdate

Yes

Note: Both esxupdate and vihostupdate are not supported
against ESXi 5.0 and ESXi 5.1 hosts.
vmkfstools

The vmkfstools command is available in the ESXi 5.x ESXi
Shell. The vmkfstools vCLI command options differ slightly
from the shell command options.

“vmkfstools” on page 29

No

vmkping

Use esxcli network diag ping.

vSphere Command‐Line
Interface Reference.

Yes

VMware, Inc.

14

Command-Line Management in vSphere 5 and vSphere 6 for Service Console Users

Table 4. Replacements for Service Console Commands (Continued)
Service Console
Command

Deprecated
ESXi Shell

ESXi 5 Replacement

More Information

vmware-cmd

Not available in ESXi Shell. Available in vCLI. In many cases,
VMware PowerCLI cmdlets perform the same tasks as
vmware-cmd.

Use vmware-cmd --help
for information.

Yes

vm-support

Creates a tar archive containing debugging information for
the server.

Use vm-support --help
for more information.

No

This command is intended for use with VMware Support. No
equivalent vCLI command exists.

ESXCLI Command Syntax
In ESXi 4.x, all ESXCLI commands must follow the same syntax.
esxcli     [cmd_options]

In ESXi 5.0 and ESXi 5.1, the ESXCLI command syntax is more flexible. Each command can use an arbitrary
number of namespaces. Different commands have a different number of elements.
esxcli   [namespace, ...]  [cmd_options]

IMPORTANT You must update all ESXCLI commands explicitly; no scripts are available for the task. Starting
with vSphere 5.0, most management commands will be ESXCLI commands.
Updates to ESXCLI 4.x Commands
The following table lists equivalent commands for esxcli corestorage commands.
Table 5. esxcli 4.x corestorage namespace
ESXCLI in ESXi 4.x

ESXCLI in ESXi 5.x

corestorage claiming reclaim --

Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.6
Linearized                      : Yes
Language                        : en
XMP Toolkit                     : Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27
Format                          : application/pdf
Description                     : Manage your environment without a service console by replacing agents, configuring logs, and using sommand-line interfaces.
Title                           : Command-Line Management in vSphere 5.0 for Service Console Users
Creator                         : VMware, Inc.
Producer                        : Acrobat Distiller 9.0.0 (Windows)
Creator Tool                    : FrameMaker 11.0
Modify Date                     : 2015:01:14 11:31:06-08:00
Create Date                     : 2006:06:08 17:38:15Z
Metadata Date                   : 2015:01:14 11:31:06-08:00
Document ID                     : uuid:53fb6f3f-2791-4f2b-96ae-e15e40d18ab3
Instance ID                     : uuid:105ffaab-4c73-4b90-b973-7ddb659c1678
Page Mode                       : UseOutlines
Page Count                      : 30
Author                          : VMware, Inc.
Subject                         : Manage your environment without a service console by replacing agents, configuring logs, and using sommand-line interfaces.
EXIF Metadata provided by EXIF.tools

Navigation menu