迄今爲止,我使用Mesos,Marathon和Docker管理一組服務器以及我放置的容器,取得了巨大成功。然而,我現在想進一步開始做一些事情,比如自動將haproxy容器鏈接到啓動的每個主要docker服務,或者提供其他基於守護進程和集裝箱化服務,這些服務僅與單個父容器鏈接並且可用。使用Mesos/Marathon鏈接的Docker容器
通常情況下,我會先用一些名字啓動幫助程序服務,然後當我開始真正的服務時,我會將它鏈接到幫助程序,一切都會好的。這個模型如何適合Marathon和Mesos?現在看來,至少集裝箱化是假設一個集裝箱。
我有一個想法,首先啓動幫助器服務,在任何可以找到的主機上,然後向真實服務添加一個約束,即hostname = helper服務的主機名,但似乎會導致資源提供問題和這些資源的競爭條件。
我也曾想過爲docker或啓動docker容器的執行程序腳本提供「嵌入」或「深層鏈接」功能。
在我走下任何這些路徑之前,我想知道是否有其他人解決了這個問題,或者如果我只是在思考問題。
謝謝!
所以對我來說很重要的一件事是容器的位置。我可以相對容易地找到其他容器的某種發現,但我正在尋找一種優化,超越了這種優化,迫使馬拉松在每個容器中啓動一組容器(認爲nginx + rails + credentials守護進程)。顯然我需要提交一個補丁,我應該看看Marathon而不是Docker嗎? –
只是爲了確保我理解正確 - 你的意思是「......這迫使馬拉松在他們自己的主機中啓動一組容器(...)」?即強制容器在不同的主機上? – jpetazzo
對不起,我希望組在單個主機上,例如附加到每個服務的本地haproxy。我認爲這裏的正確途徑是一個自定義的mesos執行器,它知道如何從馬拉松中獲取額外的參數,分叉自己,並管理兒童,確保如果任何一件死亡,整個組都會重新啓動。 –