2017-05-03 9 views
1

私は新しいmesos/marathonに、私は1つのマスターと5 mesosの奴隷のクラスターを持っています。 ジョブはmesosスレーブに配置され、/var/lib/mesos/slaves/../executorsのスペースは、タスクが失敗したときに増加を開始し、何度も何度も展開しようとします。古いサンドボックスを管理する方法(そしてジョブが実行されなくなった後にそれらをクリーンアップする方法)

backend_gig.42c25d62-2f07-11e7-9b48-025317f685e8    
backend_kw-subscribe.d8bbfff0-2f09-11e7-9b48-025317f685e8 
backend_gig.5fb8ab00-2f01-11e7-9b48-025317f685e8    
backend_kw-subscribe.d9d9c645-2f01-11e7-9b48-025317f685e8 
backend_gigya.7218ec06-2f04-11e7-9b48-025317f685e8   
backend_kw-subscribe.f7c1bb09-2f05-11e7-9b48-025317f685e8 
backend_gigya.97960c51-2f03-11e7-9b48-025317f685e8   
backend_kw-subscribe.fc36ac17-2f06-11e7-9b48-025317f685e8 
backend_gig.9e4a9ab7-2f09-11e7-9b48-025317f685e8    
backend_charging-mock.3fcf883a-2e56-11e7-8876-025317f685e8 
backend_gig.ac4c9a67-2f06-11e7-9b48-025317f685e8    

どのように私はmesosスレーブに/古いジョブを失敗/実行されていないジョブのディレクトリを削除しますか? それはmesos/marathonによって制御されますか? ディレクトリを削除するには、cronやスクリプトを設定する必要があります。 ディレクトリが多くのディスク容量を消費し、スレーブがダウンして作業を開始できないことをお勧めします。

答えて

1

メゾスは古いサンドボックスを処理する独自のシステムを持っています。 documentationから

サンドボックスのファイルは時にガベージコレクションのために予定されている:

  • エグゼキュータは、削除または終了されます。

  • フレームワークが除去される。

  • エグゼキュータは、エージェントの回復中に正常に回復しません。

:エージェントの回復時には、エグゼキュータの実行のすべては、最新の実行を除いて、同様にガベージコレクションのために予定されています。

ガベージコレクションは、エージェントフラグである--gc_delayに基づいてスケジュールされます。デフォルトでは、サンドボックスが最後に変更されてから1週間です。遅延後、ファイルは削除されます。

--gc_disk_headroom=VALUE最大実行者ディレクトリの経過時間を計算するために使用されるディスクのヘッドルームを調整します。年齢は、gc_delay * max(0.0, (1.0 - gc_disk_headroom - disk usage))毎に計算されます。--disk_watch_intervalです。 gc_disk_headroomは0.0から1.0の間の値でなければなりません(デフォルト:0.1)

+0

私のために働いてくれたgc_delayに感謝します。それは十分であるか、または "gc_disk_headroom"も設定する必要があります。このパラメータを使用すると混乱します。 – anudeep

+0

GCディスクのヘッドルームは、ディスクが完全に装着されている場合にのみ適用されます。おそらくgc_delayには十分な空き領域があるだけです。私の経験から、実行者のサンドボックスがどのくらい速く成長するかを実験した結果、ディスク使用量が大幅に増えた場合は、gc_delayを減らすかgcディスクのヘッドルームを増やすか – janisz

関連する問題