I am using container Probes to check the health of the application running inside the container within kubernetes pod. For now my example pod config looks like,
"spec":{
"containers":[
{
"image":"tomcat",
"name":"tomcat",
"livenessProbe":{
"httpGet":{
"port": 80
},
"initialDelaySeconds": 15,
"periodSeconds": 10
}
}
]
}
In my case, I need to monitor two ports for the same container. 80 and 443. But I am unable to find a method to provide both the ports for same container in the config file. Is there an alternate way of doing this?
Kubernetes gives you two types of health checks performed by the kubelet. They are: Startup Probe. Liveness Probe.
To check the status of the pod, run the kubectl get pod command and check the STATUS column. As you can see, in this case all the pods are in running state. Also, the READY column states the pod is ready to accept user traffic.
If you have curl / wget on the container you could just run a container exec healthcheck, and do something like curl localhost:80 && curl localhost:443
.
It's not possible, try to encapsulate the health check inside your application
Ex: http://localhost:80/health_check?full => (proxy to) => http://localhost:443/health_check?full
can be help you https://github.com/kubernetes/kubernetes/issues/37218
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With