超過2個月沒有動靜的Mesosphere官方部落格,近日終於打破沉默,重新開張發布新消息。Mesosphere軟體工程師Gaston Kleiman表示,新版的Mesos 1.2.0版,將要內建原生系統健康檢查功能,「嚴格來說,早在Mesos 0.2.0就已經有此實驗功能,但它現在將會更穩定。」他說。

Gaston Kleiman表示,Mesos會自動偵測應用程式的運作狀況,並且回報給主系統,但是,並非所有應用程式出現異常後都會馬上停止運作,「某些應用程式即使開始出現異常,仍然會繼續運作」,要靠Mesos偵測到此類的應用程式才是真正的挑戰。

在設計系統健康檢查功能的兩年中,Mesos也碰上了許多挑戰。首先,每個模組各自具備相異的健康檢查API,「必須重新實作系統功能,才能滿足需要執行健康檢查的模組的需求。」第二,當系統排程器與工作任務運作在不同的節點時,執行健康檢查將會占用額外的網路流量。最後,健康檢查會造成系統效能瓶頸,「特別是執行大量工作的系統模組,執行健康檢查對系統排程器是個負擔。」

而Mesosphere之所以要內建健康檢查功能的動機,其中一個原因,就是免除開放者自己設計一套健康檢查API的困擾。但Mesosphere認為,提供統一API只是解決了一半的問題,「對每個執行任務的executor,各別實作健康檢查實在太繁瑣。」因此,Mesosphere推出了一套開發函式庫,除了避免系統功能過於碎片化,也可以減輕開發者的工作。

Mesos也進行了測試,在執行超過1,900次探測任務後,Marathon HTTP健康檢查服務開始失效。但是在系統內原生健康檢查功能後,系統可以順利的進行水平擴充,並且執行超過4千次任務。


Advertisement

更多 iThome相關內容