可以使用存储在软件库中的映像配置文件升级或更新主机,该软件库可通过 URL 或脱机 ZIP 库访问。

可以使用 esxcli software profile updateesxcli software profile install 命令升级或更新 ESXi 主机。

升级或更新主机时,esxcli software profile updateesxcli software profile install 命令会在主机上应用更高版本(主版本或次版本)的完整映像配置文件。此操作完成并重新引导后,该主机可加入到同一或更高版本的 vCenter Server 环境中。

esxcli software profile update 命令会使 ESXi 主机映像的整个内容具有与使用 ISO 安装程序的对应升级方法相同的级别。但是,ISO 安装程序会针对潜在问题(如内存不足或设备不受支持)执行升级前检查。从 ESXi 6.7 Update 1 或更高版本升级到较新版本时,esxcli 升级方法仅执行此类检查。

有关 ESXi 升级过程和方法的详细信息,请参见 ESXi 主机升级过程概述

重要说明: 如果要通过 VMware 提供的库中的 ZIP 包(可从 VMware 网站联机访问或下载到本地)升级或更新 ESXi,则 VMware 仅支持更新命令 esxcli software profile update --depot=<depot_location> --profile=<profile_name>

使用 --server=<server_name> 指定目标服务器时,服务器将提示您输入用户名和密码。支持其他连接选项,如配置文件或会话文件。有关连接选项的列表,请参见《ESXCLI 入门》,或在 ESXCLI 命令提示符处运行 esxcli --help

注:

updateinstall 命令的选项允许您执行试运行、绕过接受级别验证、忽略硬件兼容性检查警告等。绕过硬件兼容性检查警告的选项仅适用于 ESXi 6.7 Update 1 或更高版本。请勿跳过对生产系统的验证。

有关选项帮助,请键入 esxcli software profile install --helpesxcli software profile update --help。有关可用命令行选项的完整列表,请参见《ESXCLI 参考》

前提条件

  • 安装独立 ESXCLI。请参见《ESXCLI 入门》。要进行故障排除,请在 ESXi Shell 中运行 esxcli 命令。
  • 确定更新是否需要将主机置于维护模式或重新引导主机。如有必要,请将主机置于维护模式。

    请参见 确定更新是否需要主机处于维护模式或重新引导。请参见 将主机置于维护模式
    重要说明: 使用 ESXCLI 更新或升级主机时,请手动将主机置于维护模式,以确保在升级开始之前引导磁盘未在使用中。
  • 如果更新需要重新引导,并且主机属于 vSphere HA 集群,请从集群中移除该主机或停用集群上的 HA。

过程

  1. 确定在主机上安装的 VIB。
    esxcli --server=<server_name> software vib list
  2. 确定库中可用的映像配置文件。
    esxcli --server=<server_name> software sources profile list --depot=http://<web_server>/<depot_name>

    可以使用 --proxy 参数指定代理服务器。

  3. 更新现有的映像配置文件以包含 VIB 或安装新的 VIB。
    重要说明: software profile update 命令使用指定配置文件中的相应 VIB 来更新现有的 VIB,但不影响目标服务器上安装的其他 VIB。 software profile install 命令安装库映像配置文件中显示的 VIB,并且移除目标服务器上安装的任何其他 VIB。
    选项 描述
    通过 VMware 提供的库中的 ZIP 包(可从 VMware 网站联机访问或下载到本地库)更新映像配置文件
    esxcli software profile update --depot=<depot_location> --profile=<profile_name>
    重要说明: 对于 VMware 提供的 ZIP 包,VMware 仅支持这一种更新方法。

    VMware 提供的 ZIP 包文件名采用以下格式:VMware-ESXi-<version_number>-<build_number>-depot.zip

    VMware 提供的 ZIP 包的配置文件名采用以下格式之一:

    • ESXi-<version_number>-<build_number>-standard
    • ESXi-<version_number>-<build_number>-notools(不包括 VMware Tools)
    从可通过 URL 访问的库中更新映像配置文件
    esxcli --server=<server_name> software profile update --depot=http://<web_server>/<depot_name> --profile=<profile_name>
    从本地存储在目标服务器上的 ZIP 文件中更新映像配置文件
    esxcli --server=<server_name> software profile update --depot=file:///<path_to_profile_ZIP_file>/<profile_ZIP_file> --profile=<profile_name>
    从复制到数据存储的目标服务器上的 ZIP 文件中更新映像配置文件
    esxcli --server=<server_name> software profile update --depot=<datastore_name>/<profile_ZIP_file> --profile=<profile_name>
    从复制到目标服务器本地并在其上应用的 ZIP 文件中更新映像配置文件
    esxcli --server=<server_name> software profile update --depot=/<root_dir>/<path_to_profile_ZIP_file>/<profile_ZIP_file> --profile=<profile_name>
    将所有新 VIB 安装在可通过 URL 访问的指定配置文件中
    esxcli --server=<server_name> software profile install --depot=http://<web_server>/<depot_name> --profile=<profile_name>
    从本地存储在目标上的 ZIP 文件中将所有新 VIB 安装在指定配置文件中。
    esxcli --server=<server_name> software profile install --depot=file:///<path_to_profile_ZIP_file>/<profile_ZIP_file> --profile=<profile_name>
    从复制到目标服务器上数据存储的 ZIP 文件中安装所有新 VIB
    esxcli --server=<server_name> software profile install --depot=<datastore_name>/<profile_ZIP_file> --profile=<profile_name>
    从复制到目标服务器本地并在其上应用的 ZIP 文件中安装所有新 VIB
    esxcli --server=<server_name> software profile install --depot=/<root_dir>/<path_to_profile_ZIP_file>/<profile_ZIP_file> --profile=<profile_name>
  4. 验证 VIB 是否已安装在 ESXi 主机上。
    esxcli --server=<server_name> software vib list