Conversation
3827e83 to
8f12d1e
Compare
stevekeay
left a comment
There was a problem hiding this comment.
Each server has one "serial number" which appears on a label on the outside of the chassis.
We have always stored this in Nautobot's "serial number" field.
On Dell: the serial number is called a "service tag". It has length 7 and contains characters [0-9A-Z]. (A dell server has many other serial numbers, one for each of it's parts. The long "serial_number" reported in redfish is the serial number of the motherboard, which is not relevant to us.) In the redfish system data, the service tag appears in the "sku" field. Ironic redfish inspection has been copying both "sku" and "serial number" verbatim to the inventory data, and various attempts to fix this have led to some confusion.
On HP: there is a "Server Serial Number" that appears on the chassis, and if memory serves, it appears in the serial number field in redfish. HP serial numbers look like "MXQ622051C".
We don't expect to enrol any HP servers for the time being, but I think we would decide which field to use like if manufacturer contains "dell" then "sku" else "serial_number".
|
Totally agree, let's not add another field, we should singularly use the thing that appears outside of the chassis, that's the only point - a natural key that spans real world and virtual. So for Dells we should se the service tag field (whatever that is called in DRAC APIs/ Redfish) into the |
This was temporary while we worked through the patches upstream. We had pulled the changes in locally before they landed upstream. They are now upstream. There is no sku field in the inventory. It's only "serial number" and has been for a few weeks. |
|
picked nodes from dev/staging/prod below are the results. explicitly set |
8f12d1e to
ac29245
Compare
stevekeay
left a comment
There was a problem hiding this comment.
We were saying we don't need a custom field, the serial_number field that exists already in nautobot is sufficient for this.
ac29245 to
40e21dc
Compare
40e21dc to
44861cf
Compare
- inspect_hook_node_name_check: use only serial_number field, drop sku fallback - nautobot_device_sync: set serial_number unconditionally from serial_number field
44861cf to
0d21dd9
Compare
|
Tests from Staging {
"before": {
"system_vendor": {
"product_name": "PowerEdge R7615",
"serial_number": "CNFCP00375007B",
"manufacturer": "Dell Inc.",
"sku": "8Q9PC14",
"system_uuid": "4c4c4544-0051-3910-8050-b8c04f433134"
}
},
"after_agent": {
"system_vendor": {
"product_name": "PowerEdge R7615 (SKU=0AF7;ModelName=PowerEdge R7615)",
"serial_number": "8Q9PC14",
"manufacturer": "Dell Inc.",
"firmware": {
"vendor": "Dell Inc.",
"version": "1.6.10",
"build_date": "12/08/2023"
}
}
},
"after_redfish": {
"system_vendor": {
"product_name": "PowerEdge R7615",
"serial_number": "8Q9PC14",
"manufacturer": "Dell Inc.",
"system_uuid": "4c4c4544-0051-3910-8050-b8c04f433134"
}
}
} |
Uh oh!
There was an error while loading. Please reload this page.