From 2ee6907c193cbf5c34d6786e1c192274d957ffa5 Mon Sep 17 00:00:00 2001 From: Mark McCormick Date: Mon, 13 Apr 2026 18:56:14 +0100 Subject: [PATCH] Update Helm Chart docs with instructions for deploying RocksDB variant (#9006) * Update documentation for helm chart, with instructions on how to deploy the RocksDB image tag variant. Signed-off-by: Mark McCormick Nit: Update example to make it clearer that the seaweedfs version needs to be replaced. Signed-off-by: Mark McCormick * docs(helm): clarify RocksDB variant instructions - Note that filer persistence (enablePVC) is required so RocksDB metadata survives restarts. - Explain why master/volume also use the rocksdb-tagged image. - Tighten wording around WEED_LEVELDB2_ENABLED override. --------- Signed-off-by: Mark McCormick Co-authored-by: Chris Lu --- k8s/charts/seaweedfs/README.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/k8s/charts/seaweedfs/README.md b/k8s/charts/seaweedfs/README.md index c24b0cc67..b0e380ff5 100644 --- a/k8s/charts/seaweedfs/README.md +++ b/k8s/charts/seaweedfs/README.md @@ -49,6 +49,35 @@ CREATE TABLE IF NOT EXISTS `filemeta` ( Alternative database can also be configured (e.g. leveldb, postgres) following the instructions at `filer.extraEnvironmentVars`. +#### RocksDB variant + +The `_large_disk_rocksdb` image tag ships with RocksDB pre-configured as the filer backend. +To use this image with the Helm chart, override the image on all three components and disable +the chart's default `WEED_LEVELDB2_ENABLED`, which would otherwise re-enable LevelDB2 and +override the image's built-in RocksDB configuration: + +```yaml +# Replace with the desired seaweedfs version, e.g. 3.80_large_disk_rocksdb. +master: + imageOverride: chrislusf/seaweedfs:_large_disk_rocksdb + +volume: + imageOverride: chrislusf/seaweedfs:_large_disk_rocksdb + +filer: + enablePVC: true + imageOverride: chrislusf/seaweedfs:_large_disk_rocksdb + extraEnvironmentVars: + WEED_LEVELDB2_ENABLED: "false" +``` + +Notes: + +* `master` and `volume` use the same image tag so that all components share a consistent + SeaweedFS build; RocksDB itself is only used by the filer. +* `filer.enablePVC: true` (or another form of persistent storage for the filer) is required + so that the RocksDB metadata store survives pod restarts — otherwise metadata will be lost. + ### Node Labels Kubernetes nodes can have labels which help to define which node(Host) will run which pod: