Die Frage war hier eher - krieg ich per IPMI gleichwertige Daten wie über Redfish oder SNMP. Oder vielleicht besser gesagt wie ist die Datenqualität der verschiedenen verfügbaren Management Protokolle.
Hier will ich explizit OS Tools ausschließen.
Ich denke mal bei @mike1098 ist es auch so, dass hier das OS selbst möglichst nicht angetastet werden soll für das Hardware Monitoring. So halte ich es halt.
Der Output passt mit dem zusammen was ich so kenne. Für die meisten meiner Anwendungsfälle ist mir der Inhalt zu wenig oder zu unspezifisch.
Bei den meisten Einträgen beschränkt sich die Info einfach auf “OK” oder nicht. Wenn das reicht dann ist das bestimmt auch per IMPI alles abbildbar.
Am besten finde ich immer den Status “Transition to ok”.
Ich hänge mal als Beispiel die Daten von einem einzelnen Memory Modul an welches ich per Redfish abfage.
Ob halt Daten so ausführlich relevant sind oder nicht muss jeder für sich oder seine Umgebung entscheiden.
Hab auch mal die einzelnen Hersteller ran geschrieben um zu sehen wie unterschiedlich da auch die Daten sein können.
# HPE Memory
{
"@odata.context": "/redfish/v1/$metadata#Memory.Memory",
"@odata.etag": 'W/"E6EC3A2C"',
"@odata.id": "/redfish/v1/Systems/1/Memory/proc1dimm12",
"@odata.type": "#Memory.v1_7_1.Memory",
"Id": "proc1dimm12",
"BaseModuleType": "RDIMM",
"BusWidthBits": 72,
"CacheSizeMiB": 0,
"CapacityMiB": 32768,
"DataWidthBits": 64,
"DeviceLocator": "PROC 1 DIMM 12",
"ErrorCorrection": "MultiBitECC",
"LogicalSizeMiB": 0,
"Manufacturer": "HPE",
"MemoryDeviceType": "DDR4",
"MemoryLocation": {"Channel": 3, "MemoryController": 1, "Slot": 12, "Socket": 1},
"MemoryMedia": ["DRAM"],
"MemoryType": "DRAM",
"Name": "proc1dimm12",
"NonVolatileSizeMiB": 0,
"Oem": {
"Hpe": {
"@odata.context": "/redfish/v1/$metadata#HpeMemoryExt.HpeMemoryExt",
"@odata.type": "#HpeMemoryExt.v2_5_0.HpeMemoryExt",
"Attributes": ["HpeSmartMemory"],
"BaseModuleType": "RDIMM",
"DIMMManufacturingDate": "1746",
"DIMMStatus": "GoodInUse",
"MaxOperatingSpeedMTs": 2666,
"MinimumVoltageVoltsX10": 12,
"VendorName": "Micron",
}
},
"OperatingMemoryModes": ["Volatile"],
"OperatingSpeedMhz": 2666,
"PartNumber": "36ASF4G72PZ-2G6D1 ",
"PersistentRegionSizeLimitMiB": 0,
"RankCount": 2,
"SecurityCapabilities": {},
"SerialNumber": "19A45CE9",
"Status": {"Health": "OK", "State": "Enabled"},
"VendorID": "11264",
"VolatileRegionSizeLimitMiB": 32768,
"VolatileSizeMiB": 32768,
}
# Dell Memory
{
"@odata.context": "/redfish/v1/$metadata#Memory.Memory",
"@odata.type": "#Memory.v1_9_2.Memory",
"@odata.id": "/redfish/v1/Systems/System.Embedded.1/Memory/DIMM.Socket.A5",
"AllowedSpeedsMHz": [3200],
"AllowedSpeedsMHz@odata.count": 1,
"Assembly": {
"@odata.id": "/redfish/v1/Systems/System.Embedded.1/Memory/DIMM.Socket.A5/Assembly"
},
"BaseModuleType": None,
"BusWidthBits": 72,
"CacheSizeMiB": 0,
"CapacityMiB": 65536,
"DataWidthBits": 64,
"Description": "DIMM A5",
"DeviceLocator": "DIMM A5",
"ErrorCorrection": "MultiBitECC",
"FirmwareRevision": None,
"Id": "DIMM.Socket.A5",
"Links": {
"Chassis": {"@odata.id": "/redfish/v1/Chassis/System.Embedded.1"},
"Oem": {
"Dell": {
"@odata.type": "#DellOem.v1_2_0.DellOemLinks",
"CPUAffinity": [
{
"@odata.id": "/redfish/v1/Systems/System.Embedded.1/Processors/CPU.Socket.1"
}
],
"CPUAffinity@odata.count": 1,
}
},
},
"LogicalSizeMiB": 0,
"Manufacturer": "Hynix Semiconductor",
"MaxTDPMilliWatts": [],
"MaxTDPMilliWatts@odata.count": 0,
"MemoryDeviceType": "DDR4",
"MemorySubsystemControllerManufacturerID": None,
"MemorySubsystemControllerProductID": None,
"MemoryType": "DRAM",
"Metrics": {
"@odata.id": "/redfish/v1/Systems/System.Embedded.1/Memory/DIMM.Socket.A5/MemoryMetrics"
},
"ModuleManufacturerID": None,
"ModuleProductID": None,
"Name": "DIMM A5",
"NonVolatileSizeMiB": 0,
"Oem": {
"Dell": {
"@odata.type": "#DellOem.v1_2_0.DellOemResources",
"DellMemory": {
"BankLabel": "A",
"Id": "DIMM.Socket.A5",
"LastSystemInventoryTime": "2023-08-03T05:36:12+00:00",
"LastUpdateTime": "2021-01-04T23:35:24+00:00",
"ManufactureDate": "Mon Nov 02 13:00:00 2020 UTC",
"MemoryTechnology": "DRAM",
"Model": "DDR4 DIMM",
"Name": "DellMemory",
"RemainingRatedWriteEndurancePercent": None,
"SystemEraseCapability": "NotSupported",
"@odata.context": "/redfish/v1/$metadata#DellMemory.DellMemory",
"@odata.type": "#DellMemory.v1_1_0.DellMemory",
"@odata.id": "/redfish/v1/Systems/System.Embedded.1/Memory/DIMM.Socket.A5/Oem/Dell/DellMemory/DIMM.Socket.A5",
},
}
},
"OperatingMemoryModes": ["Volatile"],
"OperatingMemoryModes@odata.count": 1,
"OperatingSpeedMhz": 3200,
"PartNumber": "HMAA8GR7AJR4N-XN",
"RankCount": 2,
"SerialNumber": "2265D090",
"Status": {"Health": "OK", "State": "Enabled"},
"VolatileSizeMiB": 65536,
}
# Supermicro
{
"@odata.context": "/redfish/v1/$metadata#Memory.Memory",
"@odata.etag": '"1678366478"',
"@odata.id": "/redfish/v1/Systems/Self/Memory/DevType2_DIMM13",
"@odata.type": "#Memory.v1_8_0.Memory",
"Actions": {
"Oem": {
"#AmiBios.ChangeState": {
"@Redfish.ActionInfo": "/redfish/v1/Systems/Self/Memory/DevType2_DIMM13/ChangeStateActionInfo",
"target": "/redfish/v1/Systems/Self/Memory/DevType2_DIMM13/Actions/AmiBios.ChangeState",
}
}
},
"AllowedSpeedsMHz": [3200],
"BaseModuleType": "RDIMM",
"BusWidthBits": 72,
"CacheSizeMiB": 0,
"CapacityMiB": 8192,
"DataWidthBits": 64,
"DeviceLocator": "DIMM_G2",
"FirmwareRevision": "Unknown",
"Id": "DevType2_DIMM13",
"Links": {"Chassis": {"@odata.id": "/redfish/v1/Chassis/Self"}},
"LogicalSizeMiB": 0,
"Manufacturer": "ATP Electronics Inc",
"MemoryDeviceType": "DDR4",
"MemoryLocation": {"Channel": 0, "Slot": 1, "Socket": 1},
"MemorySubsystemControllerManufacturerID": "0x0000",
"MemorySubsystemControllerProductID": "0x0000",
"MemoryType": "DRAM",
"ModuleManufacturerID": "0xE386",
"ModuleProductID": "0x0000",
"Name": "DevType2_DIMM13",
"NonVolatileSizeMiB": 0,
"OperatingMemoryModes": ["Volatile"],
"OperatingSpeedMhz": 3200,
"PartNumber": "X4B08QD8BNWESO-7-TN1",
"RankCount": 1,
"SecurityCapabilities": {
"ConfigurationLockCapable": False,
"DataLockCapable": False,
"PassphraseCapable": False,
},
"SerialNumber": "20D4C5FD",
"Status": {"Health": "OK", "State": "Enabled"},
"VolatileSizeMiB": 8192,
}
# Cisco
{
"@odata.context": "/redfish/v1/$metadata#Memory.Memory",
"@odata.id": "/redfish/v1/Systems/WZP26490C67/Memory/DIMM_P1_G1",
"@odata.type": "#Memory.v1_7_0.Memory",
"CapacityMiB": 16384,
"DataWidthBits": 64,
"Description": "Computer Memory",
"DeviceLocator": "DIMM_P1_G1",
"Id": "13",
"Links": {"Chassis": {"@odata.id": "/redfish/v1/Chassis/1"}},
"Manufacturer": "0x2C00",
"MemoryDeviceType": "DDR4",
"MemoryLocation": {"Channel": 6, "Slot": 0, "Socket": 0},
"MemoryMedia": ["DRAM"],
"MemoryType": "DRAM",
"Name": "DIMM_P1_G1",
"OperatingMemoryModes": ["Volatile"],
"OperatingSpeedMhz": 3200,
"PartNumber": "18ASF2G72PZ-3G2R1 ",
"SecurityCapabilities": {"PassphraseCapable": False},
"SerialNumber": "2249-3CF55BE0",
"Status": {"State": "Enabled", "Health": "OK"},
}