<p>I have a "big" micro-service (website) with 3 pods deployed with Helm Chart in production env, but when I deploy a new version of the Helm  chart,  during 40 seconds (time to start my big microservice) I have a problem with the website <code>(503 Service Unavailable)</code> </p>

<p>So, I look at a solution to tell to kubernetes do not kill the old pod before the complete start of the new version</p>

<p>I tried the <code>--wait --timeout</code> but it did not work for me.</p>

<p>My EKS version : "v1.14.6-eks-5047ed"</p>

<p>Without more details about the Pods, I'd suggest:</p>

<p>Use <a href="https://kubernetes.io/docs/concepts/workloads/controllers/deployment/" rel="nofollow noreferrer">Deployment</a> (if not already) so that Pods are managed by a Replication Controller, which allows to do <a href="https://kubernetes.io/docs/tasks/run-application/rolling-update-replication-controller/" rel="nofollow noreferrer">rolling updates</a>, and that <em>in combination</em> with <a href="https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/" rel="nofollow noreferrer">configured</a> Startup Probe (if on k8s v1.16+) or Readiness Probe so that Kubernetes knows when the new Pods are ready to take on traffic (a Pod is considered ready when all of its Containers are ready).</p>
