Unable to set probes of workers with auto-deploy-values.yml
I am unable to set custom worker probes with a customized auto-deploy-values.yaml
. My worker-pod is runs but is never ready due to the failing probe. When I run kubectl describe pod <worker-pod>
I can see that the pod is configured with this probe:
kubectl describe pod <worker-pod>
[...]
Liveness: http-get http://:3000/healthcheck delay=15s timeout=15s period=10s #success=1 #failure=3
Readiness: http-get http://:3000/healthcheck delay=5s timeout=10s period=10s #success=1 #failure=3
This is exactly what I configured for the root liveness and readiness probe in my auto-deploy-values.yaml
(and it works well for the pod containing the actual application):
livenessProbe:
path: "/healthcheck"
initialDelaySeconds: 15
timeoutSeconds: 15
scheme: "HTTP"
probeType: "httpGet"
readinessProbe:
path: "/healthcheck"
initialDelaySeconds: 5
timeoutSeconds: 10
scheme: "HTTP"
probeType: "httpGet"
However, I configured a different probe for my worker:
workers:
worker:
replicaCount: 1
terminationGracePeriodSeconds: 60
command: [/worker.sh]
# nodeSelector: {}
# tolerations: []
livenessProbe:
probeType: exec
initialDelaySeconds: 10
timeoutSeconds: 10
command: [echo, ok]
readinessProbe:
probeType: "exec"
initialDelaySeconds: 10
timeoutSeconds: 10
command: [echo, ok]
I deleted the app from my kubernetes cluster completely and cleared cluster cache via gitlab. After that I ran a fresh deployment with AUTO_DEVOPS_DEPLOY_DEBUG: '1'
. The rendered helm chart contains the correct values:
workers:
worker:
command:
- /worker.sh
livenessProbe:
command:
- echo
- ok
initialDelaySeconds: 10
probeType: exec
timeoutSeconds: 10
readinessProbe:
command:
- echo
- ok
initialDelaySeconds: 10
probeType: exec
timeoutSeconds: 10
replicaCount: 1
terminationGracePeriodSeconds: 60
but, as mentioned, pod describe shows different probes.
What am I missing here?
Update:
I removed the probes configuration at the root level of the auto-deploy-values.yaml
(the one for my web service) and started another deployment. I thought that these may override the worker settings somehow. However, this only leads to the worker probes being set to the default httpProbe values.