雲計算相關話題已經寫了3篇,準備再寫一篇,給這個系列作一個階段性的結尾,最後選擇了Mesos這個社區裏又一個明星產品做爲結尾。微服務
回顧Mesos的歷史,其實Mesos並非爲Docker而生的,Mesos 始於加州大學伯克利分校雲計算
Mesos 獨有的獨立管理各類工做負載的能力,包括 Java 這樣的傳統應用程序、無狀態 Docker 微服務、批處理做業、實時分析和有狀態的分佈式數據服務。Mesos 普遍的工做負載覆蓋來自於其兩級架構,從而實現了「應用感知」調度。經過將應用程序特定的操做邏輯封裝在「Mesos 框架」中來實現應用程序感知調度。spa
資源管理策略Dominant Resource Fairness(DRF), 這是Mesos的核心,也是咱們把Mesos比做分佈式系統Kernel的根本緣由。通俗講,Mesos可以保證集羣內的全部用戶有平等的機會使用集羣內的資源,這裏的資源包括CPU,內存,磁盤等等。3d
Mesos Master資源管理器,提供這些底層基礎設施的框架部分,同時保持隔離。這種方法容許每一個工做負載有本身專用的應用程序調度器,它瞭解其對部署、縮放和升級的具體操做需求。應用程序調度程序也獨立地被開發、管理和更新,這讓Mesos保持高度可擴展性,支持新的工做負載,或者隨着時間的推移增長更多的操做能力。cdn
不少朋友拿Kubernetes和Mesos進行對比,Mesos更側重底層資源的管理,Kubernetes側重業務層的調度,容器服務編排,服務發現等。其實Kubernetes也能夠運行在Mesos上,也能夠選擇二者結合。Mesos至關於一堆積木,經過組裝實現本身的業務模型,而Kubernetes已是組裝好的積木,直接拿來用就行了。
blog
若是咱們想構建一個可靠的平臺,用以運行多任務關鍵工做負載,包括Docker容器和分佈式數據服務(例如Spark、Kafka、Cassandra),並但願全部這些均可以在雲或數據中心上可移植,那麼,Mesos就是最適合的。內存