<p>I have a kubernetes cluster with a few different pod types. </p>

<ul>
<li>An Nginx frontend, </li>
<li>A flask backend on gunicorn, </li>
<li>Redis, and </li>
<li>A Redis queue (RQ).</li>
</ul>

<p>Based on what I can tell, the default liveness probing for the frontend, and flask backend are sufficient (200 OK returning, as I have created a '/' backend that returns 200 and all my tasks should run quickly). Crash detection works well. </p>

<p>Additionally, I have a setup aliveness monitor that pings Redis with the Redis-cli. That also is working well.</p>

<p>However, I am not sure if the default configuration for the RQ is good enough. The pod has restarted itself a few times and is generally well behaved, but since I don't know the mechanism that is used, I'm worried.</p>

<p>My questions are: what is the liveness probe used by something like an RQ worker and what might I do to make sure it's robust?</p>

<p>Should I be using something like Supervisor or systemd? Any recommendations on which one?</p>

<p>From the stable redis helm chart,
<a href="https://github.com/helm/charts/blob/master/stable/redis/templates/health-configmap.yaml" rel="nofollow noreferrer">https://github.com/helm/charts/blob/master/stable/redis/templates/health-configmap.yaml</a></p>

<p>Bitnami has added health check for redis in the helm chart. It just pings the cluster using redis-cli. This mechanism seems to be doing well enough to be included in the official manifest. </p>
