2011-06-22 1 views
0

私のサーバはGRIDを使用しています。私たちは3つのノードを持っています[私はautosysジョブをキックオフするときに、それらのいずれかのスクリプトを実行することができます]UNIXのマルチノードグリッド内のいずれかのノードでプロセスが実行されているかどうかを検出する方法

私の問題は、すでに実行されている場合、私のコードは、スクリプトが同じノードで実行されているのを見ると、最初のインスタンスと2番目のインスタンスを意味します。

ps -ead -o%U%p%a | egrep '(ksh | perl)' | grep -v egrep | grep \ "perl。* myprocess.pl \"

がありますが、PSはGRID内のすべてのノードからのプロセスのすべてのインスタンスをリストすることができます。

助けてください!

+0

あなたは異なるノード上のジョブを起動することができます「GRID」を持っていますが、何のジョブコントロールを持っていませんか?奇妙なことに、少なくとも... – pavel

答えて

0

start.flagファイルは共通の場所に作成できます。以下の条件を維持してください:

フラグが存在する場合は、フラグが削除され、 スクリプトが実行されます。実行が完了すると、スクリプト はそのフラグに再び触れます。

フラグが存在しない場合、スクリプトは、その が実行中であると言って終了します。

ベスト運:)

+1

フラグは初めて手動で作成する必要があります。 –

関連する問題