ЦЕЛЬ: Я хочу перечислить все виртуальные машины в нашем парке с относительным количеством ядер.
Для этого я нашел этот запрос:
Resources
| where type=~ 'microsoft.compute/virtualmachines'
| project subscriptionId, name, location, resourceGroup, Capacity = toint(sku.capacity), Tier = sku.name
| order by Capacity desc
ПРОБЛЕМА: запрос возвращает столбец Емкость, но все они null
(Также будет принято решение в PowerShell, если они разрешают экспорт в CSV)
Я попытался воспроизвести то же самое в своей среде.
Пробовал со следующим запросом:
vmCore=tostring(properties.hardwareProfile.vmSizeProperties.NumberOfCores)
Но не удалось получить число ядер.
Поскольку они не включены на моем портале для отображения в Json моего шаблона виртуальной машины.
Как я тоже пытался с properties.hardwareProfile.vmSizeProperties
Графический запрос:
Resources
| where type =~ 'Microsoft.Compute/virtualMachines'
| project name, properties.vmId, properties.storageProfile.osDisk.osType,properties.hardwareProfile.vmSize,properties.hardwareProfile.vmSizeProperties
| order by ['name'] asc
Все, что относится к профилю оборудования, приводит к выводу, за исключением того, что свойства размера виртуальной машины пусты, что включает свойство числа ядер для свойств размера виртуальной машины, где оно должно иметь количество ядер.
Попробуйте. Сначала проверьте свойства, а затем назовите количество ядер для каждой ВМ. Команда ниже дает конкретный размер виртуальной машины.
Команда:
$Myvm= Get-AzureRmVM -ResourceGroupName myrg -Name myacctvm
Команда:
$MyVmZizeProperties = Get-AzureRmVMSize -ResourceGroupName myrg -VMName myacctVM
$NumberOfCores = $MyVmZizeProperties.NumberOfCores
$MyVmZizeProperties = Get-AzureRmVMSize -ResourceGroupName myrg -VMName myacctVM | Export-Csv -Path C:\vmproperties.csv -NoTypeInformation
Ссылка: https://learn.microsoft.com/en-us/azure/virtual-machines/resource-graph-samples?tabs=azure-cli
Удивительный. Спасибо за усилия