Support HTTP boot client identification after metal-operator discovery removal
I maintainer di solito rispondono entro 3 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 22/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- go, kubernetes
- Ambito
- backend, networking
Direzione di ricerca
Start with the current HTTP boot client identification path in boot-operator, which the source comment says matches clients by IP, and list where it depends on discovery-derived Server IPs. Then design the lookup against the comma-separated metal.ironcore.dev/ips annotation on Server resources, checking how changes and removals propagate. Done when tests cover a successful match, a missing mapping, an ambiguous mapping and IP change or removal, and an ambiguous or missing lookup fails without serving another Server's configuration. Coordinate the contract with metal-operator PR #1152 and the FeDHCP follow-up first.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
Update boot-operator's HTTP boot client identification to support the removal of metal-operator's built-in discovery flow and probe-reported server IPs.
Context and rationale
metal-operator PR #1152 removes metalprobe and Server.status.networkInterfaces. The replacement source for metaldata's IP index is the comma-separated metal.ironcore.dev/ips annotation on Server resources.
The source comment notes that boot-operator currently identifies HTTP boot clients by IP address. This path must remain functional without the removed discovery flow. The IP publication mechanism and boot-operator's client lookup must use a compatible contract.
Required changes
Affected areas: HTTP boot request handling, IP-based client identification, Server lookup or metaldata integration, deployment configuration, tests, and documentation.
- Inspect the current HTTP boot client identification path and identify dependencies on discovery-derived server IPs.
- Define and implement the supported client-to-Server lookup contract after discovery removal. Use the annotation-backed IP source where IP-based identification remains required.
- Coordinate with the FeDHCP follow-up so published in-band IPs can identify the correct Server for HTTP boot.
- Ensure address changes and removals cannot leave a stale client-to-Server mapping.
- Define safe behavior when an IP is missing, invalid, or maps to multiple Servers. Do not serve another Server's boot configuration.
- Document the IP publication prerequisite, deployment changes, and any ordering constraints for an initial HTTP boot.
Acceptance criteria
- An HTTP boot request from a client with a published in-band IP resolves to the correct Server and boot configuration without metalprobe or
Server.status.networkInterfaces. - Changes and removal of published IPs are reflected in client identification.
- Missing or ambiguous mappings fail safely and produce actionable diagnostics.
- Tests cover successful identification, missing mappings, ambiguous mappings, and IP changes or removal.
- Documentation explains how an IP publisher such as FeDHCP supports the HTTP boot flow.
References
- PR: https://github.com/ironcore-dev/metal-operator/pull/1152
- Source comment: https://github.com/ironcore-dev/metal-operator/pull/1152#issuecomment-5867206814
- Requested by: @afritzler
This is follow-up work for the discovery removal in metal-operator PR #1152.
- Lingua principale
- Go
- Stelle
- 6
- Fork
- 9
- Merge medio
- 3g 3h
- PR unite (30g)
- 11
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di ironcore-dev/boot-operator
-
area/metal-automation
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
ironcore-dev/boot-operator#308 ·
I maintainer di solito rispondono entro 3 giorni
-
area/metal-automation
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
ironcore-dev/boot-operator#315 · 2 commenti · 1 reazione ·
I maintainer di solito rispondono entro 3 giorni
-
area/metal-automation
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
ironcore-dev/boot-operator#274 ·
I maintainer di solito rispondono entro 3 giorni
-
Add optional TFP endpoint to `boot-operator`Forse di nuovo libera @damyan l’ha presa 339 giorni fa e non c’è nessuna pull request aperta. Apertaarea/metal-automation
ironcore-dev/boot-operator#231 · 1 reazione · 2 assegnatari ·
I maintainer di solito rispondono entro 3 giorni
-
area/metal-automation
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
ironcore-dev/boot-operator#227 ·
I maintainer di solito rispondono entro 3 giorni
Tutte le issue di ironcore-dev/boot-operator
Issue simili
-
documentation hacktoberfest priority: low skill: good first issue status: ready for dev
Difficoltà 2/5 Mezza giornata Idoneità per principianti 85/100
hyperledger-labs/fabric-smart-client#2142 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
numberly/vault-db-injector#107 ·
I maintainer di solito rispondono entro 1 giorno
-
area/import kind/bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
[DOC] Wrong sg_egress_ports range in the Terraform Databricks Guide for AWS Hub & Spoke with Network FirewallForse già presa @akhil9tiet l’ha presa oggi. Apertadocs
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
databricks/terraform-provider-databricks#6080 · 1 commento ·
I maintainer di solito rispondono entro 3 giorni
-
spqr-coordinator usage shows 'run --config', but 'run' is not a subcommand (unknown command "run")Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
pg-sharding/spqr#3092 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno