<p>Pod lifecycle is managed by Kubelet in data plane.</p>
<p>As per the definition: If the liveness probe fails, the kubelet kills the container</p>
<p>Pod is just a container with dedicated network namespace &amp; IPC namespace with a sandbox container.</p>
<hr />
<p>Say, if the Pod is single app container Pod, then upon liveness failure:</p>
<ul>
<li>Does kubelet kill the Pod?</li>
</ul>
<p>or</p>
<ul>
<li>Does kubelet kill the container (only) within the Pod?</li>
</ul>

<p>A pod is indeed the smallest element in Kubernetes, but that does not mean it is in fact &quot;empty&quot; without a container.</p>
<p>In order to spawn a pod and therefore the container elements needed to attach further containers a very small container is created using the <code>pause</code> image.
This is used to allocate an IP that is then used for the pod.
Afterward the init-containers or runtime container declared for the pod are started.</p>
<p>If the lifeness probe fails, the container is restarted. The pod survives this. This is even important: You might want to get the logs of the crashed/restarted container afterwards. This would not be possible, if the pod was destroyed and recreated.</p>
