blob: 908e9c1f7ce7762c0172d349cc14cc4ad0a9afea [file] [log] [blame]
Matthias Andreas Benkard880a1602026-11-04 21:36:23 +01001# Helm values for Traefik, the ingress controller replacing ingress-nginx.
2#
3# helm upgrade --install traefik traefik --repo https://traefik.github.io/charts \
4# --version 42.1.3 -n traefik --create-namespace -f traefik/values.yaml
5#
6# Traefik serves the existing Ingress objects of class "nginx" through its
7# ingress-nginx compatibility provider, so the Ingresses need no changes.
8# The CRD provider is enabled for routes that need Traefik middlewares
9# (e.g., the cgit rate limit in git/git.yaml).
Matthias Andreas Benkard341525c2026-11-05 19:12:05 +010010#
11# Both entrypoints run the per-client-IP rate limit from
12# traefik/middlewares.yaml, which must be applied before this release.
Matthias Andreas Benkard880a1602026-11-04 21:36:23 +010013
14deployment:
15 replicas: 1
16
17# Single node with hostPorts: the old pod must release the ports before the
18# new one can start.
19updateStrategy:
20 type: RollingUpdate
21 rollingUpdate:
22 maxSurge: 0
23 maxUnavailable: 1
24
25resources:
26 requests:
27 cpu: 100m
28 memory: 100Mi
29
30# ifirn is occasionally CPU-starved; the default 2s timeout caused liveness
31# kills under load.
32readinessProbe:
33 timeoutSeconds: 5
34livenessProbe:
35 timeoutSeconds: 5
36
37accessLog:
38 enabled: true
39
40ingressClass:
41 # The "nginx" IngressClass (traefik/ingressclass.yaml) is kept instead.
42 enabled: false
43
44providers:
45 kubernetesCRD:
46 enabled: true
47 allowCrossNamespace: false
48 kubernetesIngress:
49 enabled: false
50 kubernetesIngressNGINX:
51 enabled: true
52 ingressClass: nginx
53 controllerClass: k8s.io/ingress-nginx
54 # Defaults carried over from the old ingress-nginx ConfigMap.
55 proxyBufferSize: 65536
56 proxyRequestBuffering: true
57
58service:
59 spec:
60 type: NodePort
61
62ports:
63 web:
Matthias Andreas Benkard6fa23372026-11-04 21:43:38 +010064 hostPort: 80
Matthias Andreas Benkard880a1602026-11-04 21:36:23 +010065 http:
66 aliasHeadersStrategy: delete
Matthias Andreas Benkard341525c2026-11-05 19:12:05 +010067 middlewares: &middlewares
68 - traefik-ratelimit-per-ip@kubernetescrd
Matthias Andreas Benkard880a1602026-11-04 21:36:23 +010069 encodedCharacters: &encodedCharacters
70 allowEncodedBackSlash: true
71 allowEncodedHash: true
72 allowEncodedPercent: true
73 allowEncodedQuestionMark: true
74 allowEncodedSemicolon: true
75 allowEncodedSlash: true
76 websecure:
Matthias Andreas Benkard6fa23372026-11-04 21:43:38 +010077 hostPort: 443
Matthias Andreas Benkard880a1602026-11-04 21:36:23 +010078 http:
79 aliasHeadersStrategy: delete
Matthias Andreas Benkard341525c2026-11-05 19:12:05 +010080 middlewares: *middlewares
Matthias Andreas Benkard880a1602026-11-04 21:36:23 +010081 encodedCharacters: *encodedCharacters