| Sun ONE Application Server 7, Enterprise Edition システム配備ガイド |
第 3 章
トポロジの選択第 2 章「環境の計画」の説明に従い、必要となるパフォーマンスの要素に関して見積もりを完了すると、次に、SunTM Open Net Environment (Sun ONE) Application Server 7, Enterprise Edition の実装に使用するトポロジを決定することが必要になります。
トポロジとは、Sun ONE Application Server コンポーネント (マシン、アプリケーションサーバーインスタンス、および HADB ノード) と、これらのコンポーネントの通信フローのおおまかな配置のことです。
この章では、次の 2 つの推奨トポロジについて解説します。
これらのトポロジは、クラスタを構成する複数のアプリケーションサーバーインスタンス、HADB ノードのミラー化セット、HADB スペアノードという共通の構成要素から成ります。正常に機能させるための設定も共通しています。
この章には次の項目があります。
共通の要件両方のトポロジに共通の要件については、この章の次のトピックで説明します。
一般要件
- HADB ノードをホストするマシンは、ペアで準備する必要があります。
- すべての DRU に同じマシン番号を割り当てる必要があります。作成する HADB データベースのミラー化 (ペア) ノードは、主ノードではなく別の DRU に配置する必要があります。
- HADB ノードをホストする各マシンに、HADB 内のすべての持続性データを格納するローカルディスク記憶装置を準備する必要があります。
- HADB ノードをホストするマシンは、同じオペレーティングシステムを実行している必要があります。これらのマシンの設定とパフォーマンスはできる限り統一してください。
- セッション情報を持続性データとして HADB に格納するため、アプリケーションサーバーインスタンスをクラスタ内に配置し、すべての関連要件をクリアする必要があります。クラスタの詳しい使用方法については、『Sun ONE Application Server 管理者ガイド』を参照してください。
- アプリケーションサーバーインスタンスをホストするマシンの設定とパフォーマンスはできる限り統一してください。これは、ロードバランスプラグインが、ラウンドロビンポリシーに従ってロードバランス処理を行うからです。インスタンスのホストマシンのレベルに差があると、ロードバランス処理が最適化されません。
- 可能であれば、各 DRU に固有の無停電電源装置 (UPS) を設置してください。
HADB ノードとマシン
ある DRU が無効な状態になった場合でも、各 DRU にはデータの完全なコピー一式が含まれていることから、リクエストに対するサービスは、縮退モード (つまり、耐障害モードではないモード) での継続が可能です。ただし、ある DRU に含まれているノードと別な DRU に含まれているそのノードのミラーで同時に問題が発生した場合、いくつかのデータが失われます。このため、システムをセットアップするときは、電源障害、ディスク障害などの単一の障害で両方の DRU がダメージを受けないような設定にする必要があります。
容量とスループットを増やすには、各 DRU のノードにペアノードを追加します。
設定した各マシンが N 個のデータノードを実行すると想定します。この場合、1 台のマシンに障害が発生すると、N 個のノードが停止します。このため、各 DRU に N 個のスペアノードを持たせることをお勧めします。
また、すべてのマシンで同じ数の HADB ノードを実行して、可能なかぎりロードバランスを統一することをお勧めします。
ロードバランス設定
どちらのトポロジでも、クラスタ内にアプリケーションサーバーインスタンスを組み込みます。これらのインスタンスの持続性セッション情報は HADB に格納されます。ロードバランサを設定して、クラスタ内のすべてのアプリケーションサーバーインスタンスの設定情報が格納されるようにする必要があります。
クラスタのセットアップとアプリケーションサーバーインスタンスの追加方法については、『Sun ONE Application Server 管理者ガイド』を参照してください。
co-located トポロジco-located トポロジでは、アプリケーションサーバーインスタンスと HADB ノードが同一マシンに配置されます。これが、このトポロジの名前の由来です。
このトポロジでは、後で説明する separate tier トポロジほど多くのマシンは必要ありません。co-located トポロジでは、CPU がより効率よく使用されます。アプリケーションサーバーインスタンスと HADB ノードが 1 台のマシンを共有するため、これらの間で均等に分散処理が行われます。
このトポロジに必要な最小マシン数は 2 台です。スループットを向上させたい場合は、より多くのマシンをペアで追加できます。
参考用 co-located トポロジ
次の図に、参考用 co-located トポロジを示します。
図 3-1 参考例 co-located トポロジ
アプリケーションサーバーインスタンス A はマシン SYS0、アプリケーションサーバーインスタンス B はマシン SYS1、アプリケーションサーバーインスタンス C はマシン SYS2、アプリケーションサーバーインスタンス D はマシン SYS3 上にあります。
これらの 4 つのインスタンスによって、DRU 0 と DRU1 の 2 つの HADB 冗長データユニットに持続性データを格納するクラスタが構成されます。
DRU0 は、SYS0 と SYS2 の 2 台のマシンで構成されます。HADB ノード active 0 はマシン SYS0 上にあります。HADB ノード spare 2 はマシン SYS2 上にあります。
DRU1 は、SYS1 と SYS3 の 2 台のマシンで構成されます。HADB ノード active 1 はマシン SYS1 上にあります。HADB ノード spare 3 はマシン SYS3 上にあります。
注
本書の参考用トポロジでは、マシンのホスト名とトポロジ内で説明されているマシン名を一致させています。たとえば、参考用 co-located トポロジの場合、ホスト名は SYS0、SYS1、SYS2、および SYS3 です。この設定は、両方のトポロジ (とそのバリエーション) に適用されます。
参考用 co-located トポロジの設定
クラスタの設定には、clsetup コマンドを使用します。clsetup コマンドは、クラスタ設定の一環として、HADB データベースを作成し、HADB 用の JDBC 接続プールと JDBC リソースを設定します。clsetup コマンドについては、『Sun ONE Application Server インストールガイド』を参照してください。
clsetup コマンドでは、次の入力ファイルが使用されます。
これらの入力ファイルに以下の節で説明する変更を加えた後、clsetup コマンドを実行してください。
clresource.conf ファイルの変更
本書で紹介するトポロジの設定では、clresource.conf ファイルの次のプロパティを変更する必要があります。
この参考用 co-located トポロジの clresource.conf ファイルには、次の表のような変更を加える必要があります。表の左の欄にはファイル内の変更対象のプロパティのセクション、中央の欄にはプロパティ名、右の欄にはプロパティ値を一覧します。
clinstance.conf ファイルの変更
clinstance.conf ファイルには、各インスタンスの情報が記載されています。詳細については、『Sun ONE Application Server インストールガイド』を参照してください。この内容は、両方のトポロジ (とそのバリエーション) に適用します。
参考用 co-located トポロジのバリエーション
スケーラビリティとスループットを向上させたい場合は、マシンを追加して、アプリケーションサーバーインスタンスと HADB ノードの数を増やします。
たとえば、それぞれアプリケーションサーバーインスタンス 1 個、HADB ノード 1 個を持つ 2 台のマシンを追加することができます。HADB ノードは必ずペアで追加してください。つまり、各 DRU に 1 個のノードを割り当てます。この設定については、次の図を参照してください。
図 3-2 参考用 co-located トポロジのバリエーション
この例では、「参考用 co-located トポロジ」で紹介した参考用 co-located トポロジに、マシン SYS4 と SYS5 を追加しています。
アプリケーションサーバーインスタンス A はマシン SYS0、アプリケーションサーバーインスタンス B はマシン SYS1、アプリケーションサーバーインスタンス C はマシン SYS2、アプリケーションサーバーインスタンス D はマシン SYS3、アプリケーションサーバーインスタンス E はマシン SYS4、アプリケーションサーバーインスタンス F はマシン SYS5 でそれぞれホストされます。
これらのインスタンスによって、DRU 0 と DRU1 の 2 つの HADB 冗長データユニットに持続性データを格納するクラスタが構成されます。
冗長データユニット DRU0 は、マシン SYS0、SYS2、および SYS4 で構成されます。HADB ノード active 0 はマシン SYS0 上にあります。HADB ノード active 2 はマシン SYS2 上にあります。HADB ノード spare 4 はマシン SYS4 上にあります。
冗長データユニット DRU1 は、マシン SYS1、SYS3、および SYS5 で構成されます。HADB ノード active 1 はマシン SYS1 上にあります。HADB ノード active 3 はマシン SYS3 上にあります。HADB ノード spare 5 はマシン SYS5 上にあります。
参考用 co-located トポロジのバリエーションの設定
以下の節で説明する変更を加えた後、clsetup コマンドを実行してください。
clresource.conf ファイルの変更
この節で紹介した参考用 co-located トポロジのバリエーションの clresource.conf ファイルには、次の表のような変更を加える必要があります。表の左の欄にはファイル内の変更対象のプロパティのセクション、中央の欄にはプロパティ名、右の欄にはプロパティ値を一覧します。これらのプロパティの値の詳細については、「clresource.conf ファイルの変更」を参照してください。
clinstance.conf ファイルの変更
clinstance.conf ファイルには、各インスタンスの情報が記載されています。詳細については、『Sun ONE Application Server インストールガイド』を参照してください。
separate tier トポロジこのトポロジでは、アプリケーションサーバーインスタンスと HADB ノードが別々のマシンに配置されます。これが、このトポロジの名前の由来です。
このトポロジでは、co-located トポロジよりも多くのハードウェアが必要です。このトポロジは、さまざまなタイプのマシンがある環境に適しています。アプリケーションサーバーインスタンス層と HADB ノード層に、異なったマシンを割り当てることができます。たとえば、アプリケーションサーバーインスタンス層には高機能のマシン、HADB 層には少し機能の劣るマシンを割り当てることができます。
参考用設定
次の図に、参考用 separate tier トポロジを示します。
図 3-3 参考用 separate tier トポロジ
この参考用トポロジでは、アプリケーションサーバーインスタンス A はマシン SYS0、アプリケーションサーバーインスタンス B はマシン SYS1 でホストされます。
これらのインスタンスによって、DRU 0 と DRU1 の 2 つの冗長データユニットに持続性セッション情報を格納するクラスタが構成されます。
冗長データユニット DRU0 は、マシン SYS2、および SYS4 で構成されます。HADB ノード active 0 はマシン SYS2、HADB ノード spare 2 はマシン SYS4 上にあります。
冗長データユニット DRU1 は、マシン SYS3、および SYS5 で構成されます。HADB ノード active 1 はマシン SYS3、HADB ノード spare 3 はマシン SYS5 上にあります。
DRU 上のすべてのノードは別々のマシンに配置されています。このため、1 台のマシンが使用不能状態になっても、その他のマシンは、いずれかの DRU に格納されている完全なデータを引き続き使用できます。
参考用 separate tier トポロジの設定
これらの入力ファイルに以下の節で説明する変更を加えた後、clsetup コマンドを実行してください。
clresource.conf ファイルの変更
この参考用 separate tier トポロジの clresource.conf ファイルには、次の表のような変更を加える必要があります。表の左の欄にはファイル内の変更対象のプロパティのセクション、中央の欄にはプロパティ名、右の欄にはプロパティ値を一覧します。これらのプロパティの値の詳細については、「clresource.conf ファイルの変更」を参照してください。
clinstance.conf ファイルの変更
clinstance.conf ファイルには、各インスタンスの情報が記載されています。詳細については、『Sun ONE Application Server インストールガイド』を参照してください。
参考用 separate tier トポロジのバリエーション
アプリケーションサーバーインスタンスの数を増やしたい場合は、現在の設定に、より多くのマシンを水平に追加します。たとえば、新しいアプリケーションサーバーインスタンスを作成して、参考用設定に別のマシンを追加することができます。同様に、ホスト HADB ノードにマシンを追加することで、HADB ノードの数を増やすことができます。HADB ノードは必ずペアで追加してください。つまり、各 DRU に 1 個のノードを割り当てます。
この設定については、次の図を参照してください。
図 3-4 参考用 separate tier トポロジのバリエーション
この設定では、各ホストマシンにアプリケーションサーバーインスタンスが 2 個ずつ割り当てられています。つまり、クラスタ内には合計 6 個のアプリケーションサーバーインスタンスが存在します。
HADB ノードは、マシン SYS3、SYS4、SYS5、SYS6 上にあります。
冗長データユニット DRU0 は、マシン SYS3、および SYS5 で構成されます。HADB ノード active 0 と HADB ノード active 2 はマシン SYS3 上にあります。HADB ノード spare 4 と HADB ノード spare 6 はマシン SYS5 上にあります。
冗長データユニット DRU1 は、マシン SYS4、および SYS6 で構成されます。HADB ノード active 1 と HADB ノード active 3 はマシン SYS4 上にあります。HADB ノード spare 5 と HADB ノード spare 7 はマシン SYS6 上にあります。
HADB ノードのホストマシンは、HADB ノードをそれぞれ 2 個ずつホストします。つまり、合計 8 個の HADB ノード (アクティブノード 4 個、スペアノード 4 個) が存在します。
参考用 separate tier トポロジのバリエーションの設定
以下の節で説明する変更を加えた後、clsetup コマンドを実行してください。
clresource.conf ファイルの変更
この参考用 separate tier トポロジのバリエーションの clresource.conf ファイルには、次の表のような変更を加える必要があります。表の左の欄にはファイル内の変更対象のプロパティのセクション、中央の欄にはプロパティ名、右の欄にはプロパティ値を一覧します。これらのプロパティの値の詳細については、「clresource.conf ファイルの変更」を参照してください。
clinstance.conf ファイルの変更
clinstance.conf ファイルには、各インスタンスの情報が記載されています。詳細については、『Sun ONE Application Server インストールガイド』を参照してください。
トポロジの比較次の表に、co-located トポロジと separate tier トポロジの相違点を示します。左の欄はトポロジ名、中央および右の欄は、そのトポロジの利点と欠点です。
表 3-5 トポロジの比較
トポロジ
利点
欠点
co-located トポロジ
保守作業の複雑さが軽減されている。たとえば、HADB ノード上でマシンのシャットダウンを必要とする保守作業を行う場合、マシンが使用不能状態になっている間、HADB ノードのホストマシン上のアプリケーションサーバーインスタンスも使用不能状態になる
separate tier トポロジ
使用トポロジの決定パフォーマンスや可用性への要件に対し、どのトポロジ (および、そのバリエーション) が適切なのかを決定するためには、この章で紹介しているトポロジによる違いを確認のうえ、マシンや CPU の異なる組み合わせを試みることが必要です。
ニーズを最大限に満たすための諸条件を考量します。たとえば、保守作業の簡便性が重要事項であるなら、separate tier トポロジのほうが適しています。この場合、co-located トポロジより多くのマシンを使用しなければなりません。
トポロジの選択における重要なポイントは、セットアップするマシンの種類です。大規模な対象多重処理 (SMP) マシンを使用するシステムには、これらのマシンの処理能力をフル活用できる co-located トポロジが適しています。種類の異なるマシンがある場合は、アプリケーションサーバーインスタンス層と HADB 層に異なったマシンを割り当てることができる separate tier トポロジのほうが便利です。たとえば、アプリケーションサーバーインスタンス層には高機能のマシン、HADB 層には少し機能の劣るマシンを割り当てることができます。