【问题标题】:Mesos: what are the OS level techniques for resources allocation?Mesos:资源分配的操作系统级别技术是什么?
【发布时间】:2016-08-10 02:51:44
【问题描述】:

我对 Mesos 架构有较高的了解,但我不清楚用于实现资源分配的操作系统级别的技术。例如,Mesos 提供一个框架 1 CPU 和 400MB 内存,另一个框架 2 CPU 和 1GB 内存,这在 OS 层面实际上是如何实现的?

【问题讨论】:

    标签: mesos


    【解决方案1】:

    tl;dr: Mesos 本身不会在操作系统级别“分配”任何资源。资源仍然由操作系统分配,尽管 Mesos 可以使用操作系统级别的原语(如 cgroups)来确保任务不会使用超出其应有的资源。

    1. 节点上的 Mesos 代理通告主机上的某些资源可用(例如,4 个 CPU 和 16GB 的 RAM)——通过自动检测主机上可用的资源或因为可用资源已明确配置(推荐用于生产)。
    2. 然后主服务器将这些资源提供给框架。
    3. 然后框架可以使用代理上的部分或全部可用资源启动任务:例如,框架可以启动具有 2 个 CPU 和 8GB RAM 的任务。
    4. 代理然后启动一个执行器来运行任务。
      • “2 个 CPU 和 8GB 的​​ RAM”资源限制的执行程度取决于 Mesos 的配置方式。例如,如果代理主机支持 cgroups 并且代理以 --isolation='cgroups/cpu,cgroups/mem' 启动,则 cgroups 将用于适当地限制 CPU,并在任务尝试超出其内存分配时终止任务。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-06
      • 2011-06-11
      • 1970-01-01
      相关资源
      最近更新 更多