第12章
この章では、負荷分散およびフェールオーバーを実装するためにNovell exteNd Application Serverでサーバクラスタリング機能を使用する方法について説明します。また、クラスタ環境を設定して維持する方法についても説明します。この章は、次の節で構成されています。
高負荷な処理に対応するために、アプリケーションサーバでは、サーバクラスタリング機能を使用して負荷分散を実装します。
「サーバクラスタ」は、処理負荷を分担する異なるホストで実行されているサーバのセットです。アプリケーションサーバ環境におけるクラスタは、独立したシステムで構成されるグループです。これらのシステムは、同じSilverMasterデータベースに接続されている単一のシステムとして連携して動作します。この設定では、クライアントと通信するクラスタは、まるでパフォーマンスと信頼性が高い単一のアプリケーションサーバであるかのように動作します。
注記: サーバのクラスタは、長期にわたり、1台の大型コンピュータよりもさらに効率的に要求を処理できます。これは、複数のコンピュータの帯域幅とリソースを合わせた合計は、1台の大型コンピュータの帯域幅とリソースの合計よりも大きい(と同時に安価である)ためです。
サーバクラスタリング機能の利点は、次のとおりです。
利点 |
説明 |
---|---|
スケーラビリティおよびパフォーマンス |
特定の期間にわたって処理される要求の数は、増やすことが可能です。全体的な負荷がクラスタ内のシステムの能力を超えた場合は、別のシステムをクラスタへ容易に追加できます。 |
キャッシュ管理 |
アプリケーションを変更した場合、キャッシュ管理によって、クラスタ内の各サーバにその変更が伝達されます。 |
負荷管理 |
クライアント要求は、全体的なパフォーマンスを最適にするために、サーバに分散されます。 サードパーティ製のロードマネージャを使用することもできます。 |
フェールオーバー |
フェールオーバー機能は、サーバクラスタの各コンポーネントに装備されています。個々のシステムフェールオーバー機能については、コンポーネントフェールオーバーの管理の説明を参照してください。 |
アプリケーションサーバクラスタには、次のコンポーネントが含まれています。
クラスタコンポーネントは、次のように設定されます。
クラスタ要件 クラスタ設定では、次の一般的な要件を満たしている必要があります。
クラスタオプション クラスタ設定内には、次のオプションがあります。
各アプリケーションサーバには、一般的にアクセスするデータ(セキュリティ情報など)をメモリに保存するための、インテリジェントなキャッシュメカニズムがあります。各要求に対してデータベースからこの情報を読み込むことは非常に効率が悪いため、アプリケーションサーバでは、この情報をキャッシュメモリで保持します。情報がサーバで更新されると(新しいセキュリティ許可が適用されたり、J2EEアーカイブが展開されたりした場合など)、アプリケーションサーバのキャッシュも更新されます。
クラスタ内の複数のサーバ間でこのキャッシュを保持することは、アプリケーションとデータの整合性を保つために重要です。クラスタ環境では、複数のサーバが、アプリケーションサーバのシステムテーブル内にある同じデータを同時に変更できるため、メモリにキャッシュされたデータが破損または矛盾した状態のままになることがあります。キャッシュマネージャでは、キャッシュオブジェクトがサーバによって無効にされた場合にクラスタ内の他のサーバに通知することで、このような競合を防ぎます。すべてのサーバでは、無効なキャッシュエントリを破棄し、オブジェクトが次回必要になった場合にリソースの更新バージョンを取得します。
キャッシュマネージャは、個別のコンピュータ、またはサーバクラスタ内の任意のコンピュータで実行できます。クラスタ内のサーバを起動する前に、キャッシュマネージャを起動して実行する必要があります。起動時に、アプリケーションサーバでは、SilverMasterカタログから設定に関するクラスタリング情報を読み込み、キャッシュマネージャとの通信を開始します。キャッシュマネージャは、サーバの存在を登録し、クラスタのメンバーとして識別します。
既存のオブジェクトを変更した場合、サーバは特定のオブジェクトを他のサーバで無効にしなければならないことをキャッシュマネージャに通知します。アプリケーションサーバ環境のオブジェクトはすべてURLで示すことができるため、サーバはすべてのサーバに対して指定されているURLを無効にするためにキャッシュマネージャを呼び出します。キャッシュマネージャは、登録されている各サーバ(無効化を開始するサーバ以外)を呼び出して、URLにより識別されるオブジェクトを無効にするように通知します。
負荷マネージャは、クラスタと同じネットワーク上にある任意のコンピュータでサービスまたは標準のプロセスとして実行できるプログラムです。負荷マネージャの役割は、クラスタ内にあるアクティブな各サーバとその相対処理「負荷」(または、次の分散マッピングで説明されているウェイト)を追跡することです。この情報に基づいて、負荷マネージャでは分散マップを生成します。この分散マップは、設定でディスパッチャに送信されます。
クラスタ内のサーバを起動する前に、負荷マネージャを起動して実行する必要があります。起動時に、サーバでは、SilverMasterからセットアップに関するクラスタリング情報を読み込み、負荷マネージャとの通信を開始して、サーバの存在を登録します。負荷マネージャでは、サーバが実行されていることをまず登録し、サーバへの通信方法を次に判断した後、分散マップにサーバを組み込みます。負荷マネージャでは、起動時に、プロパティファイルから設定に関するディスパッチャ情報を読み込み、分散マップを今後送信できるように、ディスパッチャとの通信を開始します。
次の図は、負荷マネージャを示しています。
負荷マネージャによってダイナミックに生成される分散マップでは、クラスタ内の各サーバに対する処理負荷が決定されます。各サーバの分散ウェイトは、1~10までの範囲の整数で表されます。
デフォルトでは、負荷を分散するために「ラウンドロビンシステム」が使用されます。つまり、クラスタ内のすべてのサーバでは、長期にわたり同じ数のヒットを取得し、ウェイトも同じになります。
この分散は変更できません。 たとえば、サーバ1を8、サーバ2を4、サーバ3を2にそれぞれ設定した場合、特定の期間にわたって、サーバ1ではサーバ2の2倍のヒットを取得し、サーバ2ではサーバ3の2倍のヒットを取得します。次の表は、ウェイト設定のその他の例を示します。
分散の変更の詳細については、サーバの相対負荷ウェイトの指定を参照してください。
ディスパッチャは、Webクライアントがサーバクラスタ内に入るためのエントリポイントとしての役割を果たします。 最初にクライアントは、ディスパッチャのURLを通じてクラスタにアクセスします。
ディスパッチャは、ウェイトの軽いHTTP/HTTPSサポートのプログラムで、負荷マネージャによって提供される分散マップに従ってサーバにクライアント要求を送信するために、他のクラスタコンポーネントと通信します。ディスパッチャは、クラスタサーバと同じネットワーク上にある任意のコンピュータで、サービスまたは標準のプロセスとして実行できます。ディスパッチャと負荷マネージャは個別のコンピュータやプラットフォームで実行でき、SilverMasterデータベースにアクセスする必要はありません。
クライアントから初めて呼び出されると、ディスパッチャでは、負荷マネージャから受信した分散マップに基づいて、要求に最適なサーバを検出します。次に、HTTPリダイレクトという標準のプロセスを使用して、要求をクライアントにリダイレクトします。その後、クライアントでは、この要求を指定のサーバに直接送信します。
ディスパッチャから特定のサーバにセッションが送信されると、すべてのクライアント通信は、ディスパッチャを通さずにサーバに直接送信され、リダイレクションはマスクされません(つまり、ブラウザでは、ディスパッチャのURLではなく、サーバのURLがユーザに表示されます)。
次の図は、HTTPリダイレクトプロセスの順序を示します。
ディスパッチャでは、HTTPS (およびHTTP 1.0、HTTP 1.1)をサポートしています。これは、クラスタを設定した後でサーバ証明書をインストールできることを意味します。サーバクラスタの管理を参照してください。
アプリケーションサーバのソフトウェアであるディスパッチャは、負荷分散およびフェールオーバーの多くのニーズに対応できる優れたソリューションですが、ディスパッチャによって提供されない機能が必要になる場合もあります。
次の理由に対しては、サードパーティ製の送信ソリューションの使用が推奨されます。
このような状況では、負荷マネージャとディスパッチャの代わりにサードパーティ製の送信ソリューションを使用することが推奨されます。ただし、アプリケーションサーバのキャッシュマネージャはキャッシュの整合性の維持に、SMCはサーバ管理にそのまま使用できます。
標準のHTTPサーバ負荷分散ソリューションは、アプリケーションサーバで機能します。
アプリケーションサーバでは、一時的なエラーや持続的なエラーが発生した場合にシステムフェールオーバーおよび回復を実行します。クラスタ内のコンポーネントのいずれかに障害が発生すると、SilverMonitorというバックグラウンドプログラムによってエラーが検出されます。
SilverMonitorでは、システムで実行されているデーモン、プロセス、およびサービスの状態を観察します。 SilverMonitorは、サーバクラスタの各コンポーネントを監視し、コンポーネントに障害が発生すると、SilverMonitorはその障害を検知してコンポーネントを再起動しようとします。
SilverMonitorを使用すると、通常は、障害が発生したコンポーネントをすばやく回復できるようになります。障害が持続する場合は(たとえば、ハードウェア障害などの理由のために)、システムリソースを節約するために、SilverMonitorでは、事前に定義されている回数だけ試行した後、試行を中止します。
注記: SilverMonitorは、デフォルトにより、各クラスタで実行されます。また、特定のプログラムパラメータを定義できるサーバ起動オプションとしても提供されます。詳細については、SilverMonitorの使用を参照してください。
クラスタ内のサーバがダウンし、正しく再起動しない場合は、次の結果が発生します。
サーバが再起動した場合は、次の結果が発生します。
サーバで障害が発生すると、接続されていたクライアントでは接続が切断されます。そのためクライアントでは、再起動するか、ブラウザから別の要求をディスパッチャへ送信する必要があります。
サーバの再起動にかなりの時間がかかる場合は、着信クライアント要求をできるだけ効率的に処理できるように、クラスタコンポーネントでクラスタの強制再設定が行われます。持続的な障害が発生している間、アクティブなコンポーネントは次のように応答します。
アプリケーションサーバのクラスタリングコンポーネント(キャッシュマネージャ、負荷マネージャ、およびディスパッチャ)は、アプリケーションサーバの特定のバージョンで使用できます。
最初のサーバをインストールし、SilverMasterを作成します。インストールが完了している場合は、SilverMaster設定がクラスタに対して適切であることを確認します。
アプリケーションサーバのインストールおよびSilverMasterデータベースの設定の詳細については、『Novell exteNdのインストール』を参照してください。
インストールプログラムを使用して、クラスタリングコンポーネントを1つまたは複数のコンピュータにインストールします。プラットフォーム(UNIX、NetWare、およびWindows)は組み合わせて使用できます。
詳細については、次の「クラスタリングコンポーネントの起動」を参照してください。
インストールプログラムを使用して、クラスタの一部である他のサーバをそれぞれインストールします。
詳細については、クラスタサーバのインストールを参照してください。
詳細については、クラスタの作成を参照してください。
クラスタを作成したら、サーバとコンポーネントをすべて再起動し、クラスタを有効にします。
詳細については、クラスタサーバの再起動を参照してください。
負荷分散ソフトウェアがネットワーク上で現在サービスとして実行されていない場合、これらのプログラムを常駐コンピュータで手動により実行する必要があります。アプリケーションサーバの負荷マネージャを使用している場合は、次の手順に示す順序でコマンドを実行します。
WindowsおよびUNIXでは、次の手順で指定されているプログラムは、サーバの\binディレクトリにあります。NetWareでは、システムコンソールからコマンドを入力します。
オペレーティングシステム |
コマンド |
---|---|
NetWare |
SilverCacheMgr |
UNIX |
/bin/SilverCacheMgr |
Windows |
\bin\SilverCacheMgr.exe |
オペレーティングシステム |
コマンド |
---|---|
NetWare |
SilverDispatcher |
UNIX |
/bin/SilverDispatcher |
Windows |
\bin\SilverDispatcher.exe |
オペレーティングシステム |
コマンド |
---|---|
NetWare |
SilverLoadMgr |
UNIX |
/bin/SilverLoadmgr |
Windows |
\bin\SilverLoadMgr.exe |
これらの各実行可能ファイルを使用して、起動するJVMを指定することができます。詳細については、使用するJVMの指定を参照してください。
ディスパッチャでの起動パラメータの使用 ディスパッチャは、次に説明するパラメータを使用して起動できます。
パラメータ |
説明 |
---|---|
-p propfile |
代替Dispatcher.ddlファイルの名前と場所。 Dispatcher.DDLファイルは、クラスタ設定時にSMCによって作成されます。ディスパッチャに対するRMI、HTTP、およびHTTPSのデフォルトのポートが指定されるこのファイルは、サーバの\Resourcesディレクトリにあります。 代替Dispatcher.ddlファイルの使用、またはSMC外でのこのファイルの編集は、推奨されていません。 |
-c upload-certificate |
ディスパッチャをupload-certificateモードで実行します。
|
-h host |
ここで指定したホスト名は、次でIPアドレスに変換されます。 InetAddress.getByName(host_name); このパラメータを指定した場合、ディスパッチャでは、このIPアドレスのみでリッスンするサーバソケットを開きます。指定しなかった場合、ソケットは、ローカルコンピュータのすべてのIPアドレスでリッスンします。 |
+cp:p path |
指定したpathをクラスパスの前に付けます。このデバッグオプションを使用する前に、必ずNovell exteNd テクニカルサポートに連絡してください。代わりに、AGCLASSPATHを使用して、追加のJavaクラスをアプリケーションで使用できるようにします。
|
+cp:a path |
指定したpathをクラスパスの後ろに付けます。このオプションは、指定したパスをクラスパスに付けることによって、追加のJavaクラスをアプリケーションで使用できるようにします。 注記: Javaクラスを拡張するには、AGCLASSPATH環境変数を使用します。
|
クラスタのSilverMasterデータベースを含むサーバをインストールしたら、インストールプログラムを使用して他のサーバをインストールします。他のサーバをインストールする場合は、これらのサーバが、インストールした最初のサーバ(SilverMasterデータベースが含まれています)を指すようにする必要があります。これは、1つのクラスタ内の全サーバで同じSilverMasterデータベースが使用されなければならないためです。
この節では、インストール処理を行う上でのヒントをご紹介します。 詳細については、「Novell exteNdのインストール」を参照してください。
クラスタを設定する場合の1つの手順は、クラスタに含めるホストコンピュータそれぞれにアプリケーションサーバをインストールすることです。これらをインストールする際には、次のガイドラインに従って、[データベース情報]画面で情報を適切に入力する必要があります。
クラスタ内の最初のアプリケーションサーバのインストール クラスタ内では、最初のアプリケーションサーバのみにSilverMasterデータベースが含まれます。このサーバをインストールする際は、[データベース情報]画面で通常通りに情報を入力します。次に例を示します(ホストAコンピュータにインストールする場合)。
設定 |
ホストAへのインストール時に指定する内容 |
---|---|
MySQLデータベースホスト |
HostA |
MySQLデータベースポート |
3306 |
DBユーザ名 |
appserver |
DBユーザパスワード |
********* |
ユーザパスワードの確認 |
********* |
SilverMaster名 |
SilverMaster50 |
SilverMasterInitの実行 |
チェックされた状態 |
クラスタ内の他のアプリケーションサーバのインストール クラスタ内の他のアプリケーションサーバでは、最初のサーバのSilverMasterデータベースを使用します。これらのサーバをインストールする際は、[データベース情報]画面でこのデータベースを指すように情報を入力し、[SilverMasterInitの実行]をオフにします(このデータベースのSilverMasterシステムテーブルが再初期化されないようにするために)。次に例を示します(ホストBコンピュータにインストールする場合)。
設定 |
ホストBへのインストール時に指定する内容 |
---|---|
MySQLデータベースホスト |
HostA |
MySQLデータベースポート |
3306 |
DBユーザ名 |
appserver |
DBユーザパスワード |
********* |
ユーザパスワードの確認 |
********* |
SilverMaster名 |
SilverMaster50 |
SilverMasterInitの実行 |
チェックが「解除」された状態 |
各サーバをクラスタに追加したら、SMCを使用してクラスタを作成できます(次のクラスタの作成を参照)。
クラスタに追加するコンピュータで、アプリケーションサーバのインストールプログラムを実行します。次のことに注意してください。
SilverMaster名と他のデータベース情報を入力するように指示されたら、クラスタに対してインストールした最初のサーバによって使用されるSilverMasterを指定する必要があります。
Windowsサーバが含まれているクラスタにUNIXサーバを含めることができるかどうかは、データベースドライバの有用性によって影響される場合があります。
SilverMasterInitの再実行を行わないようにするには、アプリケーションサーバを設定しないように選択する必要があります。
SMCを使用してクラスタにこのサーバをすでに追加した場合は、ここで指定するポート値が、クラスタにサーバを追加したときに入力した値と一致していなければなりません。
エラーが表示された場合は、既存のSilverMasterデータベースに関する情報を誤って入力した可能性があります。このような状況では、情報を再度指定する必要があります。
各サーバをクラスタに追加したら、SMCを使用してクラスタを作成できます(次のクラスタの作成を参照)。
クラスタに追加するコンピュータで、アプリケーションサーバのインストールプログラムを実行します。次のことに注意してください。
SilverMaster名と他のデータベース情報を入力するように指示されたら、クラスタに対してインストールした最初のサーバによって使用されるSilverMasterを指定する必要があります。
SilverMasterInitの再実行を行わないようにするには、アプリケーションサーバを設定しないように選択する必要があります。
SMCを使用してクラスタにこのサーバをすでに追加した場合は、ここで指定するポート値が、クラスタにサーバを追加したときに入力した値と一致していなければなりません。
エラーが表示された場合は、既存のSilverMasterデータベースに関する情報を誤って入力した可能性があります。このような状況では、情報を再度指定する必要があります。
各サーバをクラスタに追加したら、SMCを使用してクラスタを作成できます(次のクラスタの作成を参照)。
複数のサーバが単一のSilverMasterを指すように設定したら、クラスタを作成して設定することができます。アプリケーションサーバは、1つのクラスタにのみ含めることができます。
クラスタを作成するには、HTTPポートを使用する必要があります。管理ポートを設定した場合は、この管理ポートを使用しなければなりません。
詳細については、ファイアウォールでの個別ポートの使用を参照してください。
キャッシュマネージャ、ディスパッチャ(使用されている場合)、および負荷マネージャ(使用されている場合)が実行されていることを確認します。
詳細については、クラスタリングコンポーネントの起動を参照してください。
適切な修飾名とポート番号を続けて入力して、[OK]をクリックします(サーバ名と、それを修飾する方法は、サーバがリッスンするものに一致している必要があります。名前は、サーバコンソールでエコーされるように指定します)。次に例を示します。
agserver.myco.com:50001
追加する最初のサーバはSilverMasterが含まれているサーバであることを確認します。その後追加したサーバは、すべて同じSilverMasterを使用するように設定する必要があります。
ポートが80に設定されている場合、ポート番号を指定する必要はありません。ただし、管理ポートを定義した場合は、そのポート番号を指定する必要があります。 アプリケーションサーバがプライマリWebサーバではない場合は、5000よりも大きい数にポートを変更する必要があります。ポートの変更の詳細については、一般的なサーバのプロパティの指定を参照してください。
[追加]を再びクリックし、クラスタに追加する全サーバの名前を入力します。各サーバは、クラスタに追加するたびに[新規クラスタ]フォームに一覧表示されます。
キャッシュマネージャのホスト名を入力します。 キャッシュマネージャのデフォルトのRMIポート番号は54891です。クラスタを最初に作成する場合、デフォルトのポートを指定する必要がありますが、必要であれば後で変更できます。
デフォルトのポート変更の詳細については、クラスタリングコンポーネントのプロパティの変更を参照してください。
アプリケーションサーバの負荷マネージャを使用する場合は、[Novell exteNd負荷マネージャコンポーネントを使用する]チェックボックスをオンにして、次の手順に進みます。
現時点では負荷マネージャを使用する予定がない場合は、[完了]をクリックして、クラスタサーバの再起動に移動します。
負荷マネージャのホスト名を入力します。 デフォルトのRMIポートは54891です。クラスタを最初に作成する場合、デフォルトのポートを指定する必要がありますが、必要であれば後で変更できます。
デフォルトのポート変更の詳細については、クラスタリングコンポーネントのプロパティの変更を参照してください。
ディスパッチャがリッスンする各プロトコルタイプのポートの一部またはすべてに対して、ポート設定を指定します。
ディスパッチャは、すでに設定され有効である次の固有なサーバポートに対して、 HTTP、RSA、およびDSAなどの設定されているすべてのポートでリッスンします。
HTTPポートを無効にし、HTTPSまたはRMIクライアント通信を使用することができます。詳細については、HTTP通信のオフ設定を参照してください。
各セキュリティプロトコルのデフォルトのポート設定の詳細については、ポートタイプを参照してください。
次の表は、パネルに表示されるポート設定について説明しています。クラスタを最初に作成するときには、各クラスタに対してデフォルトのポートを指定する必要がありますが、これらのポートは、必要に応じて後で変更できます。
項目 |
説明 |
---|---|
RMIポート |
ディスパッチャが負荷マネージャとの通信に使用するポート。ディスパッチャ、キャッシュマネージャ、および負荷マネージャによって使用されます。 デフォルトは54891です。 |
HTTP設定: ランタイムポート 管理ポート |
ディスパッチャによって使用されるクライアントとの非暗号化通信に対するHTTPポート。HTTPポートは、3つまで設定できます。 デフォルトにより、クラスタのランタイムポートと管理ポートでは、同じデフォルトのポート番号の54892が使用されます。
|
RSA設定: ランタイムポート 管理ポート |
ディスパッチャによって使用される(HTTPSを使用した)暗号化通信で使用するRSAポート。 デフォルトにより、ディスパッチャでは、クラスタのすべてのRSAランタイムポートとRSA管理ポートに対して、同じデフォルトのポート番号(54893)を使用します。 |
DSA設定: ランタイムポート 管理ポート |
ディスパッチャによって使用される(HTTPSを使用した)暗号化通信で使用するDSAポート。 デフォルトにより、ディスパッチャでは、クラスタのすべてのDSAランタイムポートとDSA管理ポートに対して、同じデフォルトのポート番号(54894)を使用します。 |
デフォルトのポート変更の詳細については、クラスタリングコンポーネントのプロパティの変更を参照してください。
クラスタを作成したら、各サーバを再起動する必要があります。負荷マネージャを実行している場合は、負荷マネージャとディスパッチャも再起動する必要があります。
サーバの再起動の詳細については、アプリケーションサーバの再起動を参照してください。
クラスタリングコンポーネントの起動を参照してください。
クラスタの作成後、SMCには、クラスタ環境に固有なオプションが表示されます。
クラスタ環境には、次の3タイプのプロパティがあります。
クラスタを作成すると、クラスタ内のサーバでは、スタンドアロンサーバとして最初に設定された時点から、「サーバローカル」プロパティと「サーバ保存」プロパティを保持します。これらの設定は、保持したり、またはサーバレベルで変更したりすることができます。
詳細については、クラスタでのサーバレベルのプロパティの設定を参照してください。
ただし、クラスタ内に含まれているサーバでは、「クラスタ共有」プロパティとして定義されているプロパティの値は保持されません。これは、クラスタ内の各サーバの「クラスタ共有」プロパティの値は、サーバがスタンドアロンサーバであった時点とは異なる可能性があるため、「クラスタ共有プロパティ」はクラスタレベルで再設定する必要があるためです。
したがって、新しいクラスタを作成すると、「クラスタ共有」プロパティの値は、すべてデフォルトの値に設定されます。これらの設定は維持したり、クラスタレベルで変更したりできます。クラスタレベルのプロパティを変更すると、新しい値が、クラスタ内のすべてのサーバに適用されます。クラスタを解除すると、クラスタ内のすべてのサーバは、スタンドアロンサーバになります。
詳細については、次の「クラスタレベルのプロパティの設定」を参照してください。
前に説明したように、クラスタ環境で作業する場合には、クラスタレベルで終了するプロパティとサーバレベルで終了するプロパティがあります。SMCの左側でクラスタを選択すると、クラスタレベルのプロパティが表示されます。ほとんどのクラスタプロパティは、スタンドアロンサーバに対して設定されているものと同じです。次の表は、クラスタレベルのプロパティに関するドキュメントの相互参照を示します。
クラスタレベルの設定プロパティは、複数のSMCパネルにグループ化されています。
パネル |
説明 |
---|---|
一般 |
クラスタのリモートオブジェクトプロパティのRMI/ORBおよびSSL。
|
詳細 |
パフォーマンス、キャッシュマネージャ、および負荷マネージャのプロパティ。
|
マネージャ |
キャッシュマネージャ、負荷マネージャ、およびディスパッチャのプロパティ。これらは、クラスタを作成したときに指定したプロパティです。これらのプロパティは、クラスタの作成後に編集できます。
|
サーバ |
サーバを既存のクラスタに追加または既存のクラスタから削除したり、サーバの負荷ウェイトを変更することができます。 |
クラスタレベルのセキュリティプロパティは、次のSMCパネルにグループ化されています。
パネル |
説明 |
---|---|
一般 |
クラスタに対する一般的なセキュリティ設定を指定します。
|
詳細 |
クラスタに対するクライアント証明書レベルと信頼するクライアントリストを指定します。
|
許可 |
クラスタ設定の読み込み、クラスタ設定の変更、およびクラスタに対する許可の設定を行います。
|
ユーザとグループ |
クラスタに対してSilver Securityのユーザとグループおよび証明書のユーザとグループを管理します。
|
証明書 |
サーバにインストールされている証明書と、認識されているCA (認証局)を表示します。
|
セキュリティプロバイダ |
外部セキュリティプロバイダ(Windowsディレクトリサービス、LDAP、NIS+、および証明書発行者を含む)を設定します。
|
クラスタレベルの監視プロパティは、スタンドアロンサーバに対するプロパティのサブセットです。
監視プロパティの詳細については、サーバの動作の監視を参照してください。
スタンドアロンサーバがクラスタに追加されると、そのサーバレベルのプロパティの多くはクラスタレベルのプロパティになります。
SMCの左側でクラスタ内のサーバを選択した場合、クラスタ内の「サーバ」のプロパティが表示されます。クラスタ内にあるサーバのほとんどのプロパティは、スタンドアロンサーバに対して設定されているものと同じです。
この節では、クラスタ内のサーバのプロパティに関するマニュアルの相互参照を一覧表示します。クラスタ内のサーバの設定プロパティは、次のSMCパネルにグループ化されています。
パネル |
説明 |
---|---|
一般 |
サーバの一般的な設定。 |
詳細 |
デバッグ、パフォーマンス、キャッシュ、トランザクション、キャッシュマネージャ、および負荷マネージャのプロパティ。
|
プール |
コネクタ接続プールおよびJDBC接続プール。
|
接続 |
クライアント接続プロパティ。
|
データベース |
クラスタの展開データベース(クラスタのSilverMasterに認識されているデータベース)に関する情報。クラスタ内にある各サーバのデータベース接続の最小数および最大数は変更できます。
|
サーバレベルでクラスタを管理するサーバのアクセラレータ設定。
アクセラレータ設定の詳細については、CHI (Cryptographic Hardware Integration)の使用を参照してください。
クラスタの監視プロパティは、スタンドアロンサーバに対するプロパティと同じです。
監視プロパティの詳細については、サーバの動作の監視を参照してください。
クラスタ内の各サーバに対しては、相対処理ウェイトを指定できます。負荷マネージャでは、この情報を使用して、ランタイム時における各サーバの処理負荷を決定する分散マップを生成します。
ウェイトのしくみの詳細については、分散マッピングを参照してください。
SMCでは、システム障害が発生した場合のキャッシュマネージャと負荷マネージャでの対応方法を制御するプロパティを利用できます。通常は、これらのプロパティを編集する必要はありません。
キャッシュマネージャプロパティおよび負荷マネージャプロパティは、クラスタレベルとサーバレベルの両方で存在します。クラスタレベルでプロパティを設定すると、クラスタ内の各サーバに対して値を設定できます。その後、クラスタ内の任意のサーバの値を上書きすることができます。ただし、クラスタレベルで任意のプロパティを後に変更した場合は、サーバレベルで行った設定が上書きされてしまうので注意してください。
キャッシュマネージャプロパティは、サーバとの接続に失敗した場合にキャッシュマネージャで対応する方法を決定します。
クラスタレベルでプロパティを設定するためにクラスタを選択するか、またはサーバレベルでプロパティを設定するためにクラスタ内のサーバを選択します。
プロパティ |
説明 |
---|---|
開始スリープ間隔(秒) |
サーバとの再接続を連続して試行し始める前にキャッシュマネージャで待機する秒数 |
再接続スリープ間隔(秒) |
新しい一連の再接続試行までの秒数 |
試行の開始回数 |
エラーを生成する前に一連の再接続試行を開始する回数 |
再接続の試行回数 |
再接続を連続して試行する回数 |
負荷マネージャプロパティは、サーバとの通信に失敗した場合に負荷マネージャで対応する方法を決定します。
クラスタレベルでプロパティを設定するためにクラスタを選択するか、またはサーバレベルでプロパティを設定するためにクラスタ内のサーバを選択します。
プロパティ |
説明 |
---|---|
接続試行間隔(秒) |
連続して再試行した後、待機する秒数 |
接続スリープ間隔(秒) |
続を連続して再試行した後、待機する秒数 |
接続試行回数 |
負荷マネージャでサーバとの接続を連続して試行し始める回数 |
接続スリープ回数 |
一連内での接続再試行の数 |
クラスタは解除することができます。クラスタを解除すると、次の処理が行われます。
負荷マネージャ、ディスパッチャ、およびキャッシュマネージャなど、クラスタリングコンポーネントを実行するホストを 変更することができます。また、クラスタリングコンポーネントで使用するポートを変更することもできます。
クラスタを作成した後、異なるホストでクラスタリングコンポーネントを実行することを決定する場合があります。
デフォルトにより、すべてのクラスタリングコンポーネントでは、RMIポートにポート54891を使用します。また、ディスパッチャでは、HTTPポート、RSAポート、およびDSAポートにポート54892、54893、および54894をそれぞれ使用します。固有のランタイムポートや管理ポートを定義する必要がない限り、通常は、これらのポート値を変更しません。
ただし、固有のランタイムポートや管理ポートの定義が必要になった場合は、クラスタを作成した後でポートを変更できます。
注記: すべてのクラスタリングコンポーネントでは、同じRMIポートを使用する必要があります。
クラスタ内の各サーバと各クラスタリングコンポーネントを停止して再起動します。
キャッシュマネージャのポートを変更した場合は、次のコマンドラインを使用してキャッシュマネージャを起動する必要があります。
SilverCacheMgr -p portNumber
クラスタがHTTPSポートでリッスンして機能するようにするには、クラスタ内の各サーバにサーバ証明書をインストールする必要があります。アプリケーションサーバのソフトウェアであるディスパッチャ(SilverDispatcher)を使用する場合は、ディスパッチャに対しても証明書をインストールする必要があります。
証明書およびHTTPS/SSLの詳細については、証明書の使用を参照してください。
アプリケーションサーバのソフトウェアであるディスパッチャをクラスタで使用する場合は、各アプリケーションサーバのサーバ証明書のDNS名が「サーバ」のホスト名と一致していなければなりません。
URLマスキング(クラスタ内のサーバにヒットしたブラウザでディスパッチャのホスト名が表示されるようにすべてのURLをマスクすること)を行うCisco LocalDirectorなどのサードパーティ製のハードウェアディスパッチャを使用する場合は、各アプリケーションサーバのサーバ証明書のDNS名が「ディスパッチャ」のホスト名に一致していなければなりません。
たとえば、次のようなクラスタがあるとします。
アプリケーションサーバのディスパッチャを使用している場合、4つのサーバ証明書を作成する必要があります。 ディスパッチャのコンピュータ用(「www.myhost.com」というDNS名を使用)と各サーバ用(「server1.myhost.com」、「server2.myhost.com」、および「server3.myhost.com」というDNS名を使用)に1つずつ作成します。
サードパーティ製のURLマスキングディスパッチャを使用する場合は、サーバ証明書を1つだけ作成し(「www.myhost.com」というDNS名を使用)、各サーバにアップロードする必要があります。
実行方法については、次の手順で説明します。
SMCを使用して、RSA証明書またはDSA証明書を生成します。
アプリケーションサーバのソフトウェアであるディスパッチャを使用する場合は、クラスタ内で使用される各サーバとディスパッチャに対して、それぞれ個別の証明書を生成します。
サードパーティ製のディスパッチャを使用する場合は、ディスパッチャのDNS名を持つ証明書を1つ生成します(前の説明を参照)。
詳細については、証明書についてを参照してください。
証明書をインストールする(ディスパッチャソフトウェアを使用する場合)
詳細については、SMCを使用したサーバ証明書の作成とインストールを参照してください。
ディスパッチャに証明書をインストールするには、-c起動オプションを使用してディスパッチャを起動します。これにより、ディスパッチャは証明書をアップロードできるモードになります。
詳細については、クラスタリングコンポーネントの起動を参照してください。
AgDigitalIDStep2を呼び出して、ディスパッチャを含むコンピュータに証明書をインストールします。
詳細については、AgDigitalIDStep2の使用を参照してください。
画面の指示に従って、アプリケーションサーバのディスパッチャを含むコンピュータと、ディスパッチャがリッスンするHTTPポート(デフォルト: 54892)を指定します。
証明書をインストールしたら、ディスパッチャを停止し、通常通りに再起動します(-c起動オプションは使用しません)。
ディスパッチャはHTTPSポートでリッスンするように設定されています(デフォルト: RSA証明書の場合54893、DSA証明書の場合54894)。
証明書をインストールする(サードパーティ製のディスパッチャを使用する場合)
AgDigitalIDStep2を呼び出して、ディスパッチャのDNS名を参照する証明書をサーバにインストールします。
詳細については、AgDigitalIDStep2の使用を参照してください。
画面の指示に従って、サーバとサーバがリッスンするHTTPポート(デフォルト: NetWareの場合83、NTの場合80、UNIXの場合8080)を指定します。
サーバのhttpd.propsファイル(サーバの\Resourcesディレクトリにあります)に次の行を追加します。
http-server.com.sssw.srv.https.cert.hostname=DispatcherName
Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved. more ...