Skip to content

Comments

Move Server.Status popolation from ServerReconciler to BMCReconciler#339

Closed
stefanhipfel wants to merge 8 commits intomainfrom
bmc_serverinfo
Closed

Move Server.Status popolation from ServerReconciler to BMCReconciler#339
stefanhipfel wants to merge 8 commits intomainfrom
bmc_serverinfo

Conversation

@stefanhipfel
Copy link
Contributor

@stefanhipfel stefanhipfel commented May 22, 2025

Proposed Changes

BMC controller now loads Server Status Details (Manufacturer, Storages, CPUs) once during creation of a server CRD and when setting the anntotation "metal.ironcore.dev/operation" : "update-server-details".

BMC controller reconcile loop now only gets called when server was deleted or ops annotation was set.

Fixes:
Redfish Processors are now called separately, only when needed.
In General: Less calls to BMC redfish api

Server Controller Test:
Before: 700 API calls
After: 305 API calls

@afritzler afritzler changed the title load Server Status Details via BMC Controller Move Server.Status popolation from ServerReconciler to BMCReconciler May 22, 2025
@afritzler afritzler added the enhancement New feature or request label May 22, 2025
@stefanhipfel stefanhipfel requested a review from afritzler May 22, 2025 13:05
@afritzler afritzler moved this to In Progress in Roadmap May 22, 2025
@afritzler afritzler force-pushed the main branch 4 times, most recently from 0c35c73 to 0e5194a Compare June 10, 2025 12:59
@Nuckal777
Copy link
Contributor

I am still wondering, if the BMC reconciler should be responsible for filling in the state the state of Server objects. 🤔 The main concern is PR wants to address is superfluous calls to the redfish API by introducing some checks on status fields already being present. This can also be achieved in the Server reconciler.

@stefanhipfel
Copy link
Contributor Author

stefanhipfel commented Jul 21, 2025

I am still wondering, if the BMC reconciler should be responsible for filling in the state the state of Server objects. 🤔 The main concern is PR wants to address is superfluous calls to the redfish API by introducing some checks on status fields already being present. This can also be achieved in the Server reconciler.

BMC reconciler already sets state fields of Server objects.

Only updating hardware status fields which are not set, requires to implement a forced update mechanism if hardware was updated..

@stefanhipfel
Copy link
Contributor Author

superseded by #443

@github-project-automation github-project-automation bot moved this from In Progress to Done in Roadmap Aug 25, 2025
@afritzler afritzler deleted the bmc_serverinfo branch February 13, 2026 12:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants