oxidecomputer / oxidecomputer/omicron

RSS / Rack Initialize: Fail fast and explicitly

Open
#3,198 4 comments 0 reactions 1 assignee View on GitHub

@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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.