2017-02-24 37 views
2

當啓動一個使用一個相當大的泊塢窗圖像(〜2GB)有實際開始執行任務前,漫長的等待時間通過極光在mesos的任務。通過Aurora在mesos大泊塢窗圖像發射工作可能會很慢

即使任務之前已經被啓動,我們預計泊塢窗圖像已經提供給工作節點,還有一段等待時間取決於圖像大小的任務實際啓動之前。使用docker,你可以立即啓動一個容器,只要它已經在你的圖片列表中,那麼容器容器是否也不支持這種「緩存」?這個功能是否可以配置?

我還沒有嘗試過使用docker containerizer,但是我的理解是它很快就會被淘汰,而且我們要求的gpu資源隔離只適用於mesos容器。

+0

等多長時間?即使圖像已經建成和/或下載,如果你是從圖像中創建一個新的容器,它必須將圖像文件(可以是由許多層的)至少讀取,從它創建一個容器,只有這一點可能需要時間。這是很難說的,因爲你沒有量化什麼「長延遲」的意思,我們不知道你是否正在創造新的集裝箱,重新啓動通過漫長的等待我的意思是對現有集裝箱... –

+0

在這種情況下,〜 1分鐘〜2GB圖像。我知道,在使用nvidia-docker運行時執行相同的映像時,它僅在幾秒鐘內啓動,而作爲Aurora作業的一部分啓動它需要大約1分鐘,直到指定的進程啓動。另外,啓動包含更小圖像(僅幾百MB)的作業的等待時間明顯更短,大概在10秒左右。現在我不是Docker如何從圖像創建容器的專家,但是我會期望類似於容器的類似行爲 – andrei

+0

我還想補充一點,我確信這種延遲不是由於重新導入圖像造成的或者類似的東西,因爲我嘗試運行一個場景,在該場景中,我執行使用碼頭圖像的極光作業,在註冊表中更新此圖像,然後再次執行相同的作業。在這種情況下,使用了初始圖像,而更新的圖像被忽略。 – andrei

回答

1

我假設你正在談論運行泊塢窗圖像統一containerizer?什麼是您使用的後端?默認情況下,Mesos代理使用複製後端,這就是爲什麼你看到它很慢。您可以通過在代理上點擊flags端點來查看代理正在使用的後端。將後端切換到aufs或overlayfs以查看是否加速啓動。您可以通過代理上的標誌--image_provisioner_backend=VALUE指定後端。

注意:在最新的Mesos版本1.2.0-rc1中,您可能想要獲取的最新版本的aufsoverlayfs後端有一些缺陷修復。更不要說1.2.0-rc1中有一個自動綁定功能會自動選擇最快的後端。

+0

這聽起來確實是這樣的問題。我會稍微轉換一下配置服務器後端並查找你提到的錯誤。 – andrei