我想在 ESX 主机中创建一个 vmdk 文件,当前它在从 SAN 存储挂载的数据存储上创建 vmdk(虚拟磁盘)。
我的想法是告诉 esx 使用该 vmdk,以便我可以将其用作交换文件。
目前,交换文件是通过 SAN 的数据存储访问的,我认为这是导致性能缓慢的因素。
我正在运行 vmware esx 4.1
有什么建议吗?如何在本地 esx 主机上创建所有虚拟机的交换文件?
答案1
根据 VMWare它是这样做的:
要在 ESX/ESXi 3.5 和 4.x 中编辑虚拟机交换文件位置,请执行以下操作:
- 使用 VMware Infrastructure/vSphere Client 直接连接到您的主机或 vCenter Server。
- 单击 ESX 主机的“配置”选项卡。
- 单击虚拟机交换文件位置,然后单击编辑。
- 指定要存储虚拟机交换文件的数据存储。
- 重新启动虚拟机后,确保交换文件位于指定的主机数据存储上。
顺便说一句,在假设它是问题的根源之前,您是否查看过内存使用情况和交换文件图形?
如果可能的话,只需向虚拟机添加更多 RAM 就比更改交换文件位置更有帮助。
答案2
来自vSphere 资源管理指南:(如果您担心这一点,请注意第二点中对 vMotion 性能的影响)。
交换文件位置
默认情况下,交换文件创建在与虚拟机配置文件相同的位置。交换文件由 ESX/ESXi 主机在虚拟机启动时创建。如果无法创建此文件,则虚拟机无法启动。除了接受默认设置外,您还可以执行以下操作:
- 使用每个虚拟机配置选项将数据存储更改为另一个共享存储位置。
- 使用主机本地交换,它允许您指定在主机本地存储的数据存储。这允许您在每个主机级别进行交换,从而节省 SAN 上的空间。但是,这可能会导致 VMware vMotion 的性能略有下降,因为交换到源主机上的本地交换文件的页面必须通过网络传输到目标主机。
话虽这么说/提到了这一点,您确定 SAN 链接是您的瓶颈吗?还是交换文件的使用?ESX 通常仅在绝对必要时才使用交换文件。如果您的主机没有内存过度使用,那么它可能永远不会使用它们。如果您的主机内存过度使用,那么更好的解决方案是添加更多内存或将一些虚拟机移动到其他主机(如果有)。根据您的具体设置,性能缓慢的原因有很多,但交换文件位置不太可能是其中之一。