コンテンツにスキップ

並行バッチ実行

複数のサーバーに同じコマンドを送信する必要がある場合(時刻同期の確認やシステムバージョンの確認など)、Multi-Exec を使用することで繰り返し作業を大幅に削減できます。

対象サーバーを選択し Multi-Exec を起動するには、以下の 2 つの方法があります:

  1. 接続済みのアクティブタブ:ターミナルパネル(ノーマルモード)にいるとき、2つ以上のアクティブなタブ (Tabs) があることを条件として、x キーを押すと、現在実行中の複数のタブをターゲットとしてバッチ実行を開始できます。
  2. 接続リストから直接開始:接続リスト画面にて、直接 x キーを押すことでもバッチ実行を開始できます。(注意:接続リストでの V キーによる複数選択モードは、主に一括削除などの管理操作に使用されるため、バッチ実行と混同しないようご注意ください)。PhanTerm がバックグラウンドで安全な一時接続を確立し、タスクを実行しますのでご安心ください。

Multi-Exec は、安全性を考慮した 3 段階のオーバーレイパネル設計を採用しています:

  1. コマンド入力フェーズ:ここで実行したい Bash コマンドを入力します(Ctrl+S を押して Snippet ライブラリを呼び出し、すばやく入力することも可能です)。
  2. 実行とキャンセルのフェーズ:Enter キーを押すと、コマンドが高並行モードですべての対象サーバーに送信されます。この時点でコマンドの誤りに気づいた場合は、直ちに Esc キーを押して送信を中止できます。すでに返された部分的な結果はシステムによって安全に保持されます。
  3. 結果集約フェーズ:実行完了後、すべてのサーバーの stdout/stderr が分割して表示され、j/k キーですばやく切り替えることができます。

結果表示フェーズで、すべてのマシンの返却内容が一致しているか確認したい場合は、d キーを押して Diff モードをオンにすることができます。 このモードでは:

  • すべての「一致する行」(すべてのマシンの出力で完全に同じ行)は暗く表示されます。
  • 一部のマシンで異なる行、または特定のマシンにのみ表示される行は、ハイライトされて色が変わるとともに、警告として ! プレフィックスが付きます。

これにより、数十台のサーバーから返される膨大な出力の中から、異常な設定や更新されていないノードを一目で特定することが可能になります。