-
Feature
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
Feature Overview
This feature enhances the Bare Metal Host (BMH) HardwareData inventory to include the PCI address (bus-info) for each Network Interface Card (NIC). This extension provides a consistent, hardware-specific identifier for NIC ports, allowing users and cluster components like SR-IOV to accurately correlate and configure network devices, regardless of potentially inconsistent operating system (OS) interface naming (e.g., ens1f1).
Goals
The primary goal is to provide a reliable, hardware-level identifier for network devices within the Bare Metal Host inventory data.
- Anticipated Primary User: Infrastructure/Platform Administrator managing Bare Metal infrastructure and network configuration.
- Observable Functionality: The HardwareData status output for NICs (and BMH) will include a new field, bus-info, which stores the PCI address for the network device.
- Extension: This feature extends the existing NIC information within the HardwareData structure, adding the bus-info field alongside existing fields like mac, model, name, and speedGbps.
Requirements
Functional Requirements
- The bare metal discovery process must successfully identify and collect the PCI address (in the format 0000:00:03.0 or similar) for all discovered Network Interface Cards (NICs).
- The collected PCI address must be exposed in the Bare Metal Host (BMH) HardwareData under the nics array using the key bus-info.
- The structure of the updated NIC data in HardwareData must resemble the following example:
nics: - mac: 40:a6:b7:50:e4:21 model: 0x8086 0x158b name: ens1f1 bus-info: 0000:00:03.0 speedGbps: 25
Non-Functional Requirements
- Reliability: The PCI address information must be consistently gathered across different supported Bare Metal hardware and OS versions.
- Maintainability: Changes must be implemented in the BMO component, ensuring backward compatibility with existing inventory consumers that may not yet use the new field.
Hardware Bill of Materials (BoM)
This list defines the specific hardware models required for feature qualification and testing.
| Vendor | Server Model | Priority | Notes |
| Dell | Dell XR8620t | Prio 1 | Primary qualification platform. |
| Dell | Dell XR8720t | Prio 1 | Primary qualification platform. |
| HPE | HPE DL110 Gen 11 | Prio 2 | Secondary qualification platform. |
| HPE | HPE DL110 Gen 12 | Prio 2 | Secondary qualification platform. |
User Scenarios
The inclusion of the PCI address directly addresses the need for a consistent, hardware-specific identifier for NICs.
- As an Infrastructure Administrator, I want to discover the PCI address of a NIC port from the Bare Metal Host inventory, so that I can use it as a stable, required input to cluster configuration Custom Resources (CRs), such as those related to Single Root I/O Virtualization (SR-IOV).
- As an Infrastructure Administrator, I need to discover the PCI address of a NIC port, so that I have a consistent, reliable identifier for that device across different OS releases.
Out of Scope
- Any configuration or consumption logic related to the new bus-info field in downstream components (e.g., SR-IOV Operator) is out of scope for this inventory extension. This feature focuses only on the data collection and exposure in HardwareData.
- Changes to any other hardware inventory fields outside of the NIC object.
Links
- JIRA RFE: RFE-8427
- Affected Component: Metal3 (community project:[ https://github.com/metal3-io|https://github.com/metal3-io])
- clones
-
OCPSTRAT-2378 [TP] Enable IPE (Ironic Prometheus Exporter) on OCP
-
- Refinement
-