Mesos系列笔记(一)

mesos的起源及其所要解决的问题

2010 年, 一个旨在解决扩容问题的项目在美国加州大学伯克利分校诞生。这个软件项目就是现在所知的 Apache Mesos。它是一个开源的集群管理工具。它让运维和开发人员更
多地关注应用本身,而不是其下的服务器资源

mesos的基本运行机制

  • 它在某种程度上对 CPU、内存、磁盘资源进行抽象,从而允许整个数据中心如同单台大服务器般运转。无需虚拟机和操作系统, Mesos 创造了 一个单独底层的集群为应用提供所需资源。
  • Mesos的资源隔离机制支持多用户,该功能允许多个应用运行在同一个机器上。
  • Mesos还从一开始就支持分布式、高可用和容错。通过使用容器技术如linux groups(cgroups)和DockerMesos实现了进程间的隔离,从而允许多个应用运行在同一机器上。也就是说不必再为MemecachedJenkins CIRuby分别去搭建集群了。

    如何工作

    Mesos:How to work
    tip:现在slave已经改为agent
    Resource offers
    与其他集群管理器类似,Mesos集群也由一组称为masteragent的机器组成。agent定期以Resource offers的形式将可用的cpu,memory,storage通知到master
    两层调度(two-tier scheduling)
    Mesos集群中,Mesos的分配模块(alloction module)和框架的调度器一起负责对资源的调度,也就是所谓的双层调度.
    资源隔离
    通过Linux cgroups或者Dcoker容器,Mesos支持多租户功能,也就是允许多个进程同时在一台agent上运行。