Intel Node Manager Leistungsmessung mit FreeIPMI
Serversysteme mit Intel Node Manager Unterstützung zeichnen Leistungswerte der Netzteile auf. FreeIPMI unterstützt mit dem ipmi-oem Kommando die Abfrage dieser Werte.
Voraussetzungen
Damit ein Serversystem die Intel Node Manager Funktionalitäten unterstützt müssen folgende Voraussetzungen erfüllt sein:[1]
- BIOS mit ME: Das BIOS muss eine Management Engine (ME) für die Intel Node Manager Funktionalität beinhalten und aktiviert haben (ME enabled BIOS). Außerdem muss das Mainboard selbst Intel Node Manager Unterstützungen haben.
- PMBus Netzteile: Die Netzteile müssen die PMBus 1.1/1.2 Spezifikation erfüllen (PMBus 1.1/1.2 spec compliant power supply)
- IPMI mit NM Support: Die IPMI Firmware muss eine Node Manager Unterstützung mitbringen (IPMI firmware with Node Manager support)
Beispiel
Das folgende Beispiel zeigt die Abfrage der Leistungswerte mit FreeIPMI 1.4.11 in einem System mit Supermicro X11DPi-NT Mainboard:
adminuser@ubuntu-18-04:~$ ipmi-oem -h 10.2.2.72 -u inteldcmtest -p USERPASS -l user intelnm get-node-manager-version Node Manager Version : 06h IPMI Interface Version : 04h Patch Version : 0 Firmware Revision : 4.04 adminuser@ubuntu-18-04:~$ ipmi-oem -h 10.2.2.72 -u inteldcmtest -p USERPASS -l user intelnm get-node-manager-statistics mode=globalpower Current Power : 231 Watts Minimum Power : 176 Watts Maximum Power : 336 Watts Average Power : 233 Watts Statistics Reporting Period : 185251 seconds Policy/Global Administrative State : Enabled Measurements State : In Progress adminuser@ubuntu-18-04:~$ ipmi-oem -h 10.2.2.72 -u inteldcmtest -p USERPASS -l user intelnm get-node-manager-statistics mode=globaltemp Current Temperature : 35 Celsius Minimum Temperature : 0 Celsius Maximum Temperature : 37 Celsius Average Temperature : 34 Celsius Statistics Reporting Period : 185272 seconds Policy/Global Administrative State : Enabled Measurements State : In Progress adminuser@ubuntu-18-04:~$ ipmi-oem -h 10.2.2.72 -u inteldcmtest -p USERPASS -l user intelnm get-node-manager-statistics mode=policypower policy id must be specified for given mode adminuser@ubuntu-18-04:~$ ipmi-oem -h 10.2.2.72 -u inteldcmtest -p USERPASS -l user intelnm get-node-manager-statistics mode=hostunhandledrequests Invalid Mode adminuser@ubuntu-18-04:~$ ipmi-oem -h 10.2.2.72 -u inteldcmtest -p USERPASS -l user intelnm get-node-manager-statistics mode=cputhrottling Invalid Mode adminuser@ubuntu-18-04:~$ ipmi-oem -h 10.2.2.72 -u inteldcmtest -p USERPASS -l user intelnm get-node-manager-statistics mode=cputhrottling domainid=platform Invalid Mode adminuser@ubuntu-18-04:~$ ipmi-oem -h 10.2.2.72 -u inteldcmtest -p USERPASS -l user intelnm get-node-manager-statistics mode=cputhrottling domainid=cpu domain id invalid for given mode adminuser@ubuntu-18-04:~$ ipmi-oem -h 10.2.2.72 -u inteldcmtest -p USERPASS -l user intelnm get-node-manager-capabilities Capabilities for Domain ID = Entire Platform, Policy Trigger Type = No Policy Trigger, Policy Type = Power Control Policy Max Concurrent Settings : 16 Max Power : 32767 W Min Power : 1 W Max Correction Time : 600000 ms Min Correction Time : 3000 ms Max Statistics Reporting Period : 3600 s Min Statistics Reporting Period : 1 s Limiting Domain : Entire Platform Limiting Source : Wall input power / PSU input power Capabilities for Domain ID = Entire Platform, Policy Trigger Type = Inlet Temperature Limit Policy Trigger, Policy Type = Power Control Policy Max Concurrent Settings : 1 Max Thermal : 100 C Min Thermal : 0 C Max Correction Time : 600000 ms Min Correction Time : 3000 ms Max Statistics Reporting Period : 3600 s Min Statistics Reporting Period : 1 s Limiting Domain : Entire Platform Limiting Source : Wall input power / PSU input power adminuser@ubuntu-18-04:~$ ipmi-oem -h 10.2.2.72 -u inteldcmtest -p USERPASS -l user intelnm Intelnm Command: get-node-manager-statistics mode=globalpower|globaltemp|policypower|policytrigger|policythrottling|hostunhandledrequests|hostresponsetime|cputhrottling|memorythrottling|hostcommfailure [domainid=platform|cpu|memory|highpowerio] [policyid=num] Intelnm Command: reset-node-manager-statistics [mode=global|policy|hostunhandledrequests|hostresponsetime|cputhrottling|memorythrottling|hostcommfailure] [domainid=platform|cpu|memory|highpowerio] [policyid=num] Intelnm Command: get-node-manager-capabilities [domainid=platform|cpu|memory|highpowerio] [policytrigger=none|inlettemperaturelimitpolicytrigger|missingpowerreadingtimeout|timeafterplatformresettrigger|boottimepolicy] [policytype=powercontrol] Intelnm Command: node-manager-policy-control <enable|disable> [domainid=platform|cpu|memory|highpowerio] [policyid=num] Intelnm Command: get-node-manager-policy [domainid=platform|cpu|memory|highpowerio] [policyid=num] Intelnm Command: set-node-manager-policy domainid=platform|cpu|memory|highpowerio policyid=num policytrigger=none|inlettemperaturelimitpolicytrigger|missingpowerreadingtimeout|timeafterplatformresettrigger|boottimepolicy policytargetlimit=num [platformbootingmode=performance|power] correctiontimelimit=ms statisticsreportingperiod=seconds policystorage=persistent|volatile [policytriggerlimit=num] [policystate=enable|disable] [policyexceptionaction=alert|shutdown] [aggressivepowercorrection=automatic|notaggressive|aggressive] Intelnm Command: remove-node-manager-policy domainid=platform|cpu|memory|highpowerio policyid=num Intelnm Command: get-node-manager-alert-thresholds [domainid=platform|cpu|memory|highpowerio] [policyid=num] Intelnm Command: set-node-manager-alert-thresholds domainid=platform|cpu|memory|highpowerio policyid=num [threshold1=num] [threshold2=num] [threshold3=num] Intelnm Command: get-node-manager-policy-suspend-periods [domainid=platform|cpu|memory|highpowerio] [policyid=num] Intelnm Command: set-node-manager-policy-suspend-periods domainid=platform|cpu|memory|highpowerio policyid=num suspendperiodstartX=time suspendperiodstopX=time suspendperiodrepeatX=monday|tuesday|wednesday|thursday|friday|saturday|sunday Intelnm Command: set-node-manager-power-draw-range domainid=platform|cpu|memory|highpowerio minpowerdrawrange=watts maxpowerdrawrange=watts Intelnm Command: get-node-manager-alert-destination Intelnm Command: set-node-manager-alert-destination [channelnumber=num] [slaveaddress=address] [destinationselector=num] [alertstringselector=num] [sendalertstring=yes|no] [register=yes|no] Intelnm Command: get-node-manager-version
FreeIPMI Manpage (IntelNM)
Weitere Informationen sind in der Manpage von ipmi-oem zu finden:
Einzelnachweise
Autor: Werner Fischer Werner Fischer arbeitet im Product Management Team von Thomas-Krenn. Er evaluiert dabei neueste Technologien und teilt sein Wissen in Fachartikeln, bei Konferenzen und im Thomas-Krenn Wiki. Bereits 2005 - ein Jahr nach seinem Abschluss des Studiums zu Computer- und Mediensicherheit an der FH Hagenberg - heuerte er beim bayerischen Server-Hersteller an. Als Öffi-Fan nutzt er gerne Bus & Bahn und genießt seinen morgendlichen Spaziergang ins Büro.
|