如何将多个虚拟机移动到不同的数据存储

如何将多个虚拟机移动到不同的数据存储

我尝试并搜索了多种方法将虚拟机迁移到不同的数据存储

$existingds = Get-Content dummy path

$newds = Get-Content dummypath

Get-Datastore $existingds | Get-VM | Move-VM -DiskStorageFormat Thick -Datastore $newds –RunAsync

但由于某种原因,它不起作用,我收到此错误: Move-VM : Cannot convert 'System.Object[]' to the type 'VMware.VimAutomation.ViCore.Types.V1.DatastoreManagement.StorageResource' required by parameter 'Datastore'. Specified method is not supported.

如果我运行该命令move-vm -vm vmname -datastore new datastore,它可以正常工作,但是当我尝试将其放入数组时,它会引发错误。

答案1

-Datastore需要一个数据存储对象,但您提供的是一个字符串数组。

这应该有效:

Get-Datastore $existingds | Get-VM | Move-VM -DiskStorageFormat Thick -Datastore (Get-Datastore $newds) –RunAsync

相关内容