Пересматривая данные по своим виртуалкам обнаружил что упустил прошлый раз одну важную величину - это максимальный размер виртуального диска который выделен для ВМ. Разумеется актуальный(текущий) размер диска тоже важен, но максимальный необходим при, например, миграции ВМ на другой хост.
Поэтому наш запрос в прошлой выборке теперь пишем так:
Get-VM | Select-Object Name,VMId | Get-VHD | select vhdtype,vhdformat,path,@{label='ActualSize';expression={$_.filesize/1gb -as [int]}},@{label='MaxSize';expression={$_.size/1gb -as [int]}} | Sort Name | ft
Эти же данные можно наглядно получить в System Center Virtual Machine Manager просто подключив необходимые столбики в главной панели. Однако есть некоторое неудобство в том что VMM по умочанию не имеет системы отчетности, т.е. для экспорта данных вам надо выполнить прямой sql-запрос к базе VMM.
Кстати с максимальным размером диска в VMM тоже не все просто. Такого столбика по умолчанию нет. Но выход есть - это создание дополнительного поля(property) с помощью Powershell.
Создаем поле "Disk MaxSize":
New-SCCustomProperty -Name "Disk MaxSize" -AddMember VM
Делаем запрос для получения значения "Disk MaxSize" по одной ВМ:
$VM = 'SRV-PRINT01'
$VHD = Get-SCVirtualMachine -Name $VM | Get-SCVirtualHardDisk | select {$_.MaximumSize/1gb}
Вносим значение в поле "Disk MaxSize":
Set-SCCustomPropertyValue -InputObject (Get-SCVirtualMachine -Name $VM) -CustomProperty (Get-SCCustomProperty -Name "Disk MaxSize") -Value $VHD.'$_.MaximumSize/1gb'
А вот и результат:
Удаляем поле "Disk MaxSize" так, если в нем отпала необходимость:
Remove-SCCustomProperty -CustomProperty (Get-SCCustomProperty -Name "Disk MaxSize")
На сегодня все.
Слава Украине!
No comments:
Post a Comment
А что вы думаете по этому поводу?