Problem
Currently, the default values.yaml does not specify resource requests or limits for most Texera microservices (webserver, workflow-computing-unit-manager, workflow-compiling-service, file-service, config-service, access-control-service), and the PostgreSQL and MinIO resource requests are set relatively high. This makes it difficult to run Texera on resource-constrained environments such as local development clusters (e.g., k3s on a laptop, Minikube, or small cloud VMs).
The values-development.yaml overlay already addresses this by adding conservative resource constraints, but the base values.yaml should document sensible defaults so that new users aren't surprised by unbounded resource consumption.
Proposed Changes
- Reduce PostgreSQL resource requests/limits — lower CPU request from
1 to 0.25 and memory from 1Gi to 256Mi (with explicit limits).
- Add MinIO resource limits — set memory request and limit to
256Mi.
- Add resource requests and limits for all Texera microservices:
| Service |
CPU Request |
CPU Limit |
Memory Request |
Memory Limit |
| webserver |
10m |
1000m |
256Mi |
1Gi |
| workflow-computing-unit-manager |
10m |
1000m |
256Mi |
256Mi |
| workflow-compiling-service |
10m |
1000m |
256Mi |
256Mi |
| file-service |
10m |
1000m |
256Mi |
512Mi |
| config-service |
10m |
1000m |
256Mi |
256Mi |
| access-control-service |
10m |
1000m |
256Mi |
256Mi |
Motivation
- Prevents pods from consuming unbounded resources and starving other services on a shared node.
- Enables Texera to run on machines with as little as ~8GB RAM.
- Helps Kubernetes schedule pods more effectively by providing the scheduler with accurate resource expectations.
- Provides a documented starting point that users can tune for their own hardware.
Problem
Currently, the default
values.yamldoes not specify resource requests or limits for most Texera microservices (webserver, workflow-computing-unit-manager, workflow-compiling-service, file-service, config-service, access-control-service), and the PostgreSQL and MinIO resource requests are set relatively high. This makes it difficult to run Texera on resource-constrained environments such as local development clusters (e.g., k3s on a laptop, Minikube, or small cloud VMs).The
values-development.yamloverlay already addresses this by adding conservative resource constraints, but the basevalues.yamlshould document sensible defaults so that new users aren't surprised by unbounded resource consumption.Proposed Changes
1to0.25and memory from1Gito256Mi(with explicit limits).256Mi.Motivation