Sun N1 Grid Engine 6.1 管理ガイド

別のホストへの qmaster の移行

スプーリングデータベースは NFS でマウントされたファイルシステムに配置できないため、次の手続きでは、Berkeley DB RPC サーバーをスプーリングに使用する必要があります。

スプーリングをローカルファイルシステムに対して構成する場合は、スプーリングデータベースを、新しい sge_qmaster ホスト上のローカルファイルシステムに転送する必要があります。

Procedureスクリプトを使用して別のホストに qmaster を移行する

  1. 新しいマスターホストに読み取り/書き込みアクセス権があることを確認します。

    新しいマスターホストには、現在のマスター同様、qmaster スプールディレクトリと common ディレクトリに対する読み取り/書き込みアクセス権が必要です。管理ユーザーがユーザー root (グローバルクラスタ構成で admin_user の設定を確認) の場合は、ユーザー root がそのユーザー名でこれらのディレクトリにファイルを作成できることを確認してください。

  2. 新しいマスターホストで移行スクリプトを実行します。

    新しいマスターホストで、ユーザー root として次のスクリプトを実行してください。


    # /etc/init.d/sgemaster -migrate

    このコマンドは、元のマスターホスト上で sge_qmaster および sge_schedd を停止し、新しいマスターホスト上でこれらのコマンドを起動します。$SGE_ROOT/$SGE_CELL/common/act_qmaster ファイルにあるマスターホスト名は、自動的に新しいマスターホストの名前に変更されます。qmaster が動作していない場合は、警告メッセージが表示され、1 分ほどして、新しいホスト上で qmaster が起動されます。

  3. 必要に応じて shadow_masters ファイルを変更します。

    $SGE_ROOT/$CELL/common/shadow_masters ファイルが存在するかどうかを確認します。ファイルが存在する場合は、必要に応じて新しい qmaster ホストをこのファイルに追加し、元のマスターホストを削除できます。それぞれのマシンで次のコマンドを発行して、sge_shadowd デーモンの実行を停止、再開します。


    /etc/init.d/sgemaster -shadowd stop
    /etc/init.d/sgemaster -shadowd start

    注 –

    システム全体の sgemaster 起動スクリプトがある場所は、使用されているオペレーティングシステムによって異なります。 $SGE_ROOT/default/common/sgemaster は常に使用できます。


移行に関する注意

移行手続きは、sgemaster -migrate コマンドが発行されたホストに移行します。primary_qmaster ファイルが存在する場合、そのマシンにある sgemaster への呼び出しがそのファイルに含まれていると、移行せずにそのマシンに戻ります。こうした状況を回避するには、$SGE_ROOT/$SGE_CELL/common/primary_qmaster ファイルを変更または削除してください。


注 –

primary_qmaster ファイルの存在は、qmaster が実際に動作していることを意味しません。


移行手続き中、ジョブは実行を継続するかもしれませんが、グリッドはアクティブでないはずです。移行時に、qsub または qstat などの実行中の SGE コマンドはエラーを返します。

現在の qmaster が停止すると、qmaster との交信待ちでタイムアウトするまで、スケジューラの停止に遅れが生じます。

shadow_masters ファイルによって、移行手続きが直接影響を受けることはありません。このファイルは、シャドウマスターが構成されていた場合にのみ存在します。シャドウマスターの構成方法の詳細は、「シャドウマスターホストの構成」を参照してください。

Procedure別のホストに手動で qmaster を移行する

  1. 現在のマスターホストで、次のコマンドを入力して、マスターデーモンとスケジューラデーモンを停止します。


    qconf -ks -km
  2. 次の手順に従い sge-root/cell/common/act_qmaster ファイルを編集します。

    1. 新しいマスターホストの名前を確認します。

      新しいマスターホストの名前を取得するには、そのマスターホストで次のコマンドを入力します。


      sge-root/utilbin/$ARCH/gethostname
    2. act_qmaster ファイルにある現在のホスト名を、gethostname ユーティリティーから返された新しいマスターホストの名前に置き換えます。

  3. 新しいマスターホストで、sge_qmaster sge_schedd を起動します。


    sge-root/cell/common/sge5