VM Clone в подкаталог хранилища данных - PullRequest
0 голосов
/ 05 октября 2011

У меня есть хранилище данных в vCenter, к которому я пытаюсь клонировать, используя скрипт PowerCLI, который я запускаю еженедельно. Я могу клонировать на нем виртуальные машины, но у меня нет абсолютно никакого контроля над структурой каталогов. Каждая виртуальная машина выбрасывается в папку с именем виртуальной машины в корне хранилища данных.

Моя идеальная структура каталогов с использованием Root только для активных виртуальных машин. папка «BACKUPS» существует. Внутри этой папки создаются еженедельно для хранения еженедельных клонов. Пример "20111004" на сегодня. Внутри этой папки существуют папки для каждой виртуальной машины.

$vm = <name of the virtual machine obtained programmatically>
$date = Get-Date -Format "YYYYMMDD"
$h = <ESXi host where the VM is located, obtained programatically>
$dsName = "DATASTORE1" #<Name of the datastore I'm targeting>
$dirPath = "BACKUPS/" + $date + "/" + $vm

New-VM -Name $vm-$date -VM $vm -VMHost -$h -Datstore $dsName -Location $dirPath

Пример "полного" пути
[DATASTORE1] BACKUPS / 20111004 / VIRTUALMACHINE

Это единственный фрагмент скрипта, который не работает. Когда команда указана таким образом в PowerShell, она полностью игнорирует параметр -Location и выбрасывает клон в корень хранилища данных. Я не нашел никакой документации (что я понимаю) о том, как это должно быть отформатировано. Что-то связанное с VIContainer ??

Источник сценария, который я настраиваю:
http://www.mbnbusiness.co.uk/blog/2010/08/updated-powercli-vmware-vm-backup-script-v2-0/

Ответы [ 3 ]

1 голос
/ 05 октября 2011

Похоже, вы пытаетесь выполнить резервное копирование, и я настоятельно рекомендую вам взглянуть на реальный продукт резервного копирования, такой как Восстановление данных VMware или Утилита резервного копирования Veeam .

Как сказал @Mike, файлы VM работают в корне хранилища данных.Вы можете создать несколько хранилищ данных и просматривать их для резервного копирования, но это может быть очень дорого, если вы используете высокопроизводительные диски.

1 голос
/ 05 октября 2011

-Location определяет папку vCenter, в которую помещается виртуальная машина, а не папку в хранилище данных, в которой размещаются файлы виртуальных машин.

Насколько мне известно, файлы виртуальных машин должны быть помещены в корень хранилища данных.

Я подумал о том, чтобы попытаться сделать то же самое, когда впервые создал сценарий, поскольку он упростил архивирование старых резервных копий, но в то время я не мог найти решение.

Извините, я не могу помочь больше ...

0 голосов
/ 10 января 2012

Я пытался использовать $date = Get-Date -Format "YYYYMMDD", но в результате получился вывод YYY01DD.

Изменился на $date = Get-Date -uformat "%d%m%Y, теперь я получаю 01012012

...