2016-12-16 5 views
0

私はメソス/マラソンシステムを持っており、大部分はうまくいきます。それ以上のプロセスが稼働しており、そのほとんどはCPUの一部のみを使用しています。しかし、時には(特に開発中)、プロセスがスピンアップして、使用可能なCPUを使用し始めることがあります。私は私のシステムモニタで、CPUが固定されているのを見ることができますが、どのマラソンプロセスがそれを引き起こしているのかは分かりません。マラソンの暴走のプロセスを見つけるには

マラソンジョブのCPU使用率を示すモニターアプリはありますか?時間の経過とともにそれを示すもの。これはスケーリングとCPU要件の理解にも役立ちます。トラッキングメモリの使用率は良好ですが、CPUには二次的です。

+0

可能な重複[Mesosの各コンテナのCPU使用率を測定するには?](http://stackoverflow.com/questions/40346667/how-to- cpu-utilization-of-each-container-in-mesos) – janisz

答えて

2

エージェント(スレーブ)ノードで分離メカニズムを設定していないようです。 mesos-slaveには--isolationフラグが付いており、デフォルト値はposix/cpu,posix/memです。これは、プロセスレベルでの分離を意味します(分離はまったくありません)。 cgroups/cpu,cgroups/memアイソレーションを使用すると、与えられたメモリ制限を超えた場合に、与えられたタスクがカーネルによって強制終了されます。メモリは容易に強制することができる厳しい制約です。

CPUを制限する方が複雑です。 Mesosに8つのCPUコアを提供するマシンがあり、それぞれのタスクがcpu=2.0を必要とするように設定されている場合、最大4つのタスクを実行できます。それは簡単ですが、あなたの4つのタスクのうちの任意の時点で、すべてのアイドル状態のコアを利用できるかもしれません。一部のジョブが誤動作している場合、同じマシン上で実行されている他のジョブに影響する可能性があります。 CPU使用率を制限するには、Completely Fair Scheduler(または関連する質問How to understand CPU allocation in Mesos?を参照)を参照してください。

多くの可能性がありますが、ご希望に合ったオプションを選択してください。あなたのソリューションの多くを組み合わせることができ、いくつかは(順不同)オープンソースの他のエンタープライズ・レベルのソリューションです:

  • collectd統計情報を収集するため、保存するためのGraphiteGrafana可視化
  • Telegrafのための集いの統計について、InfluxDBデータを格納し、収集するために可視化
  • Prometheusため、Grafanaを格納するための、Grafana可視
  • Datadogためのクラウドベースのモニタリングのための
  • Sysdigプラットフォームの監視と深い洞察力のためのソリューション
関連する問題