nebari-dev / nebari-dev/nebari-docs
Operational how-to: Longhorn distributed block storage
@khuyentran1401 is already working on this.
Since Jun 22, 2026.
- Dominant language
- No language data
- Stars
- 21
- Forks
- 40
- Avg merge
- 19h 50m
- Merged PRs (30d)
- 6
Description
Sub-issue of #630.
Scope
A how-to for installing, configuring, and operating Longhorn distributed block storage on NKP.
New page under docs/docs/how-tos/.
Content:
- When to use Longhorn vs cloud-native volumes, including which providers install it
- Configure via the
longhornblock and apply withnic deploy - Node maintenance procedures (drain, uncordon)
Cross-links:
- Architecture explainer (#625)
- Back up and restore data (merged in #709) already covers Longhorn backups in depth. This page should link to it, not restate it.
- Provider pages that already mention Longhorn:
docs/docs/how-tos/providers/aws.mdx,docs/docs/how-tos/providers/hetzner.mdx
Verified against source
Checked against nebari-infrastructure-core @ 199bc37 (2026-08-28). These supersede the design docs where they disagree:
- Provider support. Longhorn is installed by the AWS, Hetzner, and existing-cluster providers, which all call the shared
pkg/storage/longhornpackage. Azure, GCP, and the local provider hardcodeLonghornEnabled: false. - Chart version. Pinned to
1.11.2inpkg/storage/longhorn/config.go. - Config knobs.
enabled,replica_count,dedicated_nodes,node_selector,instance_manager_cpu_percent. dedicated_nodescontract. When set, every storage node group must carry the labels fromlonghorn.StorageNodeLabels. NIC emits a loud warning when no node carries the create-default-disk label.- CLI surface.
deploy,destroy,validate,version,kubeconfig,outputs. There is still nonic status.
Acceptance criteria
- Page includes concrete commands, not just prose
- Page states which providers install Longhorn and which do not
- Page notes NKP-only scope (Classic equivalent stays under
/classic/if present) - Backups are cross-linked to the existing guide rather than duplicated
- Cross-links wired
Reference
Repos:
[!WARNING]
These design docs drift from the implementation. Treat thenicsource code as the source of truth and verify every claim against it before writing. Two confirmed drifts as of 2026-08-31: the node maintenance doc still says Longhorn "is currently only wired into the AWS provider" (it is wired for Hetzner and existing clusters too), and older guidance references anic statuscommand that does not exist.
Design docs (audit PR nebari-infrastructure-core#301 merged 2026-07-28; the worktree-design-doc-audit branch is deleted, so the links below point at main):
- Longhorn design decision:
docs/adr/0002-longhorn-distributed-block-storage-for-aws.md. Note this was not part of the #301 audit; it was last touched 2026-06-08. It is titled "for AWS" but carries a 2026-05 amendment expanding the scope. - Node maintenance:
docs/design-doc/operations/longhorn-node-maintenance.md
Source of truth:
- Shared package:
pkg/storage/longhorn/ - Provider callers:
pkg/providers/cluster/aws/longhorn.go,pkg/providers/cluster/hetzner/provider.go,pkg/providers/cluster/existing/provider.go
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.