2016-03-01 60 views
3

Mesos中是否有可能具有動態集羣大小 - 集羣CPU和RAM配額總數是否設置?Mesos - 動態集羣大小

Mesos知道我的AWS憑證,並且只有在存在不適合現有資源的新作業時纔會生成新的ec2實例。 (AWS或其他雲提供商)。類似於 - 當作業完成時它可能會殺死ec2實例。

它可以是Mesos插件/框架或一些外部工具 - 任何幫助表示讚賞。

感謝

回答

2

我們正在做的是我們正在使用Mesos監視工具和HTTP端點@http://mesos.apache.org/documentation/latest/endpoints/來監視羣集。

我們有自己的框架,可以從主節點和從節點獲取所有相關信息,我們的算法使用該信息來縮放羣集。

例如,如果羣集CPU利用率大於0.90,我們將啓動一個新實例並將該從屬設備註冊到主設備。

1

如果我理解正確你你正在尋找一個解決方案來自動縮放你的Mesos集羣?

有些人會在AWS上做什麼,例如創建一個autoscaling group,允許他們根據自己的需要擴大和縮小代理/從屬節點的數量。 請注意,按比例放大/縮小的觸發器通常取決於應用程序(例如,一個應用程序可以100%利用率,其他80%應該已經觸發了放大操作)。

有關使用AWS自動縮放組的示例,您可以看看Mesosphere DCOS Community edition(注意,如上所述,您仍然必須編寫縮放縮放組的縮放組的觸發器代碼)。

+0

這部分回答了我的問題,我只是想在不同的地方使用自動縮放觸發器。不是爲了擴大現有工作的集羣,而是爲了新的工作。所以情況如下:我創建一個需要10個CPU的作業,Mesos只有5個可用,但Mesos知道它仍然可以創建10個EC2實例,所以它創建了一個包含8個CPU的實例,並將其中的一些分配給我的任務。 –

+0

您可以做的是編寫一個應用程序來檢查集羣利用率(Mesos Metrics)和新部署(Marathon API),並在上述場景中縮放ec2 autoscaling組(ec2 API)。請參閱https://github.com/mesosphere/marathon-autoscale以自動縮放應用程序爲例.... – js84

0

AFAIK,Mesos不能自動縮放本身;它需要有人啓動羣集的Mesos Agent。一種選擇是構建一個腳本並由Marathon管理,此腳本用於在比較框架和Mesos羣集中的未完成任務後啓動/停止代理。