Общий размер диска данных Get-AzVM с помощью командлетов Azure powershell

#azure #powershell #azure-powershell

#azure #powershell #azure-powershell

Вопрос:

Я работаю над сценарием Azure Powershell для извлечения некоторых данных. Я хочу получить общий размер данных на диске виртуальной машины. Может кто-нибудь помочь с этим?

 $virtualM = Get-AzVM -ResourceGroupName $ResourceName
    foreach ($vmachine in $virtualM) {
        #Get VM Name and Total data disk size
        write-host 'VM NAME: '$vmachine.name 'Data disk total size: '$vmachine.StorageProfile.dataDisks.diskSizeGB
        
    }
 
 #current output 
VM NAME: VM1 Datadisk total size: 1023
VM NAME: VM2 Datadisk total size: 1023 1023 1023

#what I am trying to get
VM NAME: VM1 Datadisk total size: 1023
VM NAME: VM2 Datadisk total size: 3069
 

Ответ №1:

Что-то вроде этого:

 $virtualM = Get-AzVM -ResourceGroupName $ResourceName
    foreach ($vmachine in $virtualM) {
        #Get VM Name and Total data disk size
        $disksum = $vmachine.StorageProfile.dataDisks.diskSizeGB | Measure-Object -Sum | select Sum -ExpandProperty SUM
        write-host 'VM NAME: '$vmachine.name 'Data disk total size: '$disksum
        
    }
 

ИМЯ ВИРТУАЛЬНОЙ МАШИНЫ: 1111 Общий размер диска данных: 100
ИМЯ ВИРТУАЛЬНОЙ МАШИНЫ: 2222 Общий размер диска данных: 2048
ИМЯ ВИРТУАЛЬНОЙ МАШИНЫ: 3333 Общий размер диска данных: 7576
ИМЯ ВИРТУАЛЬНОЙ МАШИНЫ: 4444 Общий размер диска данных: 7376
ИМЯ виртуальной МАШИНЫ: 5555 Общий размер диска данных: 7320