diff --git a/k8s/charts/seaweedfs/templates/s3/s3-deployment.yaml b/k8s/charts/seaweedfs/templates/s3/s3-deployment.yaml index d0e4fe7f3..88c7afd24 100644 --- a/k8s/charts/seaweedfs/templates/s3/s3-deployment.yaml +++ b/k8s/charts/seaweedfs/templates/s3/s3-deployment.yaml @@ -149,6 +149,7 @@ spec: {{- if .Values.s3.icebergPort }} -port.iceberg={{ .Values.s3.icebergPort }} \ {{- end }} + {{- /* rendered even when 0: an if would drop the flag and weed would serve its default */}} -port.lance={{ .Values.s3.lancePort | default 0 }} \ {{- range .Values.s3.extraArgs }} {{ . }} \ diff --git a/k8s/charts/seaweedfs/templates/worker/worker-deployment.yaml b/k8s/charts/seaweedfs/templates/worker/worker-deployment.yaml index 75b438cd9..f0cd12418 100644 --- a/k8s/charts/seaweedfs/templates/worker/worker-deployment.yaml +++ b/k8s/charts/seaweedfs/templates/worker/worker-deployment.yaml @@ -232,14 +232,14 @@ spec: valueFrom: fieldRef: fieldPath: metadata.name - # The URL reaches the shell below; a value with metacharacters must - # arrive as data, not syntax. + {{- /* the URL crosses a shell line; metacharacters must arrive as data, not syntax */}} - name: LANCE_NAMESPACE_URL value: {{ include "seaweedfs.worker.lanceNamespaceUrl" . | quote }} command: - "/bin/sh" - "-ec" - | + {{- /* the armv7/386 placeholder is empty; exec of it becomes the shell and exits 0 */}} if [ ! -s /usr/bin/weed-worker ]; then echo "the Rust worker is not available on this platform ($(uname -m)); it ships for amd64 and arm64" >&2 exit 1 diff --git a/k8s/charts/seaweedfs/values.yaml b/k8s/charts/seaweedfs/values.yaml index 10878d43d..6bae8df66 100644 --- a/k8s/charts/seaweedfs/values.yaml +++ b/k8s/charts/seaweedfs/values.yaml @@ -1006,9 +1006,8 @@ s3: # Iceberg catalog REST port (Apache Iceberg REST Catalog API) # Set to a port number to enable, or 0/null to disable icebergPort: null - # Lance Namespace REST port (Lance Namespace API), on by default like - # standalone `weed s3`. Set to 0 to disable; that also drops the worker's - # Lance maintenance container. + # Lance Namespace port; weed serves 9101 by default, 0 disables it + # (and, unless worker.namespaceUrl points elsewhere, the worker's Lance container) lancePort: 9101 loggingOverrideLevel: null # enable user & permission to s3 (need to inject to all services) @@ -1474,18 +1473,10 @@ worker: metricsPort: 9327 metricsIp: "" # If empty, defaults to 0.0.0.0 - # The Lance maintenance worker (/usr/bin/weed-worker, Rust) runs as a - # second container beside `weed worker` whenever its namespace is - # reachable: namespaceUrl set, or s3 enabled with a nonzero s3.lancePort. - # It runs alongside rather than instead, because the job families are - # disjoint: the Go worker serves vacuum, balance, EC and - # iceberg_maintenance; only the Rust worker serves lance_compact, - # lance_optimize_indices and lance_cleanup_versions. The binary ships for - # amd64 and arm64; on an armv7/386-only cluster set s3.lancePort: 0, or - # the container exits at startup naming the platform. + # The lance_* jobs run in their own container, /usr/bin/weed-worker. + # amd64/arm64 only; pin mixed clusters with worker.affinity/nodeSelector. - # Lance namespace URL override. When empty, derived from this release's - # S3 service and s3.lancePort. + # Lance namespace URL override; empty derives it from s3.lancePort. namespaceUrl: "" # Metrics port for the Lance worker container; the Go worker keeps metricsPort