oxidecomputer / oxidecomputer/omicron
Adding a sled uses the rack ID of the associated Nexus
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 572
- Forks
- 97
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 96
Description
Converting this TODO into an issue:
When the sled-agent registers itself with Nexus, it winds up in this API call. The rack ID of the sled itself (which the sled-agent knows) is not included in the API call. Nexus instead uses its own rack ID. That's fine today, but won't work in a mulitrack scenario, unless the DNS lookup the sled-agent does ensures the call goes to a rack-local Nexus. We could also include the rack ID of the sled in the request, and there are also probably other solutions as well.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at nexus/src/app/sled.rs lines 51-52 and trace the API call made when sled-agent registers with Nexus. Determine how rack identity is currently selected and evaluate the issue's multirack concern before choosing a solution. Done means sled registration uses the correct rack identity in a multirack deployment.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- api, distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100