Hi,
I am unable to get only RDM details from the below script as I am getting flatdisks along with RDMs.
Please help....
$vmview = Get-View (Get-VM -name MyDB1).ID
$DiskInfo= @()
foreach ($VirtualSCSIController in ($VMView.Config.Hardware.Device | where {$_.DeviceInfo.Label -match "SCSI Controller"}))
{
foreach ($VirtualDiskDevice in ($VMView.Config.Hardware.Device | where {$_.ControllerKey -eq $VirtualSCSIController.Key}))
{
#$VirtualDisk = "" | Select VM, SCSIController, DiskName, DiskType, SCSIId, DiskFile, DiskSize
$VirtualDisk = "" | Select VM, Disk_Name, SCSI_Control, SCSI_ID, Disk_File, Disk_Size, Disk_Type
$VirtualDisk.VM = $vmview.name
$VirtualDisk.SCSI_Control = $VirtualSCSIController.DeviceInfo.Label
$VirtualDisk.Disk_Name = $VirtualDiskDevice.DeviceInfo.Label
$VirtualDisk.Disk_Type = $VirtualDiskDevice.backing
$VirtualDisk.SCSI_ID = $VirtualDiskDevice.UnitNumber
$VirtualDisk.Disk_File = $VirtualDiskDevice.Backing.FileName
$VirtualDisk.Disk_Size = $VirtualDiskDevice.CapacityInKB * 1KB / 1GB
$DiskInfo += $VirtualDisk
}
}
$DiskInfo | export-csv -Path $out_csvpath -Delimiter "," -NoTypeInformation
Output
VM | Disk_Name | SCSI_Control | SCSI_ID | Disk_File | Disk_Size | Disk_Type |
MyDB1 | Hard disk 1 | SCSI controller 0 | 0 | [FAS01B_LUN01] MyDB1/MyDB1.vmdk | 40 | VMware.Vim.VirtualDiskFlatVer2BackingInfo |
MyDB1 | Hard disk 2 | SCSI controller 0 | 1 | [FAS01B_LUN01] MyDB1/MyDB2.vmdk | 50 | VMware.Vim.VirtualDiskFlatVer2BackingInfo |
MyDB1 | Hard disk 3 | SCSI controller 1 | 0 | [FAS01B_LUN01] MyDB1/MyDB1_1.vmdk | 1 | VMware.Vim.VirtualDiskRawDiskMappingVer1BackingInfo |
MyDB1 | Hard disk 4 | SCSI controller 1 | 1 | [FAS01B_LUN01] MyDB1/MyDB1_2.vmdk | 100 | VMware.Vim.VirtualDiskRawDiskMappingVer1BackingInfo |
Try changing that line with the 2nd foreach loop to
Blog: lucd.info Twitter: @LucD22 Co-author PowerCLI Reference
Try changing that line with the 2nd foreach loop to
Blog: lucd.info Twitter: @LucD22 Co-author PowerCLI Reference
Perfect, that worked
Thank you very much.