Hello,
I was trying to attach multiple vmdk with specific scsi bus number and device number using import-csv method and onyx tools generated code,
Looks like it keep failed and don't able add scsi bus number and associate device number, i have attached CSV for reference
#File Path
$csvpath = "C:\Users\Desktop\Final\TESt0001.csv"
$vmlist = Import-CSV -path $csvpath
# map the Variables
foreach ($item in $vmlist) {
$vmname = $item.vmname
$vmdk = $item.datastorepath
$busnumber = $item.SCSIBUSNUMBER
$unitnumber = $item.UNITNUMBER
$vm = Get-VM $vmname
Write-Host “Adding Disk “$vmdk” to “$vm” at SCSI ID “$busnumber”:”$unitnumber
$ctrll = Get-ScsiController -VM $vm | ?{$_.extensiondata.busNumber -eq $busnumber}
Write-Host “Controller Key “$ctrll.extensiondata.key
$spec = New-Object VMware.Vim.VirtualMachineConfigSpec
$spec.deviceChange = New-Object VMware.Vim.VirtualDeviceConfigSpec[] (1)
$spec.deviceChange[0] = New-Object VMware.Vim.VirtualDeviceConfigSpec
$spec.deviceChange[0].operation = “add”
$spec.deviceChange[0].device = New-Object VMware.Vim.VirtualDisk
$spec.deviceChange[0].device.key = -100
$spec.deviceChange[0].device.backing = New-Object VMware.Vim.VirtualDiskFlatVer2BackingInfo
$spec.deviceChange[0].device.backing.fileName = “”+$vmdk
$spec.deviceChange[0].device.backing.diskMode = “persistent”
$spec.deviceChange[0].device.connectable = New-Object VMware.Vim.VirtualDeviceConnectInfo
$spec.deviceChange[0].device.controllerKey = [int]$ctrll.extensiondata.Key
$spec.deviceChange[0].device.unitNumber = [int]$unitNumber
$spec.extraConfig = New-Object VMware.Vim.OptionValue[] (1)
$spec.extraConfig[0] = New-Object VMware.Vim.OptionValue
$spec.extraConfig[0].key = “scsi” + $busnumber + “:” + $unitnumber
$vm.ExtensionData.ReconfigVM($spec)
}
Error:
Exception calling "ReconfigVM" with "1" argument(s): "The device '0' is referring to a nonexisting controller '0'."
At line:50 char:1
+ $vm.ExtensionData.ReconfigVM($spec)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : VimException