【问题标题】:How to move a VM within VMs and Templates view using PowerCLI?如何使用 PowerCLI 在 VM 和模板视图中移动 VM?
【发布时间】:2017-08-31 23:06:22
【问题描述】:

我正在重新组织 vCenter 中的主机和集群以及虚拟机和模板。我想使用脚本自动执行此操作。我可以使用 Move-VM 命令将 VM 从资源池中移出并移入新的资源池中,但我还需要将 VM 移到 VM 和模板视图中的新文件夹中。我可以使用以下命令创建我想将其移动到的文件夹:

$newVMFolder = (Get-View (Get-View -ViewType Datacenter -Filter @{"name"=$vmFolderLocation}).vmfolder).CreateFolder($newFolderName)

那么当我使用这个命令时:

Move-VM -VM $vm -Destination $newVMFolder

我收到此错误,“无法将“VMware.Vim.ManagedObjectReference”类型的“文件夹组-...”值转换为类型 “VMware.VimAutomation.ViCore.Types.V1.Inventory.VIContainer”。'

任何帮助将不胜感激。

【问题讨论】:

  • 我很好奇,你为什么使用 CreateFolder 方法而不是使用 'New-Folder' cmdlet? “New-Folder”的输出应该为您提供“Move-VM”命令的正确对象类型。

标签: powershell vmware vsphere powercli


【解决方案1】:

在 VM 和模板视图中创建文件夹可能比上面更简单,但我只是添加了:

$newVMFolder = Get-Folder -Name $newFolderName -Type VM

在我创建文件夹之后。

现在 $newVMFolder 是库存类型而不是托管对象,所以

Move-VM -VM $vm -Destination $newVMFolder

现在将其移动到该文件夹​​中。

【讨论】:

  • 除此之外,您还应该能够使用已添加到 PowerCLI 6.5.2 的“InventoryLocation”参数,以便您可以将 VM 移动到资源池和文件夹中相同的命令。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-04
  • 1970-01-01
  • 2017-07-05
  • 1970-01-01
相关资源
最近更新 更多