Перемещение ВМ в папку в DataCenter

В vcenter, над которым я работаю, есть два хранилища данных. В обоих хранилищах данных я хочу иметь папку с простым названием «Тест».

Я полагал, что если запустить Move-VM -VM VmName -Destination Test, виртуальная машина будет перемещена в папку "Test" в хранилище данных, в котором она находится. Это оказывается не так, поскольку я получаю сообщение об ошибке из-за наличия нескольких значений для моего пункта назначения.

Есть ли способ сделать это, не перемещая виртуальные машины в другое хранилище данных или не называя две рассматриваемые папки по-разному?

Спасибо за вашу помощь


person rafvasq    schedule 14.11.2016    source источник
comment
Есть ли способ указать хранилище данных в команде Move-VM? это, вероятно, исправит ошибку   -  person 4c74356b41    schedule 14.11.2016
comment
@ 4c74356b41 Насколько я могу судить (и проверить), флаг -Datastore используется для указания того, в какое хранилище данных вы хотите его переместить. Я пробовал Move-VM $vm -Datastore ($vm | Get-Datastore) -Destination Test, но по-прежнему получаю ошибку с несколькими значениями.   -  person rafvasq    schedule 15.11.2016
comment
можешь сделать -Destination Datastore/Test?   -  person 4c74356b41    schedule 15.11.2016
comment
-Destination — это не то свойство, которое вам нужно, поскольку оно переместит вашу виртуальную машину в другой центр обработки данных или пул ресурсов, а не в другое место в хранилище данных. Честно говоря, я не уверен, что можно переместить папки виртуальных машин из корня каждого хранилища данных с помощью PowerCli, по крайней мере, без использования более одного командлета, поскольку VMWare строго по умолчанию использует хранилища данных с папками виртуальных машин в корне, и вам нужно будет отредактировать фактический файл конфигурации виртуальной машины, чтобы указать другой путь, если вы переместили VMDK.   -  person Mike Garuccio    schedule 15.11.2016
comment
@MikeGaruccio Мне не обязательно перемещать его из хранилища данных. Если он ищет папку для перемещения в своем собственном хранилище данных, это будет нормально. Более актуальная проблема заключается в том, что у меня не может быть двух папок с одинаковыми именами, даже если они находятся в разных хранилищах данных? Я чувствую, что должен быть обходной путь..   -  person rafvasq    schedule 15.11.2016
comment
поэтому я думаю, мой вопрос в том, почему вы вообще используете папки в хранилище данных? какое преимущество в том, чтобы не использовать организацию vmwares по умолчанию? проблема здесь не в том, что у вас есть две папки, а в том, что Move-VM не поддерживает перемещение виртуальных машин в хранилище данных, а только между хранилищами данных. Если вы хотите перемещать виртуальные машины по хранилищу данных, ожидайте создания гораздо большего количества кода.   -  person Mike Garuccio    schedule 15.11.2016


Ответы (2)


Следующая строка работала для того, что я хотел сделать:

Move-VM -VM $vmObject -Destination  (($vmObject | Get-Datacenter) | Get-Folder -Name "Test" )
person rafvasq    schedule 16.11.2016
comment
о, так ты имел в виду DataCenter, а не DataStore. - person Mike Garuccio; 16.11.2016
comment
@MikeGaruccio Извините за это .. Исходная ошибка жаловалась на хранилище данных, поэтому я был сбит с толку. Ценю вашу помощь. - person rafvasq; 17.11.2016

Если в Datacenter есть дубликаты папок. Вы можете использовать ниже Синтаксис

$folder = Get-Datacenter -Name "Prod" | Get-Folder -Name "MST" | Get-Folder -Name "Приложение" | Get-Folder-Name Linux

person Vikas Kalra    schedule 17.01.2019