<p>My pods/containers run on a docker image which is about 4GiB in size. Pulling the image from the container registry takes about 2 mins whenever a new VM node is spun up when resources are insufficient. </p>

<p>That is to say, whenever a new request comes in and the Kubernetes service auto scale up a new node, it takes <strong>2 mins+</strong>. User has to wait 2 mins to put through a request. <em>Not ideal</em>. I am currently using the <strong>Azure AKS</strong> to deploy my application and using their cluster autoscaler feature.</p>

<p>I am using a typical deployment set up with 1 fix master pod, and 3 fix worker pods. These 3 worker pods correspond to 3 different types of requests. Each time a request comes in, the worker pod will generate a K8 Job to process the request.</p>

<p>BIG Question is, how can I pre pull the images so that when a new node is spun up in the Kubernetes cluster, users don't have to wait so long for the new Job to be ready? </p>

<p>If you are using Azure Container Registry (ACR) for storing and pulling your images you can enable teleportation that will significantly reduce your image pull time. Refer <a href="https://stevelasker.blog/2019/10/29/azure-container-registry-teleportation/" rel="nofollow noreferrer">link</a> for more information</p>
