通过 vSphere 命令行界面组合 vMotion 和 SvMotion

通过 vSphere 命令行界面组合 vMotion 和 SvMotion

从 vSphere 5.x 开始,我们现在可以请求合并通过 Web Client 同时进行 vMotion 和 Storage vMotion - 但可以通过 CLI(而不是 PowerCLI)完成吗?

我读过 5.1 CLI 的文档,也用谷歌搜索过,但找不到任何参考资料。此外,如果我找到答案我认为应该有一个地方让它更容易找到。

答案1

可以通过 CLI(而不是 PowerCLI)完成吗?

您确实需要澄清您所说的“不是 PowerCLI”是什么意思。VMA 是,然后是 ESX 服务器上的权限。

但是我最近参加了 vSphere 5 的课程......

这两个操作需要非常不同的东西,并且在使用基于 Web 的 UI 时是按顺​​序(一个接一个)完成的,而不是同时完成的。

这意味着当你从音乐录像机协会命令行,您必须做两件事。(据我所知,您问的问题无法直接从 ESX 服务器实现)

答案2

嗯,因为 VMotion 是经过许可的 vCenter 功能,所以调用它需要通过 vCenter 服务器来完成。目前它没有通过 CLI 公开的原因可能是出于某些商业/许可原因。

无论如何,我已经查看过并且找不到任何有关 VMware 中与传统 VMotion 等效的“svmotion”的引用。

我想,如果您不想使用 PowerCLI,您可以尝试使用 vmware-cmd 编写类似 VMotion 的脚本,但即使它有效(我对此表示怀疑),它也会很笨重并且完全不受支持。

VMotion操作背后的基本结构是:

  1. 在源主机上创建正在运行的虚拟机的内存快照
  2. 自快照以来开始跟踪虚拟机内存映射的变化
  3. 将原始内存快照传输到目标 ESX 主机
  4. 使虚拟机静止
  5. 将内存快照增量应用到目标主机上的原始内存快照
  6. 停止源主机上的虚拟机
  7. 使用内存快照在目标主机上启动虚拟机

有一个 vmware-cmd 参数可以执行静止和内存快照,因此虽然您无法执行(2),但您可以执行其余操作。

Virtual Machine Operations

 vmware-cmd <conn_option> <config_file_path>
    [answer |
     connectdevice <device_name> |
     createsnapshot <name> <description> quiesce [0|1] memory [0|1] |
     ...

我怀疑它能否在足够短的时间内运行,以应对服务中断。抱歉,这可能不是您想要的答案。

--ab1

参考:

http://pubs.vmware.com/vsphere-51/index.jsp?topic=%2Fcom.vmware.vcli.ref.doc%2Fvmware-cmd.html

答案3

在 v5.1 文档中,看起来您可以使用 svmotion 命令,但我不确定它是否能够执行存储或两者兼而有之。

svmotion [standard vCLI options] - -datacenter=<datacenter_name>
     - -vm <VM config datastore path>:<new datastore>
    [- -disks <virtual disk datastore path>:<new datastore>,
     <virtual disk datastore path>:<new datastore>]

svmotion 链接

这也是另一种方法 -如何在没有 vCenter 或 Storage VMotion 的情况下迁移虚拟机

相关内容