HPE OneView. Получение частоты памяти сервера.

Возникла задача через HPE OneView получить частоту памяти у серверов, притом у всех. В стандартном отчете такого поля не было, поэтому я воспользовался для этой цели PowerShell.

Для начала необходимо установить в PowerShell модуль HPEOneView соответствующей версии (вкладка Settings в панели управления HPE OneView).

Для версии 5.40: https://www.powershellgallery.com/packages/HPEOneView.540/5.40.2725.2163

Доступные командлеты находим в HPE OneView PowerShell Library

Кроме собственно получения частоты памяти, я использовал PowerShell для получения других данных, например даты окончания гарантии, количество слотов памяти, количество установленных модулей и т.д. Поэтому привожу текст всего скрипта.

$appliances = @('имя OneView 1', 'имя OneView 2')
$filePath = "C:\Documents\Report\"
$date = Get-Date
$fileDate = "_" + $Date.Day + "-" + $Date.Month + "-" + $Date.Year
$reportName = @{
   serverInventory = "Server_Inventory";
}
$exportPath = @{
   serverInventory = $filePath + $reportName.serverInventory + $fileDate + ".csv";
}
$cred = Get-Credential
ForEach ($appliance in $appliances)
{
Connect-OVMgmt -Hostname $appliance -Credential $cred | Out-Null
$Servers = Get-OVServer | Sort-Object ServerName
ForEach ($server in $Servers) {
$uri = $Server.subResources.MemoryList.uri
$MemoryFrequency = ((Send-OVRequest -Uri $uri).data.BoardOperationalFrequency)
$uri_1 = $Server.subResources.Memory.uri
$Memory = (Send-OVRequest -Uri $uri_1)
$MemoryUse = ($Memory.data.CapacityMiB| Where-Object { $_ -ne "0" }).Count
$Warranty = $Server | Get-OVRemoteSupportEntitlementStatus
$Server | Select-Object -Property @{Name="OVServer"; Expression={$appliance}},
@{Name="Hostname"; Expression={$_.serverName}},
@{Name="Model"; Expression={$_.model}},
@{Name="Location"; Expression={$_.name}},
@{Name="S/N"; Expression={$_.serialNumber}},
@{Name="Warranty"; Expression={($Warranty.OfferEndDate).tostring(“dd.MM.yyyy”)}},
@{Name="CPU Model"; Expression={$_.processorType}},
@{Name="CPU Count"; Expression={$_.processorCount}},
@{Name="CPU Core Total"; Expression={$_.processorCoreCount}},
@{Name="Speed (MHz)"; Expression={$_.processorSpeedMhz}},
@{Name="Memory (GB)"; Expression={$_.memoryMb/1024}},
@{Name="Memory Slots Count"; Expression={$Server.subResources.Memory.count}},
@{Name="Memory Slots Used"; Expression={$MemoryUse}},
@{Name="MemoryFrequency"; Expression={$MemoryFrequency[0]}},
@{Name="OS"; Expression={$_.operatingSystem}} |
Export-Csv -NoTypeInformation -Path $exportPath.serverInventory -Append
}
Disconnect-OVMgmt -Hostname $appliance
}

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Добро пожаловать в блог IT-пилот

Введите Ваш Email чтобы подписаться

Подписка оформлена!