$VmFolder = Get-View -ViewType Folder -Filter @{'Name' = 'VmFolderName' } $NewVmParams = @{ Name = 'VmName' Template = 'VmTemplateName' ResourcePool = 'VIcenter' Location = $VmFolder.Name DiskStorageFormat = "Thin" } $tplOsSpec = Get-OSCustomizationSpec -Name 'Naam van OSCustomization Spec' $cloneOsSpec = New-OSCustomizationSpec -Name "AMPDeploy-VMnaam" -OSCustomizationSpec $tplOsSpec -Type Persistent $cloneOsSpec = Set-OSCustomizationSpec -OSCustomizationSpec $cloneOsSpec -AdminPassword 'AdminPassword' $NewVmParams.Add("OSCustomizationSpec", $cloneOsSpec) $NewVmParams.Add("Datastore", 'Datastore.Name') New-VM @NewVmParams -RunAsync $VmCreated = Get-View -ViewType VirtualMachine -Filter @{'Name' = 'vmNaam' } $spec = New-Object VMware.Vim.VirtualMachineConfigSpec $dev = New-Object VMware.Vim.ResourceAllocationInfo $dev.reservation = '1024' $spec.cpuAllocation = $dev $spec.NumCPUs(2) $spec.NumCoresPerSocket(4) $spec.MemoryMB(512000) $VmCreated.setCustomValue('Functie', 'Functie van de VM') $VmCreated.setCustomValue('Klant', 'Klantnaam') $VmCreated.setCustomValue('Notitie', 'Meer opmerkingen over de VM') $VmCreated.ReconfigVM($spec) $VmCreated.PowerOnVM($null)