clusrun
指定したコマンドを複数のノードで実行し、指定したコマンドのすべてのインスタンスの出力を、clusrun コマンドを実行したノードにリダイレクトします。
このコマンドの使用方法の例については、例を参照してください。
構文
clusrun [/all] [/env:<variable_and_value_list>] [/exclude:<node_list>]
[/interleaved] [{/job:<jobID> | /nodegroup:<node_group> |
/nodes:<node_list> | /task:<jobID>.<taskID>[.<subtaskID>] |
/template:<job_template_name> }] [{/nodestate:<node_state> |
/pausednodes | /readynodes}] [/outputdir:<directory>]
[/password:{<password>|*}] [/scheduler:<name>] [/sorted]
[/spooldir:<directory>] [/stdin:[<path>\]<file_name>]
[/task:<JobID>.<TaskId>[.<subtaskID>]]
[/user:[<domain>\]<user_name>]] [/workdir:<folder>]
<command> [<arguments>]
clusrun {/? | /help}
パラメーター
パラメーター | 説明 |
---|---|
/すべての | HPC クラスター内のすべてのノードでコマンドを実行します。 |
/env:<variable_and_value_list> | コマンドの実行時環境で設定する環境変数のリストと、それらの環境変数に割り当てる値を指定します。 リストの形式は、<variable_name1>=<value1> [;<variable_name2>=<value2>...] である必要があります。または、複数の /env パラメーターを含めることで、複数の環境変数を設定できます。各パラメーターには、<variable_name>=<値>形式の異なる引数があります。 環境変数の設定を解除するには、値を指定しないでください。 たとえば、"<variable_to_unset_name>=" などです。 |
/exclude:<node_list> | [,<node2_name>..] の形式を使用して、コマンドを実行しないノードの一覧 <node1_name>指定します。/exclude パラメーターを、複数のノードを間接的に指定する他のパラメーターと組み合わせて使用して、特定のノードを排除できます。 たとえば、HPC クラスターに computenode1、computenode2、computenode3 という名前のノードが含まれている場合は、/exclude:computenode2 オプションと /nodes:compute* オプションを使用して、computenode1 と computenode3 でコマンドを実行するように指定できます。 |
/インターリーブ | 異なるノードからのコマンドの出力を 1 つのリストとして表示します。このリストでは、各行に出力行を生成したノードの名前がラベル付けされ、異なるノードからの出力行をインターリーブできます。 |
/job: jobID>< | ジョブの状態が実行中、完了、失敗、または取り消し済みであり、コマンドを実行するノードが割り当てられているジョブの識別子を指定します。
/job パラメーターを指定した場合、clusrun は、指定したジョブに HPC ジョブ スケジューラ サービスが割り当てたのと同じノードでコマンドを実行します。 このジョブは、ノードが以前に割り当てられたジョブである必要があります。 |
/nodegroup:<node_group> | コマンドを実行するノードを含むノード グループを指定します。 /job、/nodes、/task、または /template パラメーターも指定する場合は、/nodegroup パラメーターを指定できません。 |
/nodes:<node_list> | [,<node2_name>...] の形式を使用して、コマンドを実行するノードの一覧 <node1_name>指定します。ワイルドカード文字としてアスタリスク (*) を使用できます。 たとえば、/node:compnode1*を指定すると、compnode10、compnode15、compnode126、compnode1158 など、compnode1 で始まる名前を持つすべてのノードでコマンドが実行されます。 /job、/nodegroup、/task、または /template パラメーターも指定する場合は、/nodes パラメーターを指定できません。 注: ノード名は 12 文字を超えることはできません。 |
/task: jobID>を<します。<taskID>[.<subtaskID>] | 状態が [実行中]、[完了]、[失敗]、または [取り消されました] で、コマンドを実行するノードが割り当てられたタスクまたはサブタスクの識別子を指定します。
/task パラメーターを指定した場合、clusrun は、指定したタスクまたはサブタスクに割り当てられた HPC ジョブ スケジューラ サービスと同じノードでコマンドを実行します。 タスクまたはサブタスクは、以前にノードが割り当てられたタスクまたはサブタスクである必要があります。 パラメトリック タスクの場合は、タスクではなくサブタスクを指定する必要があります。 |
/template:<job_template_name> | コマンドを実行するノードを含むノード グループを指定するジョブ テンプレートの名前を指定します。 ジョブ テンプレートの名前の最大長は 80 文字です。 /job、/nodegroup、/nodes、または /task パラメーターも指定する場合は、/template パラメーターを指定できません。 |
/nodestate:<node_state> | 指定した状態のすべてのノードでコマンドを実行します。 有効な状態は、オンライン、オフライン、ドレインです。 |
/pausednodes | 非推奨。 代わりに、/nodestate:offline パラメーター を使用してください。 |
/readynodes | 非推奨。 代わりに、/nodestate:online パラメーター を使用してください。 |
/outputdir: ディレクトリ>< |
clusrun コマンドで実行したコマンドの出力を保存する clusrun コマンドの実行に使用するローカル コンピューター上のディレクトリを指定します。 このディレクトリは既に存在している必要があります。または、エラーが発生します。 clusrun コマンドは、HPC ジョブ スケジューラ サービスが clusrun コマンドのインスタンスに割り当てるジョブ識別子と同じ名前で、このディレクトリのサブディレクトリを作成します。 clusrun コマンドは、指定された各ノードのファイルを保存します。 このファイルには、そのノード上の指定されたコマンドの出力が含まれています。ファイル名は、拡張子のないノードの名前と一致します。 メモ帳などのテキスト エディター プログラムを使用して、これらのファイルの内容を表示できます。 |
/password:{<password>|*} | コマンドを実行するアカウントのパスワードを指定します。 /user パラメーターを指定しても、/password パラメーターを指定しない場合、またはパスワードにアスタリスク (*) を指定した場合は、clusrun コマンドによってパスワードの入力とパスワードの保存が求められます。 |
/scheduler:<名前> | コマンドを実行するノードを含むクラスターのヘッド ノードのホスト名または IP アドレスを指定します。 値は、有効なコンピューター名または IP アドレスである必要があります。 /scheduler パラメーターを指定しない場合、このコマンドは、CCP_SCHEDULER環境変数が指定するヘッド ノード上のスケジューラを使用します。 |
/ソート | コマンドがすべてのノードで完了した後にコマンドを実行したさまざまなノードからの出力を表示します。 各ノードの出力は、出力を生成したノードを示す見出しを持つ個別のセクションに表示されます。 セクションは、ノードの名前でアルファベット順に並べ替えられます。 |
/spooldir: ディレクトリ>< | 非推奨。 代わりに、/outputdir パラメーターを使用してください。 |
/stdin:[<パス>\]<file_name> | コマンドが標準入力を受け取るファイルの名前を指定します。 これには、コマンドが作業ディレクトリ内のファイルから標準入力を受け取らない場合に、ファイルの作業ディレクトリに対する相対パスまたは完全パスが含まれます。 コマンドを実行するノードに存在しないファイルまたはパスを指定すると、そのノードでコマンドは失敗します。 このパラメーターの値の最大長は 160 文字です。 |
/user:[<domain>\]<user_name>] | ユーザー名と、必要に応じてコマンドを実行するアカウントのドメインを指定します。 このパラメーターを指定しない場合、コマンドは clusrun コマンドの実行に使用されるアカウントで実行されます。 |
/workdir: フォルダー>< | コマンドを実行する作業ディレクトリを指定します。 既定値は %USERPROFILE%です。 このパラメーターの値の最大長は 160 文字です。 |
<コマンド> [<parameters>] | コマンドまたはアプリケーション名、必要なパラメーターなど、実行するコマンドのコマンド ラインを指定します。
clusrun コマンドは、cmd コマンドを使用して、次のように各ノードでこのコマンドを実行します。 cmd.exe /c <コマンド> [<parameters>] clusrun コマンドを使用して、メッセージ パッシング インターフェイス (MPI) アプリケーションを実行することはできません。 |
/? | コマンド プロンプトにヘルプを表示します。 |
/ヘルプ | コマンド プロンプトにヘルプを表示します。 |
注釈
clusrun コマンドは、直接またはリモートでアクセスされるクラスター内の任意のクライアント ノードで実行できます。 クライアント ノードには、ヘッド ノードと、クライアント ユーティリティがインストールされているコンピューティング ノードが含まれます。 コマンドを実行するノードからの出力はクライアント ノードにリダイレクトされ、オペレーティング システムからの実行時エラー メッセージに加えて、標準出力ストリームと標準エラー ストリームも含まれます。
clusrun コマンドを中断または停止すると、リモート コマンドのインスタンスも停止します。
clusrun コマンドを実行するには、クラスター管理者である必要があります。
clusrun コマンドは、ノードが既にスケジュールされたタスクを実行しているかどうかに関係なく、関連するノードで指定されたコマンドを直ちに実行します。 clusrun コマンドで指定されたコマンドはすぐに実行されるため、clusrun コマンドを実行すると、既に実行されているスケジュールされたタスク 、特に待機時間の影響を受けやすい MPI プログラムが失敗する可能性があります。
clusrun で実行したコマンドは、clusrun コマンドを発行したコンピューター上の共有フォルダーにアクセスできない可能性があります。 このアクセスの問題は、次の状況で発生する可能性があります。
ファイアウォールにより、コマンドが共有フォルダーにアクセスできなくなります。
IPsec またはドメイン ポリシーにより、clusrun コマンドがネットワーク アドレス変換 (NAT) を介して通信できなくなります。
コンピューティング ノードにログオンし、クライアント コンピューター上の共有フォルダーにアクセスできない場合、clusrun コマンドを使用して実行したコマンドは、その共有フォルダーにアクセスできません。
ファイアウォール経由で共有フォルダーへのアクセスを許可するには、クライアント コンピューターでファイルとプリンターの共有機能のファイアウォール例外を作成します。
スペースを含むため引用符 (") で囲む必要があるパスまたはコマンドを指定する場合は、パスまたはコマンドに円記号 (\) も含まれている場合は注意してください。引用符の直前の円記号はエスケープ文字として機能するためです。 円記号がエスケープ文字として機能しないようにするには、2 つの円記号を使用します。 たとえば、"C:\Program Files\" の代わりに "C:\Program Files\\" を使用します。
例
クラスター内のすべてのノードの %USERPROFILE% ディレクトリの内容を一覧表示するには、次のコマンドを使用します。
clusrun /all dir
で始まる名前を持つすべてのノードで echo hello コマンドを実行するには
computenode1 を除き、次のコマンドを使用します。
clusrun /nodes:compute* /exclude:computenode1 echo hello
HPC ジョブ スケジューラ サービスがジョブ識別子 12 でジョブに割り当てたすべてのオンライン ノードで systeminfo コマンドを実行するには、次のコマンドを使用します。
命令:
clusrun /job:12 /nodestate:online systeminfo
その他の参照
ジョブの送信 の