Crie novas vms com um modelo com um csv. Possível?

1

Eu sou novo no Powershell e Powercli ... mas eu gerencio alguns ambientes ESX e realmente gostaria de fazer o máximo possível via powershell. Eu estou tentando fazer o máximo que posso via Powershell. Com a ajuda que preciso:

Eu usei esse forro para criar VMs a partir de modelos. Mas o problema é que deve haver alguma entrada do usuário após cada nova VM ser criada. New-VM name -Modelo de modelo -VMHost VMHost -Datastore de datastore

O que eu gostaria de fazer é importar via CSV o nome da nova vm, o modelo a ser usado, o host para colocar a nova vm e o armazenamento de dados de um CSV. Não sei se é tão fácil como abaixo, mas continuei recebendo erros.

Import-Csv "C:\powershell\Data\VM2Create.csv" | Foreach-object{
    New-VM $_.name -Template $_.template -VMHost $_.VMHost -Datastore $_.Datastore
}

Eu sei que existem alguns () ou {} ou possivelmente | que precisam ... só não sabem onde colocá-los ...

O csv eu acho que ficaria assim:

nome, modelo, vmhost, armazenamento de dados

Qualquer ajuda ou pensamentos seriam muito apreciados ...

    
por MattB 17.03.2010 / 12:02

2 respostas

1

Isso funcionou para mim:

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
}
    
por 22.03.2010 / 16:57
0

Confira meu script aqui link .

    
por 05.08.2010 / 19:25