Я новичок в Powershell и Powercli ... но я управляю несколькими средами ESX и действительно хотел бы делать как можно больше с помощью PowerShell. Я пытаюсь сделать все, что могу, с помощью Powershell. С помощью мне нужно:
Я использовал этот лайнер для создания виртуальных машин из шаблонов. Но проблема в том, что после создания каждой новой виртуальной машины должен быть какой-то пользовательский ввод. Имя новой виртуальной машины -Шаблон шаблона -VMHost VMHost -Datastore Datastore
Что я хотел бы сделать, так это иметь возможность импортировать через CSV имя новой виртуальной машины, используемый шаблон, хост для размещения новой виртуальной машины и хранилище данных из CSV. Я не знаю, так ли просто, как показано ниже, но я продолжал получать ошибки.
Import-Csv "C:\powershell\Data\VM2Create.csv" | Foreach-object{
New-VM $_.name -Template $_.template -VMHost $_.VMHost -Datastore $_.Datastore
}
Я знаю там некоторые ()
или {}
или возможно |
что нужно ... просто не знаю, куда их положить ...
Я думаю, CSV будет выглядеть так:
имя, шаблон, vmhost, хранилище данных
Любая помощь или мысли будут очень признательны ...
Это сработало для меня:
param ( $CsvFile = "D:\foo\bar.csv" )
$worksheet = Import-Csv $CsvFile
$worksheet |ForEach-Object {
New-VM -VMHost $_.VMHost `
-Name $_.Name `
-MemoryMB $_.MemoryMB `
-DiskMB $_.DiskMB `
-NetworkName $_.NetworkName `
-Datastore $_.Datastore `
-CD:$FALSE `
-ResourcePool $_.ResourcePool `
-Description $_.Description `
-GuestId $_.GuestId `
-NumCPU $_.NumCPU
}
Посмотрите мой сценарий здесь- http://poshcode.org/2051.