Sun Cluster Data Service for Sun Java System Application Server EE (HADB) ガイド (Solaris OS 版)

第 1 章 Sun Cluster HA for Sun Java System Application Server EE (HADB サポートバージョン 4.4)

この文書では、Sun Cluster HA for Sun Java System Application Server EE (HADB) と呼ばれるデータサービスのインストールおよび構成の手順について説明します。

この文書は 2 章からなります。

この章の内容は次のとおりです。

Sun Cluster HA for Sun Java System Application Server EE (HADB) の概要

この節では、Sun Cluster HA for Sun Java System Application Server EE (HADB) データサービスが、Sun Cluster システムにおいて Sun Java System Application Server EE (HADB) の Management Agent コンポーネントで高可用性をどのように実現しているかを説明します。 データサービスは、複数のノードによってマスターされるように構成する必要があります。

データサービスの一般的な情報については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の第 1 章「Sun Cluster データサービスの計画」を参照してください。データサービスを構成する必要があります。

Sun Java System Application Server EE (HADB) ソフトウェアは Sun Java System Application Server Enterprise Edition のインストールとともにパッケージ化されています。ただし、適切な場合、Sun Java System Application Server EE (HADB) と Sun Java System Application Server を独立したクラスタで実行することもできます。この文書では、クラスタで Sun Java System Application Server EE (HADB) を使用できるようにするデータサービスをインストールおよび構成する方法について説明します。まず、クラスタで Sun Java System Application Server EE (HADB) を有効にして、セッションと Enterprise Java Bean (EJB) の持続性を提供します。Sun Java System Application Server EE (HADB) の詳細については、Sun Java System Application Serverを参照してください。

Sun Cluster HA for Sun Java System Application Server EE (HADB) の実装では、データベースや Web サーバーなど、アーキテクチャーが依存するアプリケーションの存在は想定されていません。ただし、そのようなアプリケーションを高可用性に構成することは可能で、また別のクラスタで動作する場合があります。

HADB 管理アーキテクチャー

次の図に、管理ドメインに 4 つのアクティブなノードを装備したデータベースのアーキテクチャーを示します。

図 1–1 管理システムのアーキテクチャー

図 : この図については、前の本文中で説明しています。

この図は、1 つのデータベースと、データベース内の 4 つの HADB ノードプロセスから構成される管理ドメインを示しています。これらのノードプロセスは n0、n1、n2、および n3 によって示されています。ホスト A とホスト B はクラスタノードを表し、HADB の Data Redundancy Unit (DRU) を形成します (Host A: DRU0 および Host B: DRU1)。

管理エージェント MA1 は n0 と n2 を管理し、管理エージェント MA2 は n1 と n3 を管理します。管理エージェントには、ノードの状態を監視し、必要に応じてノードを再起動する役割があります。また管理エージェントは、クライアントからの管理操作要求にも対処します。

クラスタノード上で管理エージェントに障害が生じた場合、エージェントが引き続き HADB ノードを監視して管理操作を提供できるように、同じノード上でエージェントを再起動する必要があります。そのため、管理エージェントを高可用性にする必要があります。

高可用性 HADB 管理エージェント

一度に複数のノードによりマスターされるよう構成されたリソースグループでデータサービスリソースを作成することで、Sun Java System Application Server EE (HADB) の管理エージェントコンポーネントは高可用性になっています。このリソースグループでは、主ノードの最大数と、主ノードの望ましい数が同じである必要があります。この構成の詳細については、「Sun Cluster HA for Sun Java System Application Server EE (HADB) の登録と構成」を参照してください。

次の図は、ノード上で障害が発生する前の 2 ノード構成を示したものです。

図 1–2 複数のノードでマスターされる管理エージェント — 障害前

図 : この図については、前の本文中で説明しています。

この図は、MA1 と MA2 によって示される、異なるクラスタノード上の 2 つの管理エージェントを示しています。アプリケーションは各ノードのローカルファイルシステムにインストールされています。Sun Cluster HA for Sun Java System Application Server EE (HADB) データサービスでは、(RS により示される) 1 つのリソースで 2 つの管理エージェントが構成され、このリソースは 1 つのリソースグループ RG で構成されています。リソースグループは、一度に複数のクラスタノードでマスターされるように構成されています。この例では、Node1 と Node2 です。

データサービスは、管理エージェントが構成されているすべてのノード上での管理エージェントの起動を管理します。管理エージェントは Node Supervisor (NSUP) プロセスを起動し、続いてこのプロセスが HADB ノードプロセスを起動します。管理エージェントに障害が発生した場合、ユーザー定義のパラメータに基づいて、データサービスが管理エージェントを再起動します。HADB ノードプロセスに障害が発生した場合、管理エージェントが再起動します。データベースが停止した場合、ユーザーはコマンド行でコマンド発行することで、これらのデータベースを再起動する必要があります。

ユーザー定義のパラメータにより、障害後、データサービスは管理エージェントを再起動しないと決められている場合、そのプロセスはそのノード上でダウン状態のままになります。ただし、管理されているそのほかのノード上の管理エージェントプロセスは動作を継続します。フェイルオーバーは行われません。

次の図は、最初のノードの障害後の、2 ノード構成を示したものです。最初のノードのすべてのプロセスがダウンすると、2 番目のノードがプロセスの実行を継続します。

図 1–3 複数のノードでマスターされる管理エージェント — 障害後

図 : この図については、前の本文中で説明しています。

Sun Cluster HA for Sun Java System Application Server EE (HADB) のインストールおよび構成プロセスの概要

次の表は、Sun Cluster HA for Sun Java System Application Server EE (HADB) のインストールや構成に関する作業の要約と、それらの作業の実施に必要な詳しい説明がどこにあるかを示しています。これらの作業は、表に示す順序で行う必要があります。

表 1–1 Sun Cluster HA for Sun Java System Application Server EE (HADB) のインストールと構成に関する作業

タスク 

参照先 

Sun Cluster HA for Sun Java System Application Server EE (HADB) のインストールと構成の計画 

「Sun Cluster HA for Sun Java System Application Server EE (HADB) のインストールと構成の計画」

Sun Java System Application Server EE (HADB) ソフトウェアのインストールと構成 

「Sun Java System Application Server EE (HADB) ソフトウェアのインストールと構成」

Sun Java System Application Server EE (HADB) 管理ドメインの作成 

「Sun Java System Application Server EE (HADB) 管理ドメインの作成」

Sun Cluster HA for Sun Java System Application Server EE (HADB) パッケージのインストール 

「Sun Cluster HA for Sun Java System Application Server EE (HADB) パッケージのインストール」

一度に複数のノードでマスターされるデータベースとしての Sun Cluster HA for Sun Java System Application Server EE (HADB) の登録と構成 

「Sun Cluster HA for Sun Java System Application Server EE (HADB) の登録と構成」

Sun Cluster HA for Sun Java System Application Server EE (HADB) のインストールと構成の確認 

「Sun Cluster HA for Sun Java System Application Server EE (HADB) のインストールと構成の確認」

Sun Cluster HA for Sun Java System Application Server EE (HADB) の障害モニターの調整 

「Sun Cluster HA for Sun Java System Application Server EE (HADB) の障害モニターの調整」


注 –

Sun Cluster 構成で複数のデータサービスを実行している場合は、任意の順序でデータサービスを設定できます。ただし、Sun Cluster HA for Sun Java System Application Server EE (HADB) が Sun Cluster HA for DNS に依存している場合、まず DNS を設定する必要があります。詳細については、『Sun Cluster Data Service for DNS ガイド (Solaris OS 版)』を参照してください。DNS ソフトウェアは Solaris ソフトウェアに含まれています。クラスタが別のサーバーから DNS サービスを取得する場合は、最初に、クラスタが DNS クライアントになるように構成してください。


Sun Cluster HA for Sun Java System Application Server EE (HADB) のインストールと構成の計画

この節では、Sun Cluster HA for Sun Java System Application Server EE (HADB) のインストールと構成を計画するのに必要な情報について説明します。

構成の制限と要件

静的ファイルとデータは、各クラスタノードのローカルファイルシステム上に格納します。Sun Java System Application Server Enterprise Edition ソフトウェアをインストールした時点で、Sun Java System Application Server EE (HADB) ソフトウェアはインストールされます。手順については、『Sun Cluster Data Service for Sun Java System Application Server ガイド (Solaris OS 版)』を参照してください。データベースが作成されると、デフォルトで構成ファイルとデータファイルが各クラスタノードのローカルファイルシステム上に作成されます。詳細については、Sun Java System Application Server のマニュアルを参照してください。

Solaris 5.8 を使用している場合、次の手順を実行する必要があります。

  1. ファイル /etc/init.d/ma-initd を編集します。

  2. ファイルの先頭に次のエントリを追加します。

    _JAVA_OPTIONS="-Djava.net.preferIPv4Stack=true" 
    export _JAVA_OPTIONS
  3. ファイルを保存します。

構成計画の考慮事項

Sun Cluster HA for Sun Java System Application Server EE (HADB) のインストールと構成を計画するのに役立つ情報については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』「データサービスのインストールと構成に関する考慮事項」を参照してください。また、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の付録 C「データサービス構成のワークシートと記入例」にあるワークシートも参照してください。

HADB データサービスを別の高可用性アプリケーションと併用することを選択した場合、リソースの依存関係が存在する場合があります。Resource_dependencies プロパティーの説明については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の付録 A「標準プロパティ」を参照してください。

Sun Java System Application Server EE (HADB) ソフトウェアのインストールと構成

Sun Java System Application Server EE (HADB) ソフトウェアは Java 2 Enterprise Edition (J2EE™) 1.3 準拠のリレーショナルデータベースです。Sun Cluster HA for Sun Java System Application Server EE (HADB) データサービスは、エンタープライズカスタマーのニーズを満たし、Sun Cluster ソフトウェアの制御下で動作するよう設計されています。Sun Java System Application Server は、可用性と拡張性の高い、トランザクションのセッション状態が持続するインフラストラクチャーを提供します。Application Server は、HADB を使用してセッション情報を保存します。HADB 管理クライアントは、HADB のコマンド行インタフェースです。HADB の構成、実行時管理、監視を実行するために、ユーティリティーの包括的なセットを使用することができます。

これらのユーティリティーを使用する手順は、Sun Java System Application Server のマニュアル、hadbm のマニュアルページ、および asadmin コマンドのセッション持続マニュアルページに記載されています。HADB と Sun Java System Application Server のインストールおよび構成の詳細は、Sun Java System Application Server のマニュアルを参照してください。Sun Cluster HA for Sun Java System Application Server の構成の詳細は、『Sun Cluster Data Service for Sun Java System Application Server ガイド (Solaris OS 版)』を参照してください。

Sun Java System Application Server EE (HADB) 管理ドメインの作成

HADB 管理エージェントをデータサービスの制御下に配置する前に、Sun Java System Application Server EE (HADB) 管理ドメインを作成する必要があります。

ProcedureSun Java System Application Server EE (HADB) 管理ドメインの作成

次の手順の例を使用して、管理ドメインの作成、起動、および確認を行います。

詳細については、Sun Java System Application Server のマニュアルを参照してください。

手順
  1. 管理ドメインを作成します。

    createdomain オプションを指定して hadbm コマンドを使用します。このコマンドは自動的にドメインを起動します。

  2. ドメインが作成され、動作していることを確認します。

    listdomain オプションを指定して hadbm コマンドを使用します。

Sun Cluster HA for Sun Java System Application Server EE (HADB) パッケージのインストール

Sun Cluster の初回のインストールで Sun Cluster HA for Sun Java System Application Server EE (HADB) パッケージをインストールしなかった場合は、ここで説明する作業を行なってパッケージをインストールしてください。Sun Cluster HA for Sun Java System Application Server EE (HADB) パッケージをインストールする各クラスタノードでこの手順を実行します。

複数のデータサービスを同時にインストールする場合は、『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』「ソフトウェアのインストール」の手順を実行します。


注 –

Solaris 10 を使用している場合は、大域ゾーンのみでこれらのパッケージをインストールします。パッケージをインストールしたあとに作成されたローカルゾーンにこれらのパッケージが伝播されないようにするには、scinstall ユーティリティーを使用してこれらのパッケージをインストールします。Sun JavaTM Enterprise System インストーラプログラムは使用しないでください。


Procedurescinstall ユーティリティーを使用して Sun Cluster HA for Sun Java System Application Server EE (HADB) パッケージをインストールする

この手順は、Sun Cluster HA for Sun Java System Application Server EE (HADB) をマスターできるすべてのクラスタメンバーで実行してください。

始める前に

Sun Cluster Agents CD を用意します。

手順
  1. CD-ROM ドライブに Sun Cluster Agents CD をロードします。

  2. オプションは指定せずに、scinstall ユーティリティーを実行します。

    scinstall ユーティリティーが対話型モードで起動します。

  3. メニューオプション「新しいデータサービスのサポートをこのクラスタノードに追加」を選択します。

    scinstall ユーティリティーにより、ほかの情報を入力するためのプロンプトが表示されます。

  4. Sun Cluster Agents CD のパスを指定します。

    ユーティリティーはこの CD をデータサービス CD-ROM として示します。

  5. インストールするデータサービスを指定します。

    選択したデータサービスが scinstall ユーティリティーによって示され、選択を確定するように求められます。

  6. scinstall ユーティリティーを終了します。

  7. ドライブから CD を取り出します。

ProcedureSun JavaTM Enterprise System インストーラを使用して Sun Cluster HA for Sun Java System Application Server EE (HADB) パッケージをインストールする

Sun JavaTM Enterprise System インストーラプログラムは、コマンド行インタフェース (CLI) またはグラフィカルユーザーインタフェース (GUI) と共に使用できます。CLI と GUI での作業の内容と手順はほとんど同じです。

この手順を完了するには、Sun JavaTM Enterprise System インストーラ CD-ROM が必要です。

手順
  1. Sun Cluster HA for Sun Java System Application Server EE (HADB) パッケージをインストールするクラスタノード上でスーパーユーザーになります。

  2. (省略可能) GUI を使用して Sun JavaTM Enterprise System インストーラ プログラムを実行する場合は、DISPLAY 環境変数を設定しておく必要があります。

  3. Sun JavaTM Enterprise System インストーラ CD-ROM を CD-ROM ドライブにロードします。

    Volume Management デーモン vold(1M) が動作中で、CD-ROM デバイスを管理するよう構成されている場合、このデーモンは CD-ROM を /cdrom ディレクトリに自動的にマウントします。

  4. CD-ROM の Sun JavaTM Enterprise System インストーラディレクトリに移動します。


    # cd /cdrom/Solaris_sparc
    
  5. Sun JavaTM Enterprise System インストーラプログラムを開始します。


    # ./installer
    
  6. プロンプトが表示されたなら、ライセンス契約に同意し、必要な言語サポートを選択します。

    デフォルトの言語サポートは英語です。

  7. 「Availability Services & Sun Cluster 3.1 Subcomponents」で Sun Java System for Sun Cluster Agents を選択し、次に進みます。

    この選択では、Sun Cluster HA for Sun Java System Application Server EE (HADB) も含め、Sun Java System アプリケーションで使用できる Sun Cluster データサービスをすべて選びます。

  8. 構成の時間を入力するプロンプトが表示されたら、「後で設定」を選択します。

    インストール後に構成を行うために「後で設定」を指定します。

  9. (任意) 製品を登録して製品アップデートを受け取らない場合は、「インストール中に登録ウィンドウを開きます」ボックスのチェックを外します。

  10. 画面上の指示に従って、ノードに Sun Cluster HA for Sun Java System Application Server EE (HADB) パッケージをインストールします。

    Sun JavaTM Enterprise System インストーラプログラムは、インストールの状況を表示します。インストールが完了すると、プログラムはインストールのサマリーとインストールログを表示します。

  11. Sun JavaTM Enterprise System インストーラプログラムを終了します。

    インストーラプログラムを終了する前に、Sun Cluster HA for Sun Java System Application Server EE (HADB) が正しくインストールされていることを確認します。次のコマンドを実行して、パッケージの存在をチェックします。


    # pkginfo -l SUNWschadb
    
  12. Sun JavaTM Enterprise System インストーラ CD-ROM を CD-ROM ドライブからアンロードします。

    1. CD-ROM が使用されていないことを確認し、CD-ROM 上にないディレクトリに移動します。

    2. CD-ROM を取り出します。


      # eject cdrom
      

Sun Cluster HA for Sun Java System Application Server EE (HADB) の登録と構成

この手順では、scrgadm コマンドを使用して、一度に複数のノードでマスターされるリソースとして Sun Cluster HA for Sun Java System Application Server EE (HADB) を登録および構成する方法について説明します。


注 –

データサービスを登録および構成できるようにする追加オプションの詳細については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』「データサービスリソースを管理するためのツール」を参照してください。


この手順を実行するには、構成に関する次の情報が必要になります。

Sun Cluster HA for Sun Java System Application Server EE (HADB) の拡張プロパティーの設定

以下の各項では Sun Cluster HA for Sun Java System Application Server EE (HADB) リソースの登録と構成について説明します。拡張プロパティーの詳細については、付録 A 「Sun Cluster HA for Sun Java System Application Server EE (HADB サポートバージョン 4.4) のプロパティー」を参照してください。「調整可能」の欄には、そのプロパティーをいつ変更できるかが示されています。

Sun Cluster のすべてのプロパティーの詳細については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の付録 A「標準プロパティ」を参照してください。

リソースの拡張プロパティーを設定するには、リソースを作成または変更する scrgadm(1M) コマンドに次のオプションを含めます。


-x property=value 
-x property

設定する拡張プロパティーを指定します。

value

設定する拡張プロパティーの値を指定します。

『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の第 2 章「データサービスリソースの管理」の手順を使用して、リソースが作成されたあとにリソースを構成することもできます。

ProcedureSun Cluster HA for Sun Java System Application Server EE (HADB) を登録および構成する

構成を完了するには次の手順を実行します。

手順
  1. クラスタメンバー上でスーパーユーザーになります。

  2. Sun Java System Application Server EE (HADB) のリソースタイプを登録します。


    # scrgadm -a -t SUNW.hadb_ma
    
  3. Sun Java System Application Server EE (HADB) ソフトウェアのリソースグループを作成します。

    このリソースグループは、一度に複数のノードでマスターされるよう構成されます。


    # scrgadm -a -g resource_group \
    -y Maximum_primaries=nodes_in_rg \
    -y Desired_primaries=nodes_in_rg \
    -h nodelist
    
    -a

    作成するリソースグループを指定します。

    -g resource_group

    作成するリソースグループの名前を指定します。

    -y Maximum_primaries=nodes_in_rg

    リソースを起動できる最大ノード数を指定します。Desired_primaries プロパティーの値と同じ数を指定する必要があります。

    -y Desired_primaries=nodes_in_rg

    リソースを起動する希望ノード数を指定します。Maximum_primaries プロパティーの値と同じ数を指定する必要があります。

    -h nodelist

    Sun Java System Application Server EE (HADB) ソフトウェアを実行するクラスタノードのコンマ区切りサブセットを指定します。このオプションを省略すると、すべてのクラスタノードが Sun Java System Application Server EE (HADB) を実行します。ノードリスト名を検索するには、scconf -p | less コマンドを使用します。

  4. Sun Java System Application Server EE (HADB) のリソースを作成します。

    このリソースタイプの拡張プロパティーの詳細については、付録 A 「Sun Cluster HA for Sun Java System Application Server EE (HADB サポートバージョン 4.4) のプロパティー」を参照してください。


    # scrgadm -a -j resource -g resource_group  -t SUNW.hadb_ma \
    -x HADBM_PASSWORDFILE=path_to_pw_file
    
    -a

    データサービスリソースを作成することを指定します。

    -j resource

    作成するリソースの名前を指定します。

    -g resource_group

    リソースを追加するリソースグループの名前を指定します。

    -t SUNW.hadb_ma

    事前に定義したリソースタイプ名を指定します。

    -x HADBM_PASSWORDFILE=path_to_pw_file

    HADBM の管理パスワードを含むファイルへの完全パスを指定します。

    パスワードファイルの内容の詳細については、Sun Java System Application Server のマニュアルを参照してください。

  5. リソースグループをオンラインにします。


    # scswitch -Z -g resource_group
    
    -Z

    リソースとそのモニターを有効にします。

    -g resource_group

    オンラインにするリソースグループ名を指定します。

  6. リソースグループと HADB リソースがオンラインであることを確認します。


    # scstat -g
    # ps -ef
    
  7. Sun Cluster HA for HADB を正しくインストールして構成できたことを確認するために、次のコマンドを実行します。


    # hadbm status database_name --nodes
    

    指定したデータベースを実行中であることが出力されるはずです。


例 1–1 SUNW.hadb_ma リソースの作成

この例では、SUNW.hadb_ma リソースの作成を示します。

この例では、拡張プロパティーのデフォルト値が使用されています。リソースには次のような特徴があります。


scrgadm -a -j hadb-rs -g hadb-rg -t SUNW.hadb_ma \
-x HADBM_PASSWORDFILE=/global/disk1/hadbm-pwfile

Sun Cluster HA for Sun Java System Application Server EE (HADB) のインストールと構成の確認

ここでは、データサービスが正しくインストールされて構成されているかどうかを確認する手順について説明します。

ProcedureSun Cluster HA for Sun Java System Application Server EE (HADB) のインストールと構成を確認する

手順
  1. Sun Java System Application Server EE (HADB) ソフトウェアが Sun Cluster ソフトウェアの制御下で起動されていることを確認します。


    # scswitch -Z -g resource_group
    
  2. リソースグループと Sun Java System Application Server EE (HADB) リソースがオンラインであることを確認します。


    # scstat -g
    # ps -ef
    
  3. Sun Cluster HA for Sun Java System Application Server EE (HADB) が正しくインストールおよび構成されていることを確認します。


    # hadbm status database_name --nodes
    

    指定したデータベースを実行中であることが出力されるはずです。

Sun Cluster HA for Sun Java System Application Server EE (HADB) の障害モニターの調整

Sun Cluster HA for Sun Java System Application Server EE (HADB) の障害モニターは、Sun Java System Application Server EE (HADB) を表すリソースに含まれています。Sun Cluster HA for Sun Java System Application Server EE (HADB) の登録および構成時に、このリソースを作成できます。詳細については、「Sun Cluster HA for Sun Java System Application Server EE (HADB) の登録と構成」を参照してください。

このリソースのシステムプロパティーと拡張プロパティーが、障害モニターの動作を制御します。事前に設定された障害モニターの動作は、これらのプロパティーのデフォルト値に基づいています。現在の動作は、ほとんどの Sun Cluster システムに適しているはずです。したがって、障害モニターを調整するのは、事前に設定されたこの動作を変更する必要がある場合だけに留めるべきです。

詳細については、次の節を参照してください。