ここでは、Webアプリケーションへアクセスする場合の運用形態や、その変更方法について説明します。
運用形態を検討する場合、以下やその組み合わせについて考慮する必要があります。
Webサーバを経由するか、どうか。
多重プロセスでの運用を行うか、どうか。
複数台のマシンでの運用を行うか、どうか。
通信経路の違いによる運用形態について説明します。
WebブラウザなどのクライアントからIJServerクラスタ/Interstage Java EE DASサービス上に配備されたWebアプリケーションへアクセスする際に、その通信経路の違いによって以下の運用形態があります。
ポイント
Webサーバを経由する運用とWebサーバを経由しない運用では使用できる機能に差があります。
以下を参照し、必要な機能が使用できる運用形態を選択してください。
「付録C Interstage HTTP Serverとの機能比較」
Java EEに該当する機能がない場合は、Webサーバを経由する運用形態にして、Interstage HTTP Serverの機能を使用してください。
Webサーバを経由しない運用からWebサーバを経由する運用に変更する場合、またはその逆の場合、以下を参照して設定を変更してください。
「4.7.1.4 Webアプリケーションへのアクセスの運用形態を変更する場合」
Webブラウザなどのクライアントから直接Webコンテナへアクセスしたり、クライアントから負荷分散装置を経由してWebコンテナにアクセスする運用形態です。
標準インストールで提供される運用形態です。
注意
Webサーバを経由しない運用の場合で、Webサーバ/Webサーバコネクタ機能をインストールしているときは、「Webコンテナへアクセスする運用形態の設定」を“webserver”から“direct”に変更してください。
Webサーバ/Webサーバコネクタ機能をインストールすると、「Webコンテナへアクセスする運用形態の設定」が“webserver”に設定されるため、Webサーバを経由せずリクエストを受信した場合、Webコンテナはクライアントにステータスコード400(Bad Request)を返却します。
「Webコンテナへアクセスする運用形態の設定」については、「6.8.3 HTTPサービスの定義項目」を参照してください。
WebブラウザなどのクライアントからWebサーバを経由してWebコンテナへアクセスする運用形態です。
クライアントとWebサーバの間に負荷分散装置を配置する場合もこの運用形態になります。
Webサーバを経由する運用については以下も参照してください。
注意
Webサーバを経由する運用の場合、カスタムインストールでWebサーバコネクタ機能をインストールしてください。Webサーバ/Webサーバコネクタ機能をインストールすると、「Webコンテナへアクセスする運用形態の設定」が“webserver”に設定されます。「Webコンテナへアクセスする運用形態の設定」については、「6.8.3 HTTPサービスの定義項目」を参照してください。
多重度の違いによる運用形態について説明します。
小規模な単一業務のシステムや開発環境などで選択される運用形態です。
Webサーバ固有の機能を使用する必要がない場合はこの運用形態を選択します。
デフォルトではWebブラウザからIJServerクラスタ上に配備されたWebアプリケーションへアクセスするポート番号は80番ではなく、28090番からの連番です。必要に応じてHTTPリスナーのポート番号を変更してください。
ポート番号の変更方法については「システム設計ガイド」-「ポート番号」を参照してください。
Webサーバ固有の機能を利用する場合はこの運用形態を選択します。
小規模な複数業務のシステムを運用する場合に選択される運用形態です。
多重プロセスによる運用には、1つのIJServerクラスタの中に複数のサーバーインスタンスを作成する場合と、複数のIJServerクラスタを作成して運用する場合があります。
この運用形態の場合は通常Webブラウザから多重プロセスを意識させずにアクセスさせるために負荷分散装置を必要とします。
負荷分散装置がない場合はWebブラウザでアクセスする際に各プロセスのポート番号を指定する必要があります。
多重プロセスの詳細は、「2.4.3 IJServerクラスタの複数プロセス構成」を参照してください。
Webブラウザからのリクエストを各プロセスに振り分けるための負荷分散装置を別途用意する必要があります。
通常、IJServerクラスタを運用するマシンとは別に負荷分散装置を用意する必要があるため、小規模なシステムでは選択しません。
負荷分散装置の設定は、負荷分散装置のマニュアルを参照してください。
Webブラウザからのリクエストを各プロセスに振り分けるためにWebサーバ(Webサーバコネクタ)を使用します。
IJServerクラスタを運用するマシンと別に負荷分散装置を用意する必要がないため、小規模な複数業務を運用するシステムの場合はこの運用形態を選択します。
また、Webサーバ固有の機能を使用したい場合もこの運用形態を選択する必要があります。
Webサーバコネクタによるリクエストの振り分けに関する詳細は、「4.9 Webサーバコネクタにおけるリクエストの振り分け制御」を参照してください。
中大規模なシステムで同一構成のマシンを複数用意し負荷を分散するシステムを運用する場合にこの運用形態を選択します。
この運用形態ではIJServerクラスタを運用するマシンの他に負荷分散装置が必要になります。
Webサーバ固有の機能を使用しない場合はこの運用形態を選択します。
リクエストが適切なサーバーインスタンスに割り振られるように負荷分散装置を設定する必要があります。
Webサーバ固有の機能を利用する場合はこの運用形態を選択します。
リクエストが適切なサーバーに割り振られるように負荷分散装置を設定する必要があります。
サーバーに割り振られたリクエストはWebサーバコネクタによってサーバーインスタンスにリクエストが割り振られます。
Webサーバを経由しない運用の場合、クライアントとWebコンテナの間にSSLアクセラレータや負荷分散装置などを配置している環境では、Webコンテナに到達するホスト名、ポート番号、スキームのリクエスト情報が、クライアントからみたリクエスト先の情報と異なる場合があります。
そのため、リクエスト情報に依存するServletAPIやリダイレクトの処理が正常に動作しない場合があります。
以下に例として、"SSLアクセラレータを中間に配置し、クライアント-SSLアクセラレータ間をhttps、SSLアクセラレータ-Webコンテナ間をhttpで通信している場合"の図を示します。
必要に応じて、意図した動作となるようにSSLアクセラレータの機能を使用して、HOSTヘッダの付加(※)やリダイレクト先の設定を行ってください。
※SSLアクセラレータの機能で付加しない場合でも、HOSTヘッダが設定されていれば、その情報からホスト名、ポート番号を取得できます。
IJServerクラスタ/Interstage Java EE DASサービス上に配備されたWebアプリケーションへアクセスする際の運用形態には、Webサーバを経由する場合とWebサーバを経由しない場合があります。
この運用形態を変更する場合の設定方法について説明します。
IJServerクラスタまたはInterstage Java EE DASサービスと、経由するWebサーバを連携してください。
連携するWebサーバの変更は、Interstage Java EE管理コンソール、またはasadminコマンドにより行います。
操作方法の詳細については、以下を参照してください。
Interstage Java EE管理コンソールヘルプ
リファレンスマニュアル(コマンド編)」-「create-web-server-refサブコマンド」
注意
IJServerクラスタまたはInterstage Java EE DASサービスのHTTPリスナーポートに1~5000が設定されている場合、Webサーバとの連携ができません。
「HTTPサービスの定義項目」の「リスナーポート」の設定値を5001~65535に変更してから、Webサーバと連携してください。
「HTTPサービスの定義項目」の「リスナーポート」の設定値の変更は、Interstage Java EE管理コンソール、またはasadminコマンドにより行います。
操作方法の詳細については、以下を参照してください。
Interstage Java EE管理コンソールヘルプ
「リファレンスマニュアル(コマンド編)」-「setサブコマンド」
※Interstage Java EE DASサービスのHTTPリスナーポートはInterstage Java EE管理コンソールからは設定できません。
asadminコマンドから設定してください。
1つのWebサーバに対して、同一のアプリケーションが配備されているIJServerクラスタまたはInterstage Java EE DASサービスを連携することはできません。
別のWebサーバまたはバーチャルホストを選択してください。
また必要に応じて、1つのアプリケーションに対して、ターゲットが1つになるように設定を変更してください。
上記の各設定はInterstage Java EE管理コンソール、またはasadminコマンドにより行います。
操作方法の詳細については、以下を参照してください。
Interstage Java EE管理コンソールヘルプ
連携するWebサーバの変更
「リファレンスマニュアル(コマンド編)」-「create-web-server-refサブコマンド」
「リファレンスマニュアル(コマンド編)」-「delete-web-server-refサブコマンド」
要求を受け付けるバーチャルホストの変更
「リファレンスマニュアル(コマンド編)」-「create-virtual-host-refサブコマンド」
「リファレンスマニュアル(コマンド編)」-「delete-virtual-host-refサブコマンド」
アプリケーションのターゲットの変更
「リファレンスマニュアル(コマンド編)」-「create-application-refサブコマンド」
「リファレンスマニュアル(コマンド編)」-「delete-application-refサブコマンド」
※なお、Webサーバとの連携の設定を外してから環境を作成することで同一マシン上のWebサーバを経由する複数のIJServerクラスタで、同じコンテキストルートのWebアプリケーションを配備することが可能です(運用形態はWebサーバを経由する運用になります)。
詳細な手順は以下を参照してください。
「4.9.3 同一マシン上の複数IJServerクラスタで同一アプリケーションの負荷分散を行う方法」
IJServerクラスタまたはInterstage Java EE DASサービスと、経由しているWebサーバとの連携を外してください。
連携するWebサーバの変更は、Interstage Java EE管理コンソール、またはasadminコマンドにより行います。
操作方法の詳細については、以下を参照してください。
Interstage Java EE管理コンソールヘルプ
リファレンスマニュアル(コマンド編)」-「delete-web-server-refサブコマンド」
注意
Webサーバとの連携を外した場合、Webサーバ固有の機能は使用できなくなります。
Webサーバを経由しない運用では、SSL通信をサポートしていません。
「HTTPサービスの定義項目」の「セキュリティ」を有効に設定している場合、設定を無効に変更してからWebサーバとの連携を外してください。
「HTTPサービスの定義項目」の「セキュリティ」の設定はInterstage Java EE管理コンソール、またはasadminコマンドにより行います。
操作方法の詳細については、以下を参照してください。
Interstage Java EE管理コンソールヘルプ
「リファレンスマニュアル(コマンド編)」-「setサブコマンド」
「HTTPサービスの定義項目」の以下の項目でアクセスを制限している場合、運用形態を変更した後の環境にあわせて設定を見直してください。
「ネットワークアドレス」
「要求を受け付けるクライアントのアドレス」
上記の各設定はInterstage Java EE管理コンソール、またはasadminコマンドにより行います。
操作方法の詳細については、以下を参照してください。
Interstage Java EE管理コンソールヘルプ
「リファレンスマニュアル(コマンド編)」-「setサブコマンド」
ポイント
運用形態を変更する場合、以下を参照して各定義項目を見直してください。
「チューニングガイド」-「Webコンテナのチューニング」
なお、自動的にWebサーバとの連携が設定/解除される場合があります。その場合にも定義項目の見直しを行ってください。
自動的にWebサーバとの連携が設定/解除される場合については以下を参照してください。
「インストールガイド」-「機能の追加と削除」