oxidecomputer / oxidecomputer/omicron
RSS / Rack Initialize: Fail fast and explicitly
@andrewjstone is already working on this.
Since Jun 1, 2023.
- Dominant language
- Rust
- Stars
- 572
- Forks
- 97
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 96
Description
When we send the rack-initialize call, before RSS sends out the signal for bootstrap agents to initialize the rack, there should be a preliminary check done first. In this check, RSS will contact each of the sleds it expects to be in the cluster on the bootstrap addresses provided in the rack initialize call. The RSS agent will ask each of the sled agents to verify that it's ready to initialize the rack. The individual sled/bootstrap agents then check all the preconditions for initializing the sled and report back to RSS. If there are failures, all of them should be reported back to the caller so they can take remedial action. This includes not being able to contact expected sleds. This should be a fast operation, on the order of a few seconds.
cc @andrewjstone
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.
Assessment
This issue has not been assessed yet.