Apache Mesos

Apache Mesos

Apache Mesos是由加州大學伯克利分校的AMPLab首先開發的一款開源群集管理軟體,支持Hadoop、ElasticSearch、Spark、Storm 和Kafka等套用架構。

基本介紹

  • 中文名:Apache Mesos
  • 外文名:Apache Mesos
分散式系統核心,系統特性,架構,

分散式系統核心

Mesos使用了與Linux核心相似的規則來構造,僅僅是不同抽象層級的差別。Mesos從設備(物理機或虛擬機)抽取 CPU,記憶體,存儲和其他計算資源,讓容錯和彈性分散式系統更容易使用。Mesos核心運行在每個機器上,在整個數據中心和雲環境內向應用程式(Hadoop、Spark、Kafka、Elastic Serarch等等)提供資源管理和資源負載的API接口。

系統特性

  • 可擴展到10000個節點
  • 使用ZooKeeper實現Master和Slave的容錯
  • 支持Docker容器
  • 使用Linux容器實現本地任務隔離
  • 基於多資源(記憶體,CPU、磁碟、連線埠)調度
  • 提供Java,Python,C++等多種語言 APIs
  • 通過Web界面查看集群狀態

架構

從左側架構圖上可知,Mesos包含兩個組件:Master Daemon和Slave Daemon,Master Daemon管理所有的Slave Daemon,Slave Daemon運行在各個節點上。
Apache Mesos
通過資源供給(Resource Offers)Master Daemon實現了跨套用的細粒度資源(CPU、記憶體、...)共享。每個資源供給(Resource Offers)包含一組資源列表。對照既定組織策略(例如共享屬性、優先權),Master Dameon決定提供多少資源給每個套用框架。為了支持不同的策略控制,Master Daemon使用可拔插的模組化的架構方便增加新的策略控制機制。
運行在Mesos上的套用一般由兩部分組件組成:調度器(Scheduler)和執行進程(Executor Process)。調度器註冊在Master Daemon上用於決策資源供給,執行進運行在Slave節點上用於運行各個套用任務。當Master Daemon決定供給套用多少資源時,由調度器決定把那裡的資源提供該套用使用。當套用決定接受被提供的資源時,它會告訴Mesos需要運行的任務都是什麼,Mesos在對應的Slave節點上載入這些任務。

相關詞條

熱門詞條

聯絡我們