Managed controller is failing, its container is being restarted and the Managed controller item log shows
Liveness probe failed: HTTP probe failed with statuscode: 503
or
Liveness probe failed: Get https://$POD_IP:8080/$CONTROLLER_NAME/login: dial tcp POD_IP:8080: connect: connection refused
Managed controller is failing, its container is being restarted and the Managed controller item log shows
Readiness probe failed: HTTP probe failed with statuscode: 503
or
Readiness probe failed: Get https://$POD_IP:8080/$CONTROLLER_NAME/login: dial tcp POD_IP:8080: connect: connection refused
Managed controller takes a long time to start and eventually fails due to the Liveness or readiness probe
Liveness / Readiness probe failure are caused by Jenkins being not responsive to a health check - currently done
https://$POD_IP:8080/$CONTROLLER_NAME/login
. Those failures occurs when Jenkins suffers from performance issues and is unresponsive for too long.
In most cases, this happens on startup
.
Before troubleshooting any further, we recommend to go through the following recommendations that address common causes.
If you’d like to modify the values for the liveness or readiness probes, you can either:
1 ) Go to the Operations center and click the gear for a specific managed controller, and under the
Configure
page, you can change the values:
2 ) You can also directly edit the statefulset definition for the pod you would like to change by running:
For the operations center:
kubectl edit statefulset cjoc
or for a specific controller:
kubectl edit statefulset my-controller
and you can directly edit the relevant values:
After you save those changes, the pod will be restarted by Kubernetes automatically, and the new values will be applied. Note: this method will only change the values until the next
helm
modification of the statefulset, or modifications made by the CloudBees CI product, hence this
kubectl edit
method should only be relied upon for temporary diagnostic purposes.