docs(storage): note that the replicated class requires DRBD - #675
Open
myasnikovdaniil wants to merge 1 commit into
Open
docs(storage): note that the replicated class requires DRBD#675myasnikovdaniil wants to merge 1 commit into
myasnikovdaniil wants to merge 1 commit into
Conversation
The StorageClass examples in the two install guides and in the disk encryption page are copied verbatim by operators, and nothing beside them says that `layerList: "drbd storage"` is served by a kernel module that may not be present. On a substrate without DRBD the class is created successfully and then every PVC bound to it stays Pending, so the failure surfaces several steps away from the file that caused it. Say it where the class is written, and name the flag that goes with it. The `linstor` package needs `drbd.enabled: false` on such a substrate, and without that the satellite pod never becomes Ready, so LINSTOR registers no nodes and nothing binds at all -- not only the replicated class. LUKS is orthogonal and is called out as such on the encryption page. Signed-off-by: Myasnikov Daniil <myasnikovdaniil2001@gmail.com>
myasnikovdaniil
requested review from
Andrei Kvapil (kvaps),
Timofei Larkin (lllamnyp) and
Timur Tukaev (tym83)
as code owners
September 1, 2026 12:32
✅ Deploy Preview for cozystack ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Contributor
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Team Run ID: Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
myasnikovdaniil
added a commit
to cozystack/cozystack
that referenced
this pull request
Sep 3, 2026
On a substrate where the DRBD kernel module is unavailable the drbd-logger sidecar exits immediately, the satellite pod is therefore never Ready, and piraeus consequently registers zero nodes: LINSTOR reports none, linstor-csi-node hangs in Init polling for a node that does not exist, and every PVC stays Pending behind a cluster that looks healthy. So this flag is the difference between working storage and no storage at all there, not a cosmetic reduction in logging. The concrete case is Talos nodes running as containers. DRBD's resource registry is global per kernel, so three containers sharing one kernel cannot represent three DRBD nodes -- the second new-resource for a given name silently aliases the first instead of failing, which is worse than an error because LINSTOR then records a replica it does not have. It applies to kind equally; it is a property of one kernel, not of Talos. Omitting the sidecar from Cozystack's own pod template is not enough, because piraeus strategically merges satellite configurations and a container another configuration contributes survives the omission. So a LinstorSatelliteConfiguration deletes it from the effective DaemonSet as well. What the flag does NOT do is touch a StorageClass, and the comment says so explicitly. Cozystack does not own them -- an operator writes them by hand from the install guide -- so a class carrying layerList: "drbd storage" still exists after setting this false and volumes on it will never provision. The operator-facing half of that warning goes beside the examples they copy, in cozystack/website#675. Signed-off-by: Myasnikov Daniil <myasnikovdaniil2001@gmail.com>
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.
StorageClass examples in both install guides and in disk encryption page are copied verbatim by operators, and nothing next to them says
layerList: "drbd storage"needs a kernel module that may not be there. On substrate without DRBD class is created fine and then every PVC on it stays Pending, so failure shows up several steps away from file that caused it.Adds one paragraph next to each example and names the flag that goes with it -
linstorpackage needsdrbd.enabled: falsethere, and without it satellite pod never becomes Ready, so linstor registers no nodes and nothing binds at all, not only replicated class. LUKS is independent of DRBD and encryption page says so.Depends on
drbd.enabledlanding in cozystack first, it is not in a released version yet.