docs(failure-domains): name domains with labels instead of integer ids - #184
Open
schmidt-scaled wants to merge 1 commit into
Open
docs(failure-domains): name domains with labels instead of integer ids#184schmidt-scaled wants to merge 1 commit into
schmidt-scaled wants to merge 1 commit into
Conversation
Operators now tag storage nodes with a label — RACK1, AZ2, HOST1 — instead of a bare integer. The integer still exists internally (placement and the data plane key off it, and the API's failure_domain field keeps its type), but it is no longer something an operator has to invent or track. - Concept page: domains are named, not numbered; the label -> id mapping is described as an internal detail. - Operations page: examples use RACK1/RACK2; new "Label Syntax" section (letter, then up to 31 of [A-Z0-9_-], case-insensitive); new "Labels on Existing Clusters" section covering initialization via `cluster update` (derived FD<id>/HOST<id> placeholders, idempotent, refuses to steal a name already used by another id). - Notes the compatibility rule: an all-digits --failure-domain value is still read as the internal id, so existing automation keeps working. - The node list's Failure Domain column shows the label, falling back to the id for clusters not initialized yet. Documents simplyblock/sbcli feature/fd-labels (d9732101).
Contributor
|
🤖: Deployment available as https://docstest.simplyblock.io/fd-labels |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Documents the failure-domain / physical labels feature built on
simplyblock/sbclibranchfeature/fd-labels(commitd9732101).What changes for the operator
sn add-node --failure-domaintakes a label —RACK1,AZ2,HOST1— instead of a non-negative integer. The integer is still the internal identity (placement, the distrib cluster map and the expansion planner all key off it, and the v2 API keeps its integerfailure_domainfield, now alongsidefailure_domain_label), but operators no longer invent or track it.Pages touched
architecture/concepts/failure-domains.md— domains are named rather than numbered; the label→id mapping is described as an internal detail.non-kubernetes/operations/failure-domains.md— examples switched toRACK1/RACK2; two new sections:[A-Z0-9_-], case-insensitive, stored upper-cased.cluster update, which names each id in serviceFD<id>/HOST<id>. Idempotent, so a later rename survives; refuses to take a derived name already owned by a different id.Compatibility, documented explicitly
An all-digits
--failure-domainvalue is still read as the internal id, so existing scripts, CI bootstraps and the Kubernetes operator keep working unchanged. The node list's Failure Domain column shows the label and falls back to the id for a cluster that has not been initialized.Notes for review
main: this repo has nodevbranch (default ismain, with releases cut torelease/*/R25.*). Happy to retarget.reference/operator/reference.mdis generated CRD documentation and is untouched — the KubernetesfailureDomainfield lives in the operator repo and would need its own change to accept labels.🤖 Generated with Claude Code