我的吊舱/容器在Docker映像上运行,该映像大小约为4GiB。在资源不足的情况下,每当新的VM节点启动时,从容器注册表中提取映像大约需要2分钟。
这就是说,每当有新请求出现并且Kubernetes服务自动扩展新节点时,它要花费 2分钟以上。用户必须等待2分钟才能提出请求。 不理想。我目前正在使用 Azure AKS 部署我的应用程序并使用其群集自动缩放功能。
我正在使用一个典型的部署设置,其中包含1个Fix Master Pod和3个Fix Worker Pod。这3个工作包对应3种不同类型的请求。每次收到请求时,工作人员窗格都会生成一个K8作业来处理该请求。
BIG问题是,如何预先提取图像,以便在Kubernetes集群中旋转一个新节点时,用户不必等待那么长时间即可准备好新作业?
答案 0 :(得分:3)
如果使用Azure容器注册表(ACR)存储和提取图像,则可以启用远距传输,这将大大减少图像提取时间。有关更多信息,请参见link
答案 1 :(得分:0)
最佳地,您应该重新整理Dockerfile来尝试和优化层大小。
无论如何,您都应该能够使用Packer 6预先安装了Docker映像来构建VM,然后使所有其他实例以某种方式从该VM开始-https://www.packer.io/docs/builders/azure.html
每次升级Docker映像时都需要重建AMI