oxidecomputer / oxidecomputer/omicron
Operator View: Current Capacity of Storage
Open
@just-be-dev is already working on this.
Since Jan 9, 2023.
api
nexus
storage
- Dominant language
- Rust
- Stars
- 572
- Forks
- 97
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 96
Description
The Operator API should provide a mechanism to observe the current capacity of a system, at both a "virtually provisioned" layer, and a "physical" layer.
https://github.com/oxidecomputer/omicron/pull/1782 is necessary for showing the "virtually provisioned" layer.
For the physical provisioning layer, we can break this into some sub-tasks:
- [ ] Nexus: External API
- [ ] Nexus: External API: Should be able to answer: "What disks are attached to a sled?"
- [ ] Nexus: External API: Should be able to answer: "What's the historical usage information of a disk?"
- [ ] Nexus: DB Structures
- [ ] Nexus: Internal API for Sled Agent to inform nexus about disks (u.2 vs m.2, slot number), partitions, etc.
- [ ] Sled Agent: Scraping disk list from the Sled Agent
- [ ] Sled Agent: Scraping disk utilization from Sled Agent
- [ ] Sled Agent: Emitting this info to Nexus' internal API (what disks/partition exist)
- [ ] Sled Agent: Emitting this info to Clickhouse (utilization)
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.