<p>Does pod running on a Kubernetes node gets rescheduled if the Kubernetes nodes gets killed due to power failure. And if gets rescheduled and if that nodes comes up what happens to the pod running on that node?</p>

<p>Warning: this answer is based on the assumption you don't create an ad-hoc Pod, but instead manage your pods via a Deployment, StatefulSet, DaemonSet or any other controller. If it's an ad-hoc pod you created manually - it won't be rescheduled.</p>
<blockquote>
<p>Does pod running on a Kubernetes node gets rescheduled if the Kubernetes nodes gets killed due to power failure.</p>
</blockquote>
<p>Whether and when it gets rescheduled depends on its <code>node.kubernetes.io/not-ready</code> and <code>node.kubernetes.io/unreachable</code> tolerations.</p>
<p>As of current stable kubernetes here are the defaults:</p>
<pre class="lang-yaml prettyprint-override"><code>  tolerations:
    - key: node.kubernetes.io/not-ready
      operator: Exists
      effect: NoExecute
      tolerationSeconds: 300
    - key: node.kubernetes.io/unreachable
      operator: Exists
      effect: NoExecute
      tolerationSeconds: 300
</code></pre>
<p>So, with these defaults - a pod on a died node would be rescheduled after 300 seconds (5 minutes).</p>
<blockquote>
<p>And if gets rescheduled and if that nodes comes up what happens to the pod running on that node?</p>
</blockquote>
<p>If a node is restarted - then a pod won't be started on next boot, and the kubelet would cleanup everything needed.</p>
