You can use the
esxcli software profile update
or
esxcli software profile install
command to upgrade or update an
ESXi
host.
When you upgrade or update a host, the
esxcli software profile update
or
esxcli software profile install
command applies a later version (major or minor) of a full image profile onto the host. After this operation and a reboot, the host can join a
vCenter Server
environment of the same or later version.
The
esxcli software profile update
command brings the entire content of the
ESXi
host image to the same level as the corresponding upgrade method using an ISO installer. However, the ISO installer performs a pre-upgrade check for potential problems, such as insufficient memory or unsupported devices. The
esxcli
upgrade method only performs such checks when upgrading from
ESXi
6.7 Update 1 or later to a newer version.
For more about the
ESXi
upgrade process and methods, see
Overview of the ESXi Host Upgrade Process
.
Important:
If you are upgrading or updating
ESXi
from a zip bundle in a VMware-supplied depot, either online from the VMware website or downloaded locally, VMware supports only the update command
esxcli software profile update --depot=<
depot_location
> --profile=<
profile_name>
.
When you specify a target server by using
--server=<
server_name
>
, the server prompts you for a user name and password. Other connection options, such as a configuration file or session file, are supported. For a list of connection options, see
Getting Started with ESXCLI
, or run
esxcli --help
at the ESXCLI command prompt.
Note:
Options to the
update
and
install
commands allow you to perform a dry run, to bypass acceptance level verification, to ignore hardware compatibility check warnings, and so on. The option to bypass hardware compatibility check warnings is only available for
ESXi
6.7 Update 1 or later. Do not bypass verification on production systems.
For options help, type
esxcli software profile install --help
or
esxcli software profile update --help
. For the complete listing of available command-line options, see the
ESXCLI Reference
.
Install Standalone ESXCLI. See
Getting Started with ESXCLI
. For troubleshooting, run
esxcli
commands in the
ESXi Shell
.
Determine whether the update requires the host to be in maintenance mode or to be rebooted. If necessary, place the host in maintenance mode.
Determine Whether an Update Requires a Host to Be in Maintenance Mode or to Be Rebooted
. See
Place a Host in Maintenance Mode
.
Important:
When you use ESXCLI to update or upgrade the host, put the host manually in maintenance mode to ensure that the boot disk is not actively in use before the upgrade begins.
If the update requires a reboot, and if the host belongs to a vSphere HA cluster, remove the host from the cluster or deactivate HA on the cluster.
Determine which VIBs are installed on the host.
esxcli --server=<server_name> software vib list
Determine which image profiles are available in the depot.
esxcli --server=<server_name> software sources profile list --depot=http://<web_server>/<depot_name>
You can specify a proxy server by using the
--proxy
option.
Update the existing image profile to include the VIBs or install new VIBs.
Important:
The
software profile update
command updates existing VIBs with the corresponding VIBs from the specified profile, but does not affect other VIBs installed on the target server. The
software profile install
command installs the VIBs present in the depot image profile, and removes any other VIBS installed on the target server.
Update the image profile from a VMware-supplied ZIP bundle, in a depot, accessible online from the VMware Web site or downloaded to a local depot
esxcli software profile update --depot=<depot_location> --profile=<profile_name>
Important:
This is the only update method that VMware supports for zip bundles supplied by VMware.
VMware-supplied ZIP bundle names take the form:
VMware-ESXi-<
version_number
>-<
build_number
>-depot.zip
.
The profile name for VMware-supplied zip bundles takes one of the following forms.
ESXi-<
version_number
>-<
build_number
>-standard
ESXi-<
version_number
>-<
build_number
>-notools
(does not include VMware Tools)
Update the image profile from a depot accessible by URL
esxcli --server=<server_name> software profile update --depot=http://<web_server>/<depot_name> --profile=<profile_name>
Update the image profile from ZIP file stored locally on the target server
esxcli --server=<server_name> software profile update --depot=file:///<path_to_profile_ZIP_file>/<profile_ZIP_file> --profile=<profile_name>
Update the image profile from a ZIP file on the target server, copied into a datastore
esxcli --server=<server_name> software profile update --depot=<datastore_name>/<profile_ZIP_file> --profile=<profile_name>
Update the image profile from a ZIP file copied locally and applied on the target server
esxcli --server=<server_name> software profile update --depot=/<root_dir>/<path_to_profile_ZIP_file>/<profile_ZIP_file> --profile=<profile_name>
Install all new VIBs in a specified profile accessible by URL
esxcli --server=<server_name> software profile install --depot=http://<web_server>/<depot_name> --profile=<profile_name>
Install all new VIBs in a specified profile from a ZIP file stored locally on the target.
esxcli --server=<server_name> software profile install --depot=file:///<path_to_profile_ZIP_file>/<profile_ZIP_file> --profile=<profile_name>
Install all new VIBs from a ZIP file on the target server, copied into a datastore
esxcli --server=<server_name> software profile install --depot=<datastore_name>/<profile_ZIP_file> --profile=<profile_name>
Install all new VIBs from a ZIP file copied locally and applied on the target server
esxcli --server=<server_name> software profile install --depot=/<root_dir>/<path_to_profile_ZIP_file>/<profile_ZIP_file> --profile=<profile_name>
Verify that the VIBs are installed on your
ESXi
host.
esxcli --server=<server_name> software vib list