VMware ESXi 命令行快速升级指导
在没有 vCenter 的情况下, 可以使用系统自带的 esxcli 命令进行快速升级, 可以在没有网络的情况下可以下载到离线升级包通过上传到 datastore 然后运行下面的命令进行升级 , 在有网络的情况下可以使用在线的方式进行快速升级, 具体请参考下面的命令.
日常维护命令
进入维护模式
检查主机是否处于维护模式。
esxcli system maintenanceMode get
如果还没进入维护模式, 那么在进入维护模式之前需要将ESXi主机上运行的虚拟机进行关机或者迁移到其它主机上
NOTE: 可以通过运行以下命令列出所有正在运行的虚拟机并检索每个虚拟机的环境 ID。
esxcli vm process list
将主机置于维护模式。
esxcli system maintenanceMode set --enable true
确认主机处于维护模式。
esxcli system maintenanceMode get
退出维护模式
检查主机是否处于维护模式。
esxcli system maintenanceMode get
将主机退出维护模式。
esxcli system maintenanceMode set --enable false
确认主机退出维护模式。
esxcli system maintenanceMode get
升级过程示例, 这里以目标版本升级到 ESXi-7.0U3e-19898904-standard 为例;
在线版, 参考以下命令过程
设置防火墙策略,允许HTTP客户端
esxcli network firewall ruleset set -e true -r httpClient
查看当前版本
esxcli network firewall ruleset set -e true -r httpClient
执行在线升级 (目标版本 ESXi-7.0U3e-19898904-standard )
esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-7.0U3e-19898904-standard
恢复防火墙策略
esxcli network firewall ruleset set -e false -r httpClient
重启ESXi 以完成升级
reboot
开启 HTTP 客户端防火墙策略
esxcli network firewall ruleset set -e true -r httpClient
获取本机 Profile 版本
esxcli software profile get
获取 Profile 版本
提取在线提供的 Profile 版本
esxcli software sources profile list --depot=https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml | grep -i ESXi-7.0U
获取本地 Profile 版本
esxcli software sources profile list --depot=/vmfs/volumes/datastore1/VMware-ESXi-7.0U3e-19898904-depot.zip
执行升级
执行在线升级
esxcli software profile update -p ESXi-7.0U3e-19898904-standard -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml
执行本地升级
esxcli software profile update --depot=/vmfs/volumes/datastore1/VMware-ESXi-7.0U3e-19898904-depot.zip -profile=ESXi-7.0U3e-19898904-standard
执行强制升级
esxcli software profile update -p ESXi-7.0U3e-19898904-standard -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml --no-hardware-warning
更新的时候, 在不受支持的硬件上 (常见的是老型号的 CPU 升级的时候会有报错) 添加 --no-hardware-warning 参数即可解决无法升级的问题.
恢复防火墙策略
esxcli network firewall ruleset set -e false -r httpClient
全文完