diff --git a/content/de/installation/cloud-native/index.md b/content/de/installation/cloud-native/index.md index ef338b58..19175a9e 100644 --- a/content/de/installation/cloud-native/index.md +++ b/content/de/installation/cloud-native/index.md @@ -65,11 +65,11 @@ The chart supports two modes, selected via the `mode` values: | Mode | Values | Workload | Layout | | --- | --- | --- | --- | -| Distributed (**default**) | `mode.distributed.enabled=true` | StatefulSet | `replicaCount: 4` pods, 4 data PVCs each (16 drives total) — or `replicaCount: 16` for 16 pods with 1 data PVC each | +| Distributed (**default**) | `mode.distributed.enabled=true` | StatefulSet | `replicaCount` pods (`>= 2`, default `4`) × `drivesPerNode` data PVCs per pod (`>= 1`, inferred as `4` when `replicaCount: 4` or `1` otherwise; 16 drives by default) | | Standalone | `mode.standalone.enabled=true`, `mode.distributed.enabled=false` | Deployment | 1 pod, 1 data PVC (single node single disk) | - **Standalone** matches single-node single-disk: no erasure-coding redundancy across nodes. Use it for development, testing, or small setups where the underlying storage provides its own durability. It can reuse existing PVCs via `mode.standalone.existingClaim.dataClaim` / `mode.standalone.existingClaim.logsClaim`. -- **Distributed** behaves like [multiple node multiple disk](../linux/multiple-node-multiple-disk.md): objects are erasure-coded across pods and PVCs. `replicaCount` must be `4` (each pod gets 4 PVCs) or `16` (each pod gets 1 PVC); pick based on how many nodes your cluster can spread pods across. +- **Distributed** behaves like [multiple node multiple disk](../linux/multiple-node-multiple-disk.md): objects are erasure-coded across pods and PVCs. `replicaCount` sets the number of pods (`>= 2`) and `drivesPerNode` sets the number of data PVCs per pod (`>= 1`), giving `replicaCount * drivesPerNode` total drives. When `drivesPerNode` is left unset (`null`), the chart infers `4` data PVCs per pod when `replicaCount` is `4` (16 drives total) and `1` data PVC per pod for any other `replicaCount` (such as `replicaCount: 16` for 16 pods with 1 PVC each). Set both `replicaCount` and `drivesPerNode` explicitly (for example, `replicaCount: 4` and `drivesPerNode: 2` for 8 drives) to choose another layout. ```bash # Standalone mode @@ -93,7 +93,7 @@ storageclass: :::warning[The default PVC size is 256Mi — change it] -The chart's default size for the data and logs volumes is **256Mi**, which is only enough to verify the chart works. For any real workload set `storageclass.dataStorageSize` (for example `1Ti`) and `storageclass.logStorageSize` (for example `1Gi`) at install time. In distributed mode the data size applies to **each** data PVC (16 PVCs by default). +The chart's default size for the data and logs volumes is **256Mi**, which is only enough to verify the chart works. For any real workload set `storageclass.dataStorageSize` (for example `1Ti`) and `storageclass.logStorageSize` (for example `1Gi`) at install time. In distributed mode the data size applies to **each** data PVC (`replicaCount * drivesPerNode`, 16 PVCs by default). ::: @@ -157,12 +157,12 @@ pools: list: - {} # pool 0: inherits top-level values and keeps the # existing StatefulSet/pod/PVC names and data - - replicaCount: 4 # pool 1: new capacity (4 or 16) + - replicaCount: 4 # pool 1: new capacity (replicaCount >= 2) storageclass: dataStorageSize: 10Gi ``` -Then apply with `helm upgrade`. Each entry may set `replicaCount` (4 or 16) and/or a `storageclass` block; omitted fields inherit the top-level values. Additional pools render as `-pool` StatefulSets; all pools share the headless service, the main service, the configuration, and the credentials. +Then apply with `helm upgrade`. Each entry may set `replicaCount` (`>= 2`) and/or a `storageclass` block; omitted fields inherit the top-level values. When top-level `drivesPerNode` is set explicitly, that drive count applies to every pool; when `drivesPerNode` is left unset (`null`), the chart infers the drive count per pool from that pool's `replicaCount` (`4` drives per pod when `replicaCount` is `4`, or `1` drive per pod otherwise). Additional pools render as `-pool` StatefulSets; all pools share the headless service, the main service, the configuration, and the credentials. :::warning[Pools are append-only] diff --git a/content/en/installation/cloud-native/index.md b/content/en/installation/cloud-native/index.md index ef338b58..19175a9e 100644 --- a/content/en/installation/cloud-native/index.md +++ b/content/en/installation/cloud-native/index.md @@ -65,11 +65,11 @@ The chart supports two modes, selected via the `mode` values: | Mode | Values | Workload | Layout | | --- | --- | --- | --- | -| Distributed (**default**) | `mode.distributed.enabled=true` | StatefulSet | `replicaCount: 4` pods, 4 data PVCs each (16 drives total) — or `replicaCount: 16` for 16 pods with 1 data PVC each | +| Distributed (**default**) | `mode.distributed.enabled=true` | StatefulSet | `replicaCount` pods (`>= 2`, default `4`) × `drivesPerNode` data PVCs per pod (`>= 1`, inferred as `4` when `replicaCount: 4` or `1` otherwise; 16 drives by default) | | Standalone | `mode.standalone.enabled=true`, `mode.distributed.enabled=false` | Deployment | 1 pod, 1 data PVC (single node single disk) | - **Standalone** matches single-node single-disk: no erasure-coding redundancy across nodes. Use it for development, testing, or small setups where the underlying storage provides its own durability. It can reuse existing PVCs via `mode.standalone.existingClaim.dataClaim` / `mode.standalone.existingClaim.logsClaim`. -- **Distributed** behaves like [multiple node multiple disk](../linux/multiple-node-multiple-disk.md): objects are erasure-coded across pods and PVCs. `replicaCount` must be `4` (each pod gets 4 PVCs) or `16` (each pod gets 1 PVC); pick based on how many nodes your cluster can spread pods across. +- **Distributed** behaves like [multiple node multiple disk](../linux/multiple-node-multiple-disk.md): objects are erasure-coded across pods and PVCs. `replicaCount` sets the number of pods (`>= 2`) and `drivesPerNode` sets the number of data PVCs per pod (`>= 1`), giving `replicaCount * drivesPerNode` total drives. When `drivesPerNode` is left unset (`null`), the chart infers `4` data PVCs per pod when `replicaCount` is `4` (16 drives total) and `1` data PVC per pod for any other `replicaCount` (such as `replicaCount: 16` for 16 pods with 1 PVC each). Set both `replicaCount` and `drivesPerNode` explicitly (for example, `replicaCount: 4` and `drivesPerNode: 2` for 8 drives) to choose another layout. ```bash # Standalone mode @@ -93,7 +93,7 @@ storageclass: :::warning[The default PVC size is 256Mi — change it] -The chart's default size for the data and logs volumes is **256Mi**, which is only enough to verify the chart works. For any real workload set `storageclass.dataStorageSize` (for example `1Ti`) and `storageclass.logStorageSize` (for example `1Gi`) at install time. In distributed mode the data size applies to **each** data PVC (16 PVCs by default). +The chart's default size for the data and logs volumes is **256Mi**, which is only enough to verify the chart works. For any real workload set `storageclass.dataStorageSize` (for example `1Ti`) and `storageclass.logStorageSize` (for example `1Gi`) at install time. In distributed mode the data size applies to **each** data PVC (`replicaCount * drivesPerNode`, 16 PVCs by default). ::: @@ -157,12 +157,12 @@ pools: list: - {} # pool 0: inherits top-level values and keeps the # existing StatefulSet/pod/PVC names and data - - replicaCount: 4 # pool 1: new capacity (4 or 16) + - replicaCount: 4 # pool 1: new capacity (replicaCount >= 2) storageclass: dataStorageSize: 10Gi ``` -Then apply with `helm upgrade`. Each entry may set `replicaCount` (4 or 16) and/or a `storageclass` block; omitted fields inherit the top-level values. Additional pools render as `-pool` StatefulSets; all pools share the headless service, the main service, the configuration, and the credentials. +Then apply with `helm upgrade`. Each entry may set `replicaCount` (`>= 2`) and/or a `storageclass` block; omitted fields inherit the top-level values. When top-level `drivesPerNode` is set explicitly, that drive count applies to every pool; when `drivesPerNode` is left unset (`null`), the chart infers the drive count per pool from that pool's `replicaCount` (`4` drives per pod when `replicaCount` is `4`, or `1` drive per pod otherwise). Additional pools render as `-pool` StatefulSets; all pools share the headless service, the main service, the configuration, and the credentials. :::warning[Pools are append-only] diff --git a/content/fr/installation/cloud-native/index.md b/content/fr/installation/cloud-native/index.md index ef338b58..19175a9e 100644 --- a/content/fr/installation/cloud-native/index.md +++ b/content/fr/installation/cloud-native/index.md @@ -65,11 +65,11 @@ The chart supports two modes, selected via the `mode` values: | Mode | Values | Workload | Layout | | --- | --- | --- | --- | -| Distributed (**default**) | `mode.distributed.enabled=true` | StatefulSet | `replicaCount: 4` pods, 4 data PVCs each (16 drives total) — or `replicaCount: 16` for 16 pods with 1 data PVC each | +| Distributed (**default**) | `mode.distributed.enabled=true` | StatefulSet | `replicaCount` pods (`>= 2`, default `4`) × `drivesPerNode` data PVCs per pod (`>= 1`, inferred as `4` when `replicaCount: 4` or `1` otherwise; 16 drives by default) | | Standalone | `mode.standalone.enabled=true`, `mode.distributed.enabled=false` | Deployment | 1 pod, 1 data PVC (single node single disk) | - **Standalone** matches single-node single-disk: no erasure-coding redundancy across nodes. Use it for development, testing, or small setups where the underlying storage provides its own durability. It can reuse existing PVCs via `mode.standalone.existingClaim.dataClaim` / `mode.standalone.existingClaim.logsClaim`. -- **Distributed** behaves like [multiple node multiple disk](../linux/multiple-node-multiple-disk.md): objects are erasure-coded across pods and PVCs. `replicaCount` must be `4` (each pod gets 4 PVCs) or `16` (each pod gets 1 PVC); pick based on how many nodes your cluster can spread pods across. +- **Distributed** behaves like [multiple node multiple disk](../linux/multiple-node-multiple-disk.md): objects are erasure-coded across pods and PVCs. `replicaCount` sets the number of pods (`>= 2`) and `drivesPerNode` sets the number of data PVCs per pod (`>= 1`), giving `replicaCount * drivesPerNode` total drives. When `drivesPerNode` is left unset (`null`), the chart infers `4` data PVCs per pod when `replicaCount` is `4` (16 drives total) and `1` data PVC per pod for any other `replicaCount` (such as `replicaCount: 16` for 16 pods with 1 PVC each). Set both `replicaCount` and `drivesPerNode` explicitly (for example, `replicaCount: 4` and `drivesPerNode: 2` for 8 drives) to choose another layout. ```bash # Standalone mode @@ -93,7 +93,7 @@ storageclass: :::warning[The default PVC size is 256Mi — change it] -The chart's default size for the data and logs volumes is **256Mi**, which is only enough to verify the chart works. For any real workload set `storageclass.dataStorageSize` (for example `1Ti`) and `storageclass.logStorageSize` (for example `1Gi`) at install time. In distributed mode the data size applies to **each** data PVC (16 PVCs by default). +The chart's default size for the data and logs volumes is **256Mi**, which is only enough to verify the chart works. For any real workload set `storageclass.dataStorageSize` (for example `1Ti`) and `storageclass.logStorageSize` (for example `1Gi`) at install time. In distributed mode the data size applies to **each** data PVC (`replicaCount * drivesPerNode`, 16 PVCs by default). ::: @@ -157,12 +157,12 @@ pools: list: - {} # pool 0: inherits top-level values and keeps the # existing StatefulSet/pod/PVC names and data - - replicaCount: 4 # pool 1: new capacity (4 or 16) + - replicaCount: 4 # pool 1: new capacity (replicaCount >= 2) storageclass: dataStorageSize: 10Gi ``` -Then apply with `helm upgrade`. Each entry may set `replicaCount` (4 or 16) and/or a `storageclass` block; omitted fields inherit the top-level values. Additional pools render as `-pool` StatefulSets; all pools share the headless service, the main service, the configuration, and the credentials. +Then apply with `helm upgrade`. Each entry may set `replicaCount` (`>= 2`) and/or a `storageclass` block; omitted fields inherit the top-level values. When top-level `drivesPerNode` is set explicitly, that drive count applies to every pool; when `drivesPerNode` is left unset (`null`), the chart infers the drive count per pool from that pool's `replicaCount` (`4` drives per pod when `replicaCount` is `4`, or `1` drive per pod otherwise). Additional pools render as `-pool` StatefulSets; all pools share the headless service, the main service, the configuration, and the credentials. :::warning[Pools are append-only] diff --git a/content/ja/installation/cloud-native/index.md b/content/ja/installation/cloud-native/index.md index ef338b58..19175a9e 100644 --- a/content/ja/installation/cloud-native/index.md +++ b/content/ja/installation/cloud-native/index.md @@ -65,11 +65,11 @@ The chart supports two modes, selected via the `mode` values: | Mode | Values | Workload | Layout | | --- | --- | --- | --- | -| Distributed (**default**) | `mode.distributed.enabled=true` | StatefulSet | `replicaCount: 4` pods, 4 data PVCs each (16 drives total) — or `replicaCount: 16` for 16 pods with 1 data PVC each | +| Distributed (**default**) | `mode.distributed.enabled=true` | StatefulSet | `replicaCount` pods (`>= 2`, default `4`) × `drivesPerNode` data PVCs per pod (`>= 1`, inferred as `4` when `replicaCount: 4` or `1` otherwise; 16 drives by default) | | Standalone | `mode.standalone.enabled=true`, `mode.distributed.enabled=false` | Deployment | 1 pod, 1 data PVC (single node single disk) | - **Standalone** matches single-node single-disk: no erasure-coding redundancy across nodes. Use it for development, testing, or small setups where the underlying storage provides its own durability. It can reuse existing PVCs via `mode.standalone.existingClaim.dataClaim` / `mode.standalone.existingClaim.logsClaim`. -- **Distributed** behaves like [multiple node multiple disk](../linux/multiple-node-multiple-disk.md): objects are erasure-coded across pods and PVCs. `replicaCount` must be `4` (each pod gets 4 PVCs) or `16` (each pod gets 1 PVC); pick based on how many nodes your cluster can spread pods across. +- **Distributed** behaves like [multiple node multiple disk](../linux/multiple-node-multiple-disk.md): objects are erasure-coded across pods and PVCs. `replicaCount` sets the number of pods (`>= 2`) and `drivesPerNode` sets the number of data PVCs per pod (`>= 1`), giving `replicaCount * drivesPerNode` total drives. When `drivesPerNode` is left unset (`null`), the chart infers `4` data PVCs per pod when `replicaCount` is `4` (16 drives total) and `1` data PVC per pod for any other `replicaCount` (such as `replicaCount: 16` for 16 pods with 1 PVC each). Set both `replicaCount` and `drivesPerNode` explicitly (for example, `replicaCount: 4` and `drivesPerNode: 2` for 8 drives) to choose another layout. ```bash # Standalone mode @@ -93,7 +93,7 @@ storageclass: :::warning[The default PVC size is 256Mi — change it] -The chart's default size for the data and logs volumes is **256Mi**, which is only enough to verify the chart works. For any real workload set `storageclass.dataStorageSize` (for example `1Ti`) and `storageclass.logStorageSize` (for example `1Gi`) at install time. In distributed mode the data size applies to **each** data PVC (16 PVCs by default). +The chart's default size for the data and logs volumes is **256Mi**, which is only enough to verify the chart works. For any real workload set `storageclass.dataStorageSize` (for example `1Ti`) and `storageclass.logStorageSize` (for example `1Gi`) at install time. In distributed mode the data size applies to **each** data PVC (`replicaCount * drivesPerNode`, 16 PVCs by default). ::: @@ -157,12 +157,12 @@ pools: list: - {} # pool 0: inherits top-level values and keeps the # existing StatefulSet/pod/PVC names and data - - replicaCount: 4 # pool 1: new capacity (4 or 16) + - replicaCount: 4 # pool 1: new capacity (replicaCount >= 2) storageclass: dataStorageSize: 10Gi ``` -Then apply with `helm upgrade`. Each entry may set `replicaCount` (4 or 16) and/or a `storageclass` block; omitted fields inherit the top-level values. Additional pools render as `-pool` StatefulSets; all pools share the headless service, the main service, the configuration, and the credentials. +Then apply with `helm upgrade`. Each entry may set `replicaCount` (`>= 2`) and/or a `storageclass` block; omitted fields inherit the top-level values. When top-level `drivesPerNode` is set explicitly, that drive count applies to every pool; when `drivesPerNode` is left unset (`null`), the chart infers the drive count per pool from that pool's `replicaCount` (`4` drives per pod when `replicaCount` is `4`, or `1` drive per pod otherwise). Additional pools render as `-pool` StatefulSets; all pools share the headless service, the main service, the configuration, and the credentials. :::warning[Pools are append-only] diff --git a/content/zh/installation/cloud-native/index.md b/content/zh/installation/cloud-native/index.md index 7b70c9f9..7ba18985 100644 --- a/content/zh/installation/cloud-native/index.md +++ b/content/zh/installation/cloud-native/index.md @@ -65,11 +65,11 @@ rustfs-3 1/1 Running 0 2m27s | 模式 | 值 | 工作负载 | 布局 | | --- | --- | --- | --- | -| 分布式(**默认**) | `mode.distributed.enabled=true` | StatefulSet | `replicaCount: 4` 个 Pod,每个 Pod 4 个数据 PVC(共 16 个驱动器);或设置 `replicaCount: 16`,使用 16 个 Pod,每个 Pod 1 个数据 PVC | +| 分布式(**默认**) | `mode.distributed.enabled=true` | StatefulSet | `replicaCount` 个 Pod(`>= 2`,默认 `4`)× 每个 Pod `drivesPerNode` 个数据 PVC(`>= 1`,当 `replicaCount: 4` 时推断为 `4`,其他情况推断为 `1`;默认共 16 个驱动器) | | 单机 | `mode.standalone.enabled=true`、`mode.distributed.enabled=false` | Deployment | 1 个 Pod、1 个数据 PVC(单节点单磁盘) | - **单机模式**对应单节点单磁盘:节点之间不提供纠删码冗余。适用于开发、测试或底层存储自身提供持久性的小型部署。它可以通过 `mode.standalone.existingClaim.dataClaim` / `mode.standalone.existingClaim.logsClaim` 复用现有 PVC。 -- **分布式模式**的行为类似[多节点多磁盘](../linux/multiple-node-multiple-disk.md):对象通过纠删码分布到各 Pod 和 PVC。`replicaCount` 必须为 `4`(每个 Pod 获得 4 个 PVC)或 `16`(每个 Pod 获得 1 个 PVC);请根据集群能够将 Pod 分布到多少个节点来选择。 +- **分布式模式**的行为类似[多节点多磁盘](../linux/multiple-node-multiple-disk.md):对象通过纠删码分布到各 Pod 和 PVC。`replicaCount` 设置 Pod 数量(`>= 2`),`drivesPerNode` 设置每个 Pod 的数据 PVC 数量(`>= 1`),驱动器总数为 `replicaCount * drivesPerNode`。当 `drivesPerNode` 未设置(`null`)时,chart 会在 `replicaCount` 为 `4` 时推断每个 Pod 挂载 `4` 个数据 PVC(共 16 个驱动器),在其他 `replicaCount` 值下推断每个 Pod 挂载 `1` 个数据 PVC(例如 `replicaCount: 16` 对应 16 个 Pod、每个 Pod 1 个 PVC)。如需使用其他拓扑,请显式设置 `replicaCount` 和 `drivesPerNode`(例如设置 `replicaCount: 4` 和 `drivesPerNode: 2` 以使用 8 个驱动器)。 ```bash # Standalone mode @@ -93,7 +93,7 @@ storageclass: :::warning[默认 PVC 大小为 256Mi,请更改] -chart 的数据卷和日志卷默认大小为 **256Mi**,仅足以验证 chart 是否可用。对于任何实际工作负载,请在安装时设置 `storageclass.dataStorageSize`(例如 `1Ti`)和 `storageclass.logStorageSize`(例如 `1Gi`)。在分布式模式下,数据大小应用于**每个**数据 PVC(默认 16 个 PVC)。 +chart 的数据卷和日志卷默认大小为 **256Mi**,仅足以验证 chart 是否可用。对于任何实际工作负载,请在安装时设置 `storageclass.dataStorageSize`(例如 `1Ti`)和 `storageclass.logStorageSize`(例如 `1Gi`)。在分布式模式下,数据大小应用于**每个**数据 PVC(`replicaCount * drivesPerNode`,默认 16 个 PVC)。 ::: @@ -157,12 +157,12 @@ pools: list: - {} # pool 0: inherits top-level values and keeps the # existing StatefulSet/pod/PVC names and data - - replicaCount: 4 # pool 1: new capacity (4 or 16) + - replicaCount: 4 # pool 1: new capacity (replicaCount >= 2) storageclass: dataStorageSize: 10Gi ``` -然后使用 `helm upgrade` 应用。每个条目可以设置 `replicaCount`(4 或 16)和/或 `storageclass` 区块;省略的字段继承顶层值。其他存储池渲染为 `-pool` StatefulSet;所有存储池共享无头 Service、主 Service、配置和凭证。 +然后使用 `helm upgrade` 应用。每个条目可以设置 `replicaCount`(`>= 2`)和/或 `storageclass` 区块;省略的字段继承顶层值。如果显式设置了顶层 `drivesPerNode`,该驱动器数量将应用于所有存储池;如果 `drivesPerNode` 保持未设置(`null`),chart 会根据各存储池自身的 `replicaCount` 为每个存储池推断驱动器数量(当 `replicaCount` 为 `4` 时每个 Pod 挂载 `4` 个驱动器,其他情况下每个 Pod 挂载 `1` 个驱动器)。其他存储池渲染为 `-pool` StatefulSet;所有存储池共享无头 Service、主 Service、配置和凭证。 :::warning[存储池仅可追加]