关于EXSI虚拟linux是否需要配置SWAP的问题

如何在VMware ESX里指定交换文件(swapfile)的不同位置:

你可以在VMware ESX 3.5里为你的虚拟机指定不同交换文件的位置。此位置可以设为是在ESX主机上的一个全局的虚拟机vswp文件。vswp文件是在虚拟机开机时创建的。当你关闭虚拟机后vswp文件被自动删除。此文件只有当主机使用了其所有的物理内存后才使用。

vswp文件的大小与你虚拟机RAM相等。你也可以在虚拟机上使用“内存预留”功能,这将减少vswp文件的大小。 vswp文件的大小 = VM的内存量 – “内存预留”的大小。比方说,你给VM的RAM是1024MB,和“内存预留”512MB,那么该VSWP文件将是512MB。

更改此设置,在VI客户上进入Configuration – Virtual Machine Swap File Location。你也可以更改设置存储vswp文件到另一台数据存储上。但是请记住,如果ESX主机不能连接到你选择的数据存储,那么vMotion和DRS将无法工作。你还可以通过编辑虚拟机的vmx文件来指定其他的位置。

已下来自 VM的解答:简单概括就是 单机跑,就把swap放到,SSD或者 exsi的交换文件分区。集群跑,由于设置了交换文件的路径,在集群故障转移或者迁移的时候,由于swap和虚拟机不再一个文件夹下,需要单独迁移,速度会慢!

免责声明:本文为 Storing a virtual machine swap file in a location other than the default in ESX/ESXi (1004082) 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。

Purpose

本文提供了更改虚拟机交换文件的默认位置的步骤。

Resolution

如果虚拟机或客户机操作系统出现故障(其中包括 STOP 错误、只读文件系统和在高 I/O 期间出现严重的性能下降问题),那么将交换文件移动到备用数据存储是十分有用的故障排除步骤。但是,仍建议您通过识别并解决潜在的资源过度使用或存储性能问题,来确保环境的稳定性。

此方法还可以在使用 LUN 快照技术时用于将虚拟机交换文件存储在备用的非复制数据存储中,以确保将交换文件存储到没有被复制的位置。

ESXi/ESX 3.5、4.x 和 ESXi 5.x

注意:如果您的主机是 HA 群集的一部分,则必须先更改虚拟机交换文件位置的群集设置,然后再执行以下步骤。有关详细信息,请参见您的版本的《虚拟机管理指南》(Virtual Machine Admin Guide) 中的更改交换文件位置 (Change the Swap File Location)部分。

要编辑 ESXi/ESX 3.5、4.x 和 ESXi 5.x 中的虚拟机交换文件位置,请执行以下操作:

  1. 使用 VMware Infrastructure/vSphere Client 直接与您的主机或 vCenter Server 连接。
  2. 单击 ESXi/ESX 主机的配置选项卡。
  3. 单击虚拟机交换文件位置,然后单击编辑
  4. 指定需要存储虚拟机交换文件的数据存储。
  5. 重新启动虚拟机后,确保交换文件位于指定的主机数据存储上。

要更改单个虚拟机的交换文件位置,请执行以下操作:

  1. 关闭虚拟机。
  2. 取消注册虚拟机。右键单击清单中的虚拟机,然后选择从清单中移除
  3. 连接到主机:
  4. 将目录更改到虚拟机所在的文件夹:cd /vmfs/volumes/datastore_name/virtual_machine_folder/
  5. 使用文本编辑器编辑虚拟机的配置文件。
  6. 添加以下行:sched.swap.dir = /vmfs/volumes/datastore/
  7. 重新注册虚拟机。有关详细信息,请参见将虚拟机注册或添加到 vCenter Server 或 ESXi/ESX 主机上的清单中 (1006160) (Registering or adding a virtual machine to the inventory on vCenter Server or on an ESXi/ESX host (1006160))

ESX 3.0

将以下行添加到虚拟机的配置 (.vmx) 文件中以便将交换文件存储在 VMFS-3 卷上:

sched.swap.dir= “/vmfs/volumes/volume_name/dir_name

其中 volume_name 是 VMFS-3 卷的名称。

要更改交换文件位置,请执行以下操作:

  1. 使用 vSphere Client 连接到 vCenter Server 或直接连接到 ESX 主机。
  2. 选择想要修改的虚拟机或虚拟机模板。
  3. 如果虚拟机正在运行,请停止该虚拟机。
  4. 使用 SSH 或服务控制台连接与 ESX 控制台进行连接。
  5. 将目录更改到想要编辑的 .vmx 文件的路径。注意:使用 vmware-cmd -l 命令以查找配置文件的路径。有关 vmware-cmd 命令的详细信息,请参见《VMware 脚本编写 API》(VMware Scripting API)
  6. 在文本编辑器中打开配置文件并添加以下行:sched.swap.dir= “/vmfs/volumes/volume_name/dir_name
  7. 删除以下行:sched.swap.derivedName = xxx

     

  8. 如果虚拟机不是模板,请重新启动该虚拟机。
  9. 根据需要,为每个现有虚拟机重复该操作。

Additional Information

根据虚拟机主机中运行的 ESXi 版本的不同,虚拟机交换文件位置会对 vMotion 的兼容性产生不同影响。您可以对 ESX/ESXi 3.5 或更高版本主机进行配置,使其将虚拟机交换文件存储在虚拟机配置文件相同位置或存储在为该主机指定的本地交换文件数据存储中。虚拟机交换文件的位置会对 vMotion 兼容性产生以下影响:
  • 对于运行 ESX/ESXi 3.5 或更高版本的主机之间的迁移,允许执行 vMotion 和暂挂/关机虚拟机之间的迁移。
  • 在与 vMotion 的迁移过程中,如果在目标主机上指定的交换文件位置与在来源主机上指定的交换文件位置不同,交换文件将复制到新位置。这样做会导致与 vMotion 的迁移速度减慢。如果目标主机无法访问指定的交换文件位置,交换文件将存储在与虚拟机配置文件相同的位置。

有关编辑虚拟机配置文件的其他信息,请参见编辑 .vmx 文件的技巧 (1714) (Tips for editing a .vmx file (1714))

有关本文的翻译版本,请参见:

未经允许不得转载:SuperMan's blog » 关于EXSI虚拟linux是否需要配置SWAP的问题

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址