•   前提

查阅VMware的官方文档我们知道,使用esxcli命令只能进行小版本的升级,而不能跨版本来进行升级,例如esxi4升级到esxi5是不被允许的。要进行的升级的版本是:

VMware-VMvisor-Installer-5.1.0-799733.x86_64也就是ESXi5.1升级到ESXi5.1b

Note(官方的文档材料):

使用 vSphere CLI 可以升级、更新或修补 ESXi 5.x 主机。

无法使用 esxcli 命令将 4.x 版本的 ESX 或 ESXi 主机升级到 ESXi 5.x。要将 4.x 版本的 ESX 或 ESXi 主机升级到 ESXi 5.x,请使用 vSphere Update Manager 或执行交互式或脚本式升级。

实验的环境:

ESXi5.1主机:浪潮NF560D2

客户端Windows Server 2008 R2:Dell台式机

实验步骤:
  1. 使用vSphere Client端登录到ESXi主机上开启主机的SSH和SHEll

clip_p_w_picpath001

点击安全配置文件--》属性:

clip_p_w_picpath002

在属性中开启ESXi Shell还有SSH:

clip_p_w_picpath003

在防火墙设置中开放SSH的端口:

clip_p_w_picpath004

     2. 进入后将ESXi510-201212001.zip数据包上传到存储上进行升级使用,数据包是从                 vmware官网上下载的

clip_p_w_picpath005

找到相应的升级文件包,放到存储的根目录下

clip_p_w_picpath006

clip_p_w_picpath007

3. 这个时候将主机进入维护模式,我们要使用命令进行维护了,所以将主机上的所有虚机都要移到别的主机上。

clip_p_w_picpath008

4. 打开以后使用SCRT来连接esxi主机

clip_p_w_picpath009

输入root和密码之后进入命令行状态:

clip_p_w_picpath010

已经进入了ESXI5.0的主机里面了,进行esxcli命令升级,这里介绍两个esxcli的使用方法

esxcli --server=server_name software vib list 进行包查看

clip_p_w_picpath011

已经看到了所有的包

5. 下面使用esxcli --server=server_name software vib install --depot=LOCAL_PATH/DEPOT_NAME进行升级

首先确定我们的包的位置,使用ls命令来查看

clip_p_w_picpath012

我们已经看到了的ESXi510-201212001.zip包在这里了,这里就是我们的路径,路径非常重要,如果你路径写的不对就不能正常升级,而且必须是绝对路径不能错!

6. 这里的esxcli software vib install –d=/vmfs/volumes/datastore1是ESXi510-201212001.zip包的存储绝对路径不能少一个/!每一个字母都要敲对!

clip_p_w_picpath013

7. 出现上面的步骤就升级成功了,重新引导就可以了

clip_p_w_picpath014

总结:
  •  注意使用esxcli命令的限制,不是所有的升级都是可以使用esxcli来进行updated的,只能进行版本间小幅度的升级系统
  • 部署升级的时候一定要注意绝对路径,就是存储放置升级包的位置,这个如果弄错,那么升级就一定会失败的
  • 最好是确定主机已经是在维护模式了,不然到时候升级的时候就会成里面的运行的VM停止,在生成环境中会造成损失