【发布时间】:2015-02-02 13:05:13
【问题描述】:
我正在开发一些 Docker 容器以在 Mesos 集群中运行。我们正在通过 Marathon 管理的 Chronos 提交作业。但是,我注意到在 Mesos 中运行容器与直接通过 Docker 执行容器相比,性能显着下降。通常,这些容器可以在大约 1.5 分钟内完成这项工作,但我看到使用 Mesos 运行时需要 3-12 分钟。我正在运行的核心进程执行大量磁盘 I/O,所以可能是 Mesos 中处理 I/O 的方式导致了这种情况?
任何想法都会很棒,但以防万一有人提出建议,我无法更改正在运行的核心流程。我无法控制它,它非常复杂。
谢谢。
编辑:通过 Marathon 运行作业进行了一些额外的测试,性能符合预期。也许是 Chronos 导致了这种退化?如果是这样,为什么会这样?
【问题讨论】:
-
应该没什么区别。 Chronos 和 Marathon 都只是简单地向 Mesos 发送一个 TaskInfo。然后,Mesos 只需运行用户将运行的相同 docker 命令。你有不同的主机吗?在不同主机上运行时,您能看到执行时间的差异吗?
-
是的,我有几个运行它的主机,但不管主机是什么,我只看到通过 Chronos 提交作业时的区别。
-
您是否在所有情况下都配置了相同数量的资源?
-
在以后的测试中,是的。
-
你能分享一下后来发生的事情吗?你找到原因了吗?或者解决方法?
标签: mesos mesosphere