自 VMworld 以来,关于 vSphere 生命周期的讨论很多
我觉得 VMwareTools 总是过时了……这是为什么呢?!
首先,我们需要更多地了解VMware Tools 及其工作原理。
在每个 ESXi 安装中,都有一个名为“productLocker”的文件夹,其中包含两个文件夹,“vmtools”和
“floppies”。这些文件用于在给定 ESXi 主机上运行的所有 VM 上安装和更新 VMware Tools。
如果我们看一下“vmtools”文件夹,您会发现其中包含多种类型的文件。
- ISO – 这些是挂载到来宾操作系统以安装工具的文件。
- SIG – ISO 的签名文件,以防止其他人篡改或更改 ISO
- MANIFEST – 描述工具中文件/驱动程序的名称、版本和资源的文件。

“软盘”文件夹包含用于特定操作系统安装特定驱动程序/功能的虚拟软盘映像。
如您所见,productLocker文件夹实际上消耗了大约一半的 ESXi 安装大小(~150MB)。这就是为什
么如果您使用 Auto Deploy,我们建议您使用“无工具”ESXi 映像将重新引导时推送到每个主机的数
据量减少大约 50%,从而提高引导性能并缩短引导时间。
那么这对 vSphere 是否声明我的虚拟机是最新的有什么影响?
您环境中的每个 ESXi 版本都将在其 productLocker 文件夹中包含不同版本的 VMware Tools。这
意味着,如果您在特定主机上拥有虚拟机,例如 ESXi 5.5 主机,并且您在该虚拟机上更新了
VMware Tools,vSphere 会显示 VMware Tools 是最新的并且正在运行……

嗯……问题来了,如果您将该虚拟机移动到环境中的另一台主机,该主机的版本与最初运行该虚拟
机的主机不同,它将显示“VMware 工具:正在运行(过期)”

您查看 vSphere,它会告诉您的工具已过时,但您发誓您刚刚更新了它们!这会在您环境中的所
有 vSphere 版本中继续存在。
那么,解决方案是什么?
解决方案有两个……
了解 VMware Tools 向后兼容 ESXi 的先前版本直至给定版本,这意味着,如果您在虚拟环境中运
行多个不同的 ESXi 版本,具体取决于在哪些版本的 ESXi 上运行,最新的 VMware Tools 可能会
在您的所有主机上运行,无论您的主机是否已过时。我们可以从互操作性矩阵中看到,vSphere
6.0 中的 VMware Tools 一直兼容到 ESX/ESXi 4.0!而 6.0 U1 中的工具可兼容回 ESXi 5.0。哇!
我想我们正在做点什么!

因此,如果您有一个混合环境,并且希望所有主机都升级相同版本的工具,我们现在知道 6.0 工具
一直兼容回 ESX/ESXi 4.0
现在我们知道要使用哪个版本的VMware Tools 过程的第二部分是确定如何/在何处放置工具以供所
有主机使用。我打开 PowerCLI,连接到 vCenter 并运行以下代码:
获取数据存储 | 其中 {$_.ExtensionData.summary.MultipleHostAccess -eq “true”}
它返回到我的共享数据存储“SDT”:

由于 SDT 是一个共享数据存储,我将在其中创建一个文件夹,我的所有主机都可以访问该文件
夹。然后,我会将 productLocker 的内容从我的 ESXi 6.0 主机复制到此文件夹中:

我的文件夹现在看起来像这样,就像在 ESXi 中一样……

现在我们有了一个新的VMware Tools 文件共享位置,选择一个主机,转到Manage > Settings >Advanced System Settings > UserVars.ProductLockerLocation。

您现在需要使用更新后的路径编辑此值,该路径应如下所示:
/vmfs/volumes/<共享数据存储的名称>/<产品储物柜文件夹的名称>
在我们的例子中,它看起来像这样:
/vmfs/volumes/SDT/productLocker
保存后,最后一步是重新启动主机以在内部更新更改,或者 SSH 主机并在那里更新产品链接(这
将需要您进行 SSH,但不需要重新启动服务器)。
***注意*** 要通过 PowerCLI 执行此操作,请按照以下步骤操作:
在 PowerCLI 中连接到 vCenter Server
Get-VMhost -Location <集群名称>| 设置-VMHostAdvancedConfiguration -名称
“UserVars.ProductLockerLocation”-值“/vmfs/volumes/SDT/productLocker”
这将在给定集群中的所有主机上设置此值。
重启主机或 SSH
如果您通过 SSH 连接到您的主机并将目录更改为 /productLocker,您将看到目录更改会将您带到
该主机的原始默认位置,而不是新路径。

从这里我们需要删除快捷方式并在我们的新位置创建一个新快捷方式。
我们将删除快捷方式:
rm /productLocker
并创建新的快捷方式:
ln -s /vmfs/volumes/SDT/productLocker /productLocker

大功告成,如您所见,我们现在在ESXi 主机上拥有更新后的 productLocker 快捷方式,一切顺利。

这可能需要采取许多步骤,但通过这样做,您可以大大减少使所有虚拟机的 VMware Tools 版本保
持最新所需的工作量。借助单一中央存储库,您现在将拥有VMware Tools 版本的单一事实来源,
并且可以基于 sharedLocker 文件夹之外的所有其他内容。
了解更多服务器虚拟化相关知识,请联系莆田市晓林信息技术有限公司。