Hey folks, currently working to update traefik from 1.7 to 2.5 for Kubernetes 1.22 support. After changing my ingress charts to the 1.22 spec, and updating the traefik image that gets pulled, I get the following error while the traefik pod is starting up:
command traefik error: field not found, node: entryPoint
This is happening when the pod is starting so I am unable to actually bash into the pod and view the toml file. Any guidance here would be greatly appreciated.
traefik:
Container ID: docker://5c3738a940be96bd7fe30995672918d317d81e0c74aa01cbd5ff44ab10ba8a3b
Image: docker.io/traefik:2.5
Image ID: docker-pullable://traefik@sha256:7d5a6ae66572b27afe1059ce893b59acb28de70f4ce298385e153d0a398ce7f8
Ports: 12000/TCP, 13000/TCP, 15000/TCP
Host Ports: 0/TCP, 0/TCP, 0/TCP
Args:
-l
INFO
--configfile=/config/dsf-router-backend-traefik/traefik.toml
State: Waiting
Reason: CrashLoopBackOff
Last State: Terminated
Reason: Error
Message: 2022/09/14 18:29:27 command traefik error: field not found, node: entryPoint
Above is the actual docker describe of the traefik pod.
- name: traefik
image: {{ .Values.traefikImage }}
terminationMessagePolicy: FallbackToLogsOnError
args:
- "-l"
- "{{ .Values.traefikLogLevel }}"
- "--configfile=/config/{{ .Chart.Name }}-backend-traefik/traefik.toml"
readinessProbe:
httpGet:
path: /ping
port: 14000
livenessProbe:
httpGet:
path: /ping
port: 14000
volumeMounts:
- mountPath: /config/dynamic
name: {{ .Chart.Name }}-backend-dynamic-config
- mountPath: /config/{{ .Chart.Name }}-backend-traefik
name: {{ .Chart.Name }}-backend-traefik
readOnly: true
ports:
- containerPort: 12000
protocol: TCP
name: traefik-http
- containerPort: 13000
protocol: TCP
name: traefik-api
- containerPort: 15000
protocol: TCP
name: metrics
resources:
requests:
cpu: 0.25
memory: 128Mi
securityContext:
runAsUser: {{ .UID }}
readOnlyRootFilesystem: true
Oh I lied, I found the toml in a configmap helm chart.
defaultEntryPoints = ["http"]
[entryPoints]
[entryPoints.http]
address = ":12000"
[entryPoints.api]
address = ":13000"
[entryPoints.ping]
address = ":14000"
[entryPoints.metrics]
address = ":15000"
[file]
directory = "/config/dynamic"
watch = true
[kubernetes]
ingressClass = "data-service-fabric"
[ping]
entryPoint = "ping"
[api]
entryPoint = "api"
[metrics]
[metrics.prometheus]
entryPoint = "metrics"