mirror of
https://github.com/fluxerapp/fluxer
synced 2026-10-07 19:22:14 +09:00
fix(self-hosting): grow seaweedfs one volume at a time (#3076)
This commit is contained in:
@@ -448,6 +448,11 @@ FLUXER_DISCOVERY_ENABLED=true
|
|||||||
#FLUXER_SEAWEEDFS_GOMEMLIMIT=1536MiB
|
#FLUXER_SEAWEEDFS_GOMEMLIMIT=1536MiB
|
||||||
#FLUXER_SEAWEEDFS_TELEMETRY=false
|
#FLUXER_SEAWEEDFS_TELEMETRY=false
|
||||||
|
|
||||||
|
# Volumes SeaweedFS creates at once when a bucket needs space. Each reserves 1 GB
|
||||||
|
# of free disk from the start, and SeaweedFS's own default of 7 fills a small
|
||||||
|
# disk before every bucket has one, so uploads fail with no free volumes left.
|
||||||
|
#FLUXER_SEAWEEDFS_VOLUME_GROWTH=1
|
||||||
|
|
||||||
# Node sizes its heap from the container limit by default. Leave these unset
|
# Node sizes its heap from the container limit by default. Leave these unset
|
||||||
# unless you need to pin it. A heap ceiling above the container limit gets the
|
# unless you need to pin it. A heap ceiling above the container limit gets the
|
||||||
# container OOM-killed instead of reporting a heap error. The values below are
|
# container OOM-killed instead of reporting a heap error. The values below are
|
||||||
|
|||||||
@@ -353,6 +353,7 @@ services:
|
|||||||
memory: ${FLUXER_SEAWEEDFS_MEMORY_LIMIT:-2gb}
|
memory: ${FLUXER_SEAWEEDFS_MEMORY_LIMIT:-2gb}
|
||||||
environment:
|
environment:
|
||||||
GOMEMLIMIT: ${FLUXER_SEAWEEDFS_GOMEMLIMIT:-1536MiB}
|
GOMEMLIMIT: ${FLUXER_SEAWEEDFS_GOMEMLIMIT:-1536MiB}
|
||||||
|
WEED_MASTER_VOLUME_GROWTH_COPY_1: ${FLUXER_SEAWEEDFS_VOLUME_GROWTH:-1}
|
||||||
command: ["server", "-s3", "-dir=/data", "-master.telemetry=${FLUXER_SEAWEEDFS_TELEMETRY:-false}"]
|
command: ["server", "-s3", "-dir=/data", "-master.telemetry=${FLUXER_SEAWEEDFS_TELEMETRY:-false}"]
|
||||||
volumes:
|
volumes:
|
||||||
- seaweedfs-data:/data
|
- seaweedfs-data:/data
|
||||||
|
|||||||
@@ -1834,6 +1834,10 @@ Default `1536MiB`. The heap ceiling the Go runtime collects against. Go cannot s
|
|||||||
|
|
||||||
Default `false`. Becomes the `-master.telemetry` flag of `seaweedfs`, which reports usage to the SeaweedFS project when on.
|
Default `false`. Becomes the `-master.telemetry` flag of `seaweedfs`, which reports usage to the SeaweedFS project when on.
|
||||||
|
|
||||||
|
#### `FLUXER_SEAWEEDFS_VOLUME_GROWTH`
|
||||||
|
|
||||||
|
Default `1`. Becomes `WEED_MASTER_VOLUME_GROWTH_COPY_1`, the number of volumes SeaweedFS creates at once when a bucket runs out of room. Each volume reserves a 1 GB slot of free disk, and the stack writes to four buckets. SeaweedFS's own default of 7 needs about 28 GB free before every bucket has a volume, so on a smaller disk the first bucket takes every slot and uploads fail with `No writable volumes and no free volumes left`.
|
||||||
|
|
||||||
#### `FLUXER_SEAWEEDFS_INIT_MEMORY_LIMIT`
|
#### `FLUXER_SEAWEEDFS_INIT_MEMORY_LIMIT`
|
||||||
|
|
||||||
Default `128mb`. The ceiling for `seaweedfs-init`. A one-shot container that exits, so it never overlaps steady state.
|
Default `128mb`. The ceiling for `seaweedfs-init`. A one-shot container that exits, so it never overlaps steady state.
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ const INPUT_NAMES: Record<string, string> = {
|
|||||||
MEILI_NO_ANALYTICS: 'FLUXER_MEILISEARCH_NO_ANALYTICS',
|
MEILI_NO_ANALYTICS: 'FLUXER_MEILISEARCH_NO_ANALYTICS',
|
||||||
MEILI_MAX_INDEXING_MEMORY: 'FLUXER_MEILISEARCH_MAX_INDEXING_MEMORY',
|
MEILI_MAX_INDEXING_MEMORY: 'FLUXER_MEILISEARCH_MAX_INDEXING_MEMORY',
|
||||||
GOMEMLIMIT: 'FLUXER_SEAWEEDFS_GOMEMLIMIT',
|
GOMEMLIMIT: 'FLUXER_SEAWEEDFS_GOMEMLIMIT',
|
||||||
|
WEED_MASTER_VOLUME_GROWTH_COPY_1: 'FLUXER_SEAWEEDFS_VOLUME_GROWTH',
|
||||||
LIVEKIT_KEYS: 'LIVEKIT_API_KEY',
|
LIVEKIT_KEYS: 'LIVEKIT_API_KEY',
|
||||||
NODE_EXTRA_CA_CERTS: 'FLUXER_NODE_EXTRA_CA_CERTS',
|
NODE_EXTRA_CA_CERTS: 'FLUXER_NODE_EXTRA_CA_CERTS',
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user