如何找到一个马拉松式的逃跑过程

oyxsuwqo  于 2021-06-26  发布在  Mesos
关注(0)|答案(1)|浏览(275)

我有一个mesos/马拉松系统,它在大多数情况下运行良好。有20个以上的进程在运行,其中大多数只使用部分cpu。然而,有时(特别是在开发过程中),一个进程会加速并开始使用尽可能多的cpu。我可以在我的系统监视器上看到有一个固定的cpu,但我不能告诉马拉松进程是什么导致它。
是否有显示马拉松作业cpu使用情况的监控应用程序?随着时间的推移而显现出来的东西。这也有助于理解扩展和cpu需求。跟踪内存使用情况会很好,但要从属于cpu。

piztneat

piztneat1#

似乎您还没有在代理(从属)节点上配置任何隔离机制。 mesos-slave 带有一个 --isolation 默认为的标志 posix/cpu,posix/mem . 这意味着在流程级别的隔离(几乎没有隔离)。使用 cgroups/cpu,cgroups/mem 隔离将确保给定任务在超过给定内存限制时被内核终止。内存是一个硬约束,可以很容易地执行。
限制cpu更复杂。如果您的机器为mesos提供8个cpu核,并且您的每个任务都设置为需要 cpu=2.0 ,最多可以运行4个任务。这很简单,但在给定的时刻,您的4个任务中的任何一个都可以利用所有空闲的内核。如果您的某些作业行为不正常,可能会影响同一台计算机上运行的其他作业。要限制cpu利用率,请参阅完全公平调度程序(或相关问题如何理解mesos中的cpu分配?更多细节)。
关于监控,有很多可能,请选择一个适合您需求的选项。您可以组合许多解决方案,其中一些是开源的其他企业级解决方案(按随机顺序排列):
收集数据,石墨存储,格拉法纳可视化
telegraf用于收集统计数据,influxdb用于存储,grafana用于可视化
普罗米修斯用于存储和收集数据,格拉法纳用于可视化
基于云的监控解决方案的datadog
用于监控和深入了解的sysdig平台

相关问题