44 lines
1.5 KiB
YAML
44 lines
1.5 KiB
YAML
# k3s Traefik customisation (HelmChartConfig for the built-in `traefik` chart).
|
|||
|
|
#
|
||
|
|
# Apply with: kubectl apply -f deploy/k3s/traefik-helmchartconfig.yaml
|
||
|
|
#
|
||
|
|
# Why: Traefik's entrypoint `readTimeout` defaults to 60s and covers reading the
|
||
|
|
# *entire request including the body*. Admin video uploads (up to 200MB) that take
|
||
|
|
# longer than 60s were cut off with a 502 before reaching the backend. Raise it to
|
||
|
|
# 1 hour (use 0 to disable entirely).
|
||
|
|
apiVersion: helm.cattle.io/v1
|
||
|
|
kind: HelmChartConfig
|
||
|
|
metadata:
|
||
|
|
name: traefik
|
||
|
|
namespace: kube-system
|
||
|
|
spec:
|
||
|
|
failurePolicy: reinstall
|
||
|
|
valuesContent: |-
|
||
|
|
# ACCESSLOG tile -> ON; access logs go to container stdout (kubectl logs).
|
||
|
|
# Key is logs.access.enabled on the chart k3s ships (40.1.5);
|
||
|
|
# the top-level accessLog.enabled only exists on newer chart versions.
|
||
|
|
logs:
|
||
|
|
access:
|
||
|
|
enabled: true
|
||
|
|
# Allow IngressRoutes to reference Services living in other namespaces,
|
||
|
|
# e.g. argocd-server in `argocd`.
|
||
|
|
providers:
|
||
|
|
kubernetesCRD:
|
||
|
|
allowCrossNamespace: true
|
||
|
|
deployment:
|
||
|
|
podAnnotations:
|
||
|
|
# fix: metrics entrypoint listens on :9100, annotation said 8082
|
||
|
|
prometheus.io/port: "9100"
|
||
|
|
prometheus.io/scrape: "true"
|
||
|
|
# Allow slow, large uploads (admin video upload ≤ 200MB) to finish.
|
||
|
|
# Default is 60s; 3600s = 1h. Set to 0 to disable the cap.
|
||
|
|
ports:
|
||
|
|
web:
|
||
|
|
transport:
|
||
|
|
respondingTimeouts:
|
||
|
|
readTimeout: 3600
|
||
|
|
websecure:
|
||
|
|
transport:
|
||
|
|
respondingTimeouts:
|
||
|
|
readTimeout: 3600
|