vSphere PowerCLI 存储 vMotion

vSphere PowerCLI 存储 vMotion

如何在 PowerCLI 5.5 中对单个磁盘进行 svMotion?

尝试时Set-HardDisk会出现以下警告:

WARNING: Parameter 'Datastore' is obsolete. 'Datastore' parameter is obsolete. To move hard disk to another datastore
and change it's storage format, use 'Move-HardDisk' cmdlet instead.

Set-HardDisk无论如何都会失败,并显示一条消息,提示磁盘已被锁定(因此我猜你不能用它进行在线迁移)。

Move-HardDisk似乎也只能在离线模式下移动磁盘(冷迁移),但是我想执行 Storage vMotion。

Move-VM只能移动全部VM 的磁盘,这不是我想要的。(VM 上的磁盘太多或太大,永远无法容纳在一个目标 LUN 上)

答案1

我在为迁移项目编写的较长脚本中使用它。这将提取我之前在同一脚本中构建的名称和 csv。

Get-HardDisk -vm $line.Name | where {$_.filename -match $startDS} |Move-HardDisk -Datastore $endDS -Confirm:$false

在哪里:

  • $line.Name = VM 的名称
  • $startDS = 我正在撤离的当前数据存储
  • &endDS = 我要发送驱动器到的数据存储

无论电源状态如何,这对我来说在虚拟机上都有效,但它不会移动配置文件。

答案2

事实证明你不能简单地

Move-HardDisk $hd -Datastore $dstds

这将显示磁盘已锁定的消息。但您可以执行类似以下操作:

Get-HardDisk -VM MyVM -Name 'Hard Disk 1' | Move-HardDisk -Datastore MyDS

它似乎能很好地执行 svMotion。

相关内容