我們嘗試在AWS上使用ECS啓動dask集羣。我們目前的設置:嘗試使用負載均衡器在AWS ECS上嘗試dask.distributed集羣時出現連接錯誤
- 兩種服務 - dask-scheduler服務和dask-worker服務,每個服務都有一個任務定義。每個服務都有一個任務(將來可以擴展出沙盒工作任務)。
- dask-scheduler將端口8786,8787,& 9786從容器映射到主機。 dask-worker任務不映射端口。
- 傳統的負載均衡器位於dask-scheduler的前面,並在TCP上的這三個端口上偵聽。儘管我們只有一個dask調度程序任務,但負載平衡器在調度程序重新啓動時提供了一個靜態地址。
- dask-worker使用負載均衡器的參數啓動。 dask-scheduler啓動時沒有參數。
不幸的是,我沒有太多的運氣。我得到這些日誌消息:
06:10:24
distributed.core - INFO - Connection from 172.31.35.94:49003 to Scheduler
06:10:24
distributed.core - INFO - Lost connection: ('172.31.35.94', 49003)
06:10:24
distributed.core - INFO - Close connection from 172.31.35.94:49003 to Scheduler
06:10:54
distributed.core - INFO - Connection from 172.31.35.94:49009 to Scheduler
06:10:54
distributed.core - INFO - Lost connection: ('172.31.35.94', 49009)
06:10:54
distributed.core - INFO - Close connection from 172.31.35.94:49009 to Scheduler
06:11:07
distributed.core - INFO - Connection from 172.31.35.94:49018 to Scheduler
06:11:07
distributed.core - INFO - Connection from 172.31.35.94:49019 to Scheduler
06:11:07
distributed.scheduler - INFO - Receive client connection: 941a5c1a-8ac2-11e6-a74c-0242ac110001
06:11:24
distributed.core - INFO - Connection from 172.31.35.94:49023 to Scheduler
06:11:24
distributed.core - INFO - Lost connection: ('172.31.35.94', 49023)
06:11:24
distributed.core - INFO - Close connection from 172.31.35.94:49023 to Scheduler
06:11:54
distributed.core - INFO - Connection from 172.31.35.94:49033 to Scheduler
06:11:54
distributed.core - INFO - Lost connection: ('172.31.35.94', 49033)
06:11:54
distributed.core - INFO - Close connection from 172.31.35.94:49033 to Scheduler
我認爲這是負載平衡器的問題。當我運行與靜態IP相同的設置時,它工作正常。
任何想法,爲什麼這應該是一個問題?我試着用--no-nanny
模式運行,我試過在調度器上傳遞負載平衡器地址到--host
,但沒有效果。
首先,很酷的設置。我很感興趣,看看這是怎麼回事。除了確保您需要打開的端口打開並且每個人都可以在網絡中看到對方之外,我個人在此沒有任何建議。 – MRocklin
謝謝@MRocklin。你知道工作人員是否需要映射任何端口?這和http端口有什麼關係?我找不到任何有關這些文件的文檔。 – Maximilian
在離開計劃程序運行並閒置一段時間後,我每五秒鐘就會得到三個文件:'distributed.core - INFO - 收集未使用的數據流。打開:512,活動:0' – Maximilian