最佳化容器和 AMIs - AWS Batch

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

最佳化容器和 AMIs

容器大小和結構對於您執行的第一組任務很重要。如果容器大於 4 GB,則尤其如此。容器映像內建於圖層中。Docker 會使用三個並行執行緒並行擷取層。您可以使用 max-concurrent-downloads 參數增加並行執行緒的數量。如需詳細資訊,請參閱 Dockerd 文件

雖然您可以使用較大的容器,但我們建議您最佳化容器結構和大小,以縮短啟動時間。

  • 較小型容器的擷取速度較快 – 較小型的容器可能會導致更快的應用程式啟動時間。若要減少容器大小,請將不常更新的程式庫或檔案卸載至 Amazon Machine Image (AMI)。您也可以使用繫結掛載來存取容器。如需詳細資訊,請參閱繫結掛載

  • 建立大小相同的圖層並分解大型圖層 – 每個圖層都由一個執行緒擷取。因此,大層可能會大幅影響您的任務啟動時間。我們建議最大層大小為 2 GB,以便在較大的容器大小和更快的啟動時間之間進行良好的取捨。您可以執行 docker history your_image_id命令來檢查容器映像結構和層大小。如需詳細資訊,請參閱 Docker 文件

  • 使用 Amazon Elastic Container Registry 作為容器儲存庫 – 當您平行執行數千個任務時,自我管理的儲存庫可能會失敗或限制輸送量。Amazon 可大規模ECR運作,並可以處理超過一百萬的工作負載vCPUs。

    Diagram showing layers of machine images and containers with data types and change frequencies.