如果虚拟机的磁盘是高级磁盘或标准磁盘,则使用get-azurermvm获取存储类型

ewm0tg9j  于 2023-11-21  发布在  其他
关注(0)|答案(2)|浏览(132)

我是一个IT专业人士,写了一个脚本,它给出了VM名称,VM大小的输出,以及附加的数据磁盘大小。
下面是我用于非托管和托管磁盘虚拟机的命令。我想知道我是否可以使用get-azurermvm以某种方式获取附加的磁盘类型的详细信息,如果它是SSD或HDD?

$allvm = Get-Azurermvm | ForEach-Object { 
 $props = [ordered]@{
                    "Name" = $_.name
                    "Disk Size" = $_.StorageProfile.DataDisks.disksizegb
                    "VM Size" = $_.HardwareProfile.VmSize
                    }
                $Result += @(New-Object pscustomobject -Property $props)
}

Write-Output $Result

字符串

6tr1vspr

6tr1vspr1#

如果你已经阅读了你正在使用的类(DataDisk)的文档,你可能已经注意到ManagedDisk属性本身有另一个名为AccountType的属性,它包含了你正在寻找的信息。
类似这样的东西应该可以做到这一点(未经测试,在多个磁盘的情况下可能必须循环通过Datadisks):

$allvm = Get-Azurermvm | ForEach-Object { 
 $props = [ordered]@{
                    "Type" = $_.StorageProfile.DataDisks.ManagedDisk.StorageAccountType
                    "Name" = $_.name
                    "Disk Size" = $_.StorageProfile.DataDisks.disksizegb
                    "VM Size" = $_.HardwareProfile.VmSize
                    }
                $Result += @(New-Object pscustomobject -Property $props)
}

Write-Output $Result

字符串

相关问题