Sun Cluster データサービス開発ガイド (Solaris OS 版)

Agent Builder を使って、GDS を使用するサービスを作成

Agent Builder を使って、GDS を使用するサービスを作成できます。Agent Builder の詳細については、第 9 章「Sun Cluster Agent Builder」を参照してください。

GDS ベースのスクリプトの作成と構成

ProcedureAgent Builder を起動し、スクリプトを作成する

  1. スーパーユーザーになるか、RBAC 承認 solaris.cluster.modify を提供する役割になります。

  2. Agent Builder を起動します。


    # /usr/cluster/bin/scdsbuilder
    
  3. 「Agent Builder Create」画面が表示されます。

    「Sun Cluster Agent Builder」ダイアログ - 「Agent Builder Create」メイン画面
  4. ベンダー名を入力します。

  5. アプリケーション名を入力します。


    注 –

    Solaris 9 OS 以降では、ベンダー名とアプリケーション名の両方を合わせて 10 文字以上を指定できます。この組み合わせは、スクリプトのパッケージ名として使用されます。


  6. 作業ディレクトリに移動します。

    パスを入力する代わりに、「ブラウズ」ドロップダウンメニューを使ってディレクトリを選択することもできます。

  7. データサービスがスケーラブルなのかフェイルオーバーなのかを選択します。

    GDS を作成するときには「ネットワーク認識」がデフォルトですので、これを選択する必要はありません。

  8. 「GDS」を選択します。

  9. (省略可能) 表示されているデフォルト値から RT バージョンを変更します。


    注 –

    「RT バージョン」フィールドで次の文字を使用することはできません。空白文字、タブ、スラッシュ (/)、バックスラッシュ (\)、アスタリスク ( *)、疑問符 (?)、コンマ (,)、セミコロン (;)、左角括弧 ([)、右角括弧 (])。


  10. 「作成」をクリックしてください。

    Agent Builder により、スクリプトが作成されます。結果が「出力ログ」領域に表示されます。

    情報を入力した後の作成画面を示すダイアログボックス

    「作成」ボタンがグレー表示されていることに注意してください。これで、スクリプトの構成を始めることができます。

  11. 「進む」をクリックする。

    「構成」画面が表示されます。

    構成画面

Procedureスクリプトを構成する方法

スクリプトの作成が終わったら、新しいサービスを構成する必要があります。

  1. 起動コマンドの場所を入力するか、「ブラウズ」をクリックして起動コマンドの場所を指定します。

    プロパティー変数を指定できます。プロパティー変数については、「プロパティー変数の使用」を参照してください。

  2. (省略可能) 停止コマンドの場所を入力するか、「ブラウズ」をクリックして停止コマンドの場所を指定します。

    プロパティー変数を指定できます。プロパティー変数については、「プロパティー変数の使用」を参照してください。

  3. (省略可能) 確認コマンドの場所を入力するか、「ブラウズ」をクリックして確認コマンドの場所を指定します。

    プロパティー変数を指定できます。プロパティー変数については、「プロパティー変数の使用」を参照してください。

  4. (省略可能) 検証コマンドの場所を入力するか、「ブラウズ」をクリックして検証コマンドの場所を指定します。

    プロパティー変数を指定できます。プロパティー変数については、「プロパティー変数の使用」を参照してください。

  5. (省略可能) 起動、停止、確認、検証コマンドの新しいタイムアウト値を指定します。

  6. 「構成」をクリックします。

    Agent Builder によりスクリプトが構成されます。


    注 –

    Agent Builder は、ベンダー名とアプリケーション名を連結してパッケージ名を作成します。


    スクリプトのパッケージが作成され、次のディレクトリに置かれます。

    working-dir/vendor-name-application/pkg
    

    たとえば、/export/wdir/NETapp/pkg のようになります。

  7. クラスタの各ノード上で、スーパーユーザーになるか、RBAC 承認 solaris.cluster.modify を提供する役割になります。

  8. クラスタの各ノード上で、完成したパッケージをインストールします。


    # cd /export/wdir/NETapp/pkg
    # pkgadd -d . NETapp
    

    pkgadd によって以下のファイルがインストールされます。

    /opt/NETapp
    /opt/NETapp/README.app
    /opt/NETapp/man
    /opt/NETapp/man/man1m
    /opt/NETapp/man/man1m/removeapp.1m
    /opt/NETapp/man/man1m/startapp.1m
    /opt/NETapp/man/man1m/stopapp.1m
    /opt/NETapp/man/man1m/app_config.1m
    /opt/NETapp/util
    /opt/NETapp/util/removeapp
    /opt/NETapp/util/startapp
    /opt/NETapp/util/stopapp
    /opt/NETapp/util/app_config

    注 –

    マニュアルページとスクリプト名は、以前に「Create」画面で入力したアプリケーション名の前にスクリプト名を付けたものに対応します (たとえば、startapp のようになります)。


  9. クラスタのいずれかのノードでリソースを構成し、アプリケーションを起動します。


    # /opt/NETapp/util/startapp -h logicalhostname -p port-and-protocol-list
    

    startapp スクリプトの引数は、リソースのタイプがフェイルオーバーかスケーラブルかで異なります。


    注 –

    入力する必要があるコマンド行を判別するには、カスタマイズしたマニュアルページを検査するか、startapp スクリプトを引数なしで実行して使用法の説明文を表示してください。

    マニュアルページを表示するには、マニュアルページへのパスを指定する必要があります。たとえば、startapp(1M) のマニュアルページを表示する場合は、次のように入力します。


    # man -M /opt/NETapp/man startapp
    

    使用法の説明文を表示するには、次のように入力します。


    # /opt/NETapp/util/startapp
     The resource name of LogicalHostname or SharedAddress must be
     specified. For failover services:
     Usage: startapp -h logicalhostname
              -p port-and-protocol-list
              [-n ipmpgroup-adapter-list]
     For scalable services:
     Usage: startapp -h shared-address-name
              -p port-and-protocol-list
              [-l load-balancing-policy]
              [-n ipmpgroup/adapter-list]
              [-w load-balancing-weights]

Agent Builder からの出力

Agent Builder は 3 つのスクリプトと、パッケージ作成時の入力に基づく構成ファイルを生成します。構成ファイルには、リソースグループとリソースタイプの名前が指定されます。

4 つのスクリプトは次のとおりです。

これらのスクリプトのインタフェースや動作は、Agent Builder によって非 GDS ベースのデータサービス用に生成されるユーティリティースクリプトのものと同じです。これらのスクリプトは、複数のクラスタで再利用できる Solaris パッケージに含まれています。

構成ファイルをカスタマイズすれば、(通常は scrgadm および scswitch コマンドへの引数として指定される) リソースグループやそのほかの引数の独自の名前を指定できます。スクリプトをカスタマイズしないと、Agent Builder がこれらの引数に対しデフォルト値を設定します。