Ez-Grid

「夜間や休日もクラスタを有効活用したいが、実行するジョブが無い場合は自動的に計算ノードが停止し、実行するジョブが投入された都度、必要な台数のノードの電源を自動的に投入できないか?」

Ez-Gridグリッド自動運転システム(以下、Ez-Grid) は、PCクラスタを構成する各ノードの状態監視など基本的な運用管理システムのほか、上のような電源管理に関するご要求に応えるために開発されました。

Ez-Gridの機能

以下にEz-Gridが有する主な機能をあげます。

監視機能

  • 管理対象ノードの状態を監視
  • 電源状態、起動しているOS、CPUの利用状況、ジョブ実行状況など

電源管理機能

  • 管理対象ノードの電源ON/OFF機能
  • WOL(Wake On Lan)またはIPMI(Intelligent Platform Management Interface)による管理

OSブート機能

  • 管理対象ノードのブートOS選択機能(PXEブート)

スケジュール運転機能

  • 指定日時における対象ノードの電源ON/OFFおよびブートOSの選択

ジョブスケジューラ連携機能

  • ジョブスケジューラとの連携により、待ちキューの状態を監視
  • ジョブ実行のために必要な台数、必要なOSを自動起動
  • 利用されていないノードはシャットダウン(電源OFF)
  • CondorおよびPBS/Proをサポート

Ez-Gridは、上記機能を実現するため、3つのコンポーネントからなります。

  1. 利用者用Webポータル
  2. 統計、状態表示
  3. 自動運転管理
利用者用Webポータルでは、ジョブの投入や必要なファイルのアップロードなどをWebブラウザから行うためのポータル画面を提供します。の統計、状態表示機能では、稼働状態の表示やCPUやディスク使用状況などの表示機能のほか、システムログを表示する機能を有しています。自動運転管理機能では、曜日毎に電源ON/OFFの時間を設定したり、起動するOSを選択したり、停電などが予定されている場合の計画停止および復電後の自動起動(ただし必要に応じて)を行うことができます。

Webポータル

Webポータル機能では、ユーザ認証(ログイン動作)の後、ジョブの監視、削除や投入などの機能を提供します。

ログイン

ユーザIDとパスワードを投入することにより、ユーザを認証します。

ユーザID/パスワードは、ローカルのpasswdファイル(/etc/passwd)のほか、NISサーバまたはLDAPサーバと連携することができます。

ジョブ投入

Webインターフェースからジョブを投入できます。

ファイル管理画面

ジョブの投入に、ファイルが必要な場合があります。この画面ではファイルをアップロードし、ジョブ実行の準備を行います。

ジョブの監視、削除(キャンセル)

ジョブの状態を確認したり、削除(キャンセル)することができます。

状態監視・統計情報

ノード状態表示

現在のノードの稼働状態を表示します。

CPU使用率

各ノードのCPU使用率を一覧表示します。

ディスク使用率

各ノードのディスク使用率の一覧を表示します。

統計情報

上記情報を統計情報として、時系列に表示する機能を有しています。

自動運転管理

WOL(またはIPMI)、DHCPサーバ、TFTPサーバを組み合わせることで、計算ノードの起動を制御します。

※電源OFFについては、OS側のshutdown機能を利用します。Ez-Grid制御ノードからshutdownコマンド(Windowsの場合は、shutdown相当コマンド)を発行します。

以下に、電源ON時の動作シーケンスを示します。

  1. 当該計算ノードを利用するジョブが投入された場合や、電源ON設定時刻になるなど、電源ONを開始するイベントが発生します。
  2. Ez-Grid制御ノードでは、電源ONイベントを検知後、WOL(またはIPMI)を使って、電源投入信号を対象のノードに送信します。
  3. 電源投入信号を受けたノードでは、電源が投入されます。
  4. あらかじめ行った設定に従いネットワークブートを行います。
  5. DHCPにIPアドレスを問い合わせ、起動ファイル名を取得します。
  6. TFTPサーバから起動ファイルをダウンロードし、そのファイルをつかってブートします。
  7. 設定に従いLinuxまたはWindowsを起動します。

Ez-Gridでは、あらかじめ設定しておいたスケジュールに従った電源ON、電源OFFのほかに、ジョブスケジューラと連動した電源管理を実現しています。

  1. そのジョブを実行するためのノードが起動していて、かつ、他のジョブで利用されていなければ、ジョブはそのノードに投入されます。
  2. Ez-Grid制御ノードは定期的にジョブスケジューラのキューをチェックします。
  3. 新規にジョブが投入されたら、必要なノード(ノード数、OS等)を確認します。
  4. 必要な台数のノードに対して、前述のような「電源ON」が実行されます。
  5. 起動後、投入されたジョブが実行されます。
  6. ジョブ終了後、一定時間新たなジョブが投入されなければ、shutdownコマンドが投入され、自動的に電源OFF状態に移行します。