Sun Enterprise 10000 SSP 3.5 ユーザーマニュアル

コマンド同期の実行

コマンド同期は、フェイルオーバーによって中断されたユーザー定義コマンドを回復し、フェイルオーバーの後に新しいメイン SSP 上でこれらのコマンドを再実行します。コマンド同期の処理は、以下のとおりです。

フェイルオーバーの後にユーザーコマンドを自動回復したい場合は、以下の節で説明するように、同期のためにこれらのコマンドを準備する必要があります。

自動再起動のためのユーザーコマンドの準備

runcmdsync(1M) コマンドは、自動再起動のためにユーザーコマンドを準備します。runcmdsync は、ユーザーコマンドをコマンド同期リストに追加します。このリストによって、フェイルオーバーの後に再実行するコマンドを特定します。

再起動のためにユーザーコマンドを準備する
  1. ユーザー名 ssp でメイン SSP にログインし、以下のように入力します。


    ssp% runcmdsync script_name [parameters] 
    

    ここで、script_name は再起動するユーザーコマンドの名前で、parameters は指定のコマンドに関連するオプションです。指定のコマンドは、フェイルオーバーの後に新しいメイン SSP 上で自動的に再実行されます。

自動回復のためのユーザースクリプトの準備

スクリプト内の指定した任意のポイント (位置) からユーザースクリプト処理を再開する場合は、以下の同期コマンドをユーザースクリプトに入れる必要があります。

同期のためにスクリプトを初期化してコマンド同期リストからコマンドを削除するには、各スクリプトに initcmdsynccancelcmdsync コマンドを入れる必要があります。同期コマンドの詳細は、cmdsync(1M) マニュアルページを参照してください。


注 -

これは、経験豊富なプログラマ向けの同期コマンドです。回復のためにスクリプトを準備するには、この節で説明した同期コマンドの代わりに runcmdsync(1M) コマンドを使用することができます。ただし、runcmdsync(1M) コマンドは指定のマーカーポイントからではなく最初から再実行するようにスクリプトを準備します。


以下の手順は、これらの同期コマンドの使用方法です。


注 -

SSP フェイルオーバーの後やシングル SSP 構成では、SSP フェイルオーバーは使用不可です。フェイルオーバーが使用不可である場合は、同期コマンドを含むスクリプトによって、プラットフォームログファイルに対するエラーメッセージが生成され、ゼロ以外の終了コードが返されます。これらのエラーメッセージは、無視することもできます。


コマンド同期記述子を作成する
  1. ユーザースクリプトに以下のように入力し、スクリプトを識別するコマンド同期記述子を作成します。


    initcmdsync script_name [parameters]

    ここで、script_name はスクリプト名で、parameters は指定スクリプトに関連するオプションです。initcmdsync コマンドから返される出力は、コマンド同期記述子として機能します。

コマンド同期マーカーポイントを指定する
  1. ユーザースクリプトに以下のように入力し、処理を再開できる実行ポイントを指定します。


    savecmdsync -M identifier cmdsync_descriptor 
    

    ここで、identifier はスクリプトを再起動できる実行ポイントを指定する正の整数で、cmdsync_descriptorinitcmdsync コマンドによって出力されるコマンド同期記述子です。

コマンド同期記述子を削除する
  1. ユーザースクリプトの最後のシーケンスの後に、以下のように入力します。


    cancelcmdsync cmdsync_descriptor
    

    ここで、cmdsync_descriptorinitcmdsync コマンドによって出力されるコマンド同期記述子です。指定の記述子がコマンド同期リストから削除され、フェイルオーバーの後に新しいメイン SSP 上でユーザースクリプトが実行されないようになります。

コマンド同期情報の取得

メイン SSP 上で showcmdsync(1M) コマンドを使用して、自動フェイルオーバーの後に新しいメイン SSP 上で再起動されるユーザーコマンドを特定するコマンド同期リストを見直します。

showcmdsync (1M) コマンドによって出力されるコマンド同期リストの例を次に示します。


ssp% showcmdsync 
DESCRIPTOR      IDENTIFIER   CMD
         0              -1   c1 c2 a2

詳細は、showcmdsync(1M) マニュアルページを参照してください。

同期コマンドによるサンプルスクリプト

SSP では、同期コマンドの使用方法を示すユーザースクリプトのサンプルが添付されています。このスクリプトは、/opt/SUNWssp/examples/cmdsync ディレクトリにあります。このディレクトリには、このスクリプトの機能を説明する README ファイルも含まれています。