1つのWebサーバに対して複数のIJServerクラスタが連携している場合、複数のIJServerクラスタに同じコンテキストルートのWebアプリケーションを配備することはできません。以下のいずれかの方法を実行することにより、同じコンテキストルートのWebアプリケーションを複数のIJServerクラスタに配備することができます。
wscadminコマンドで設定します。
バーチャルホストを設定します。
wscadminコマンドで設定
wscadmin add-instance-refサブコマンド実行時に、--targetオプションに指定する値を複数のIJServerクラスタで同じにすることにより、複数のIJServerクラスタで負荷分散を行うことができます。
注意
wscadminコマンドは、通常IJServerクラスタとWebサーバが異なるマシンにある場合に使用するコマンドです。そのため、WebサーバとIJServerクラスタが同一マシンにある場合は、同一アプリケーションの負荷分散を行う用途以外では使用しないでください。
IJServerクラスタ、サーバーインスタンスの作成
IJServerクラスタやサーバーインスタンスを未作成の場合、asadmin create-clusterサブコマンド、create-local-instanceサブコマンドで、IJServerクラスタおよびサーバーインスタンスを作成します。この際、負荷分散の対象数に応じてIJServerクラスタを複数作成します。
WebサーバとIJServerクラスタの連携を解除
asadmin delete-web-server-refサブコマンドで、すべてのIJServerクラスタとWebサーバの連携を解除します。IJServerクラスタと連携しているWebサーバは、asadminコマンドのlist-web-server-refsサブコマンドで確認できます。
IJServerクラスタへのアプリケーションの配備
asadminコマンドのdeployサブコマンドで、各IJServerクラスタにアプリケーションを配備します。その際、以下となるようにしてください。
「アプリケーション名」が重複しないように、各IJServerクラスタで名前を変更する。
「コンテキストルート」は、すべてのIJServerクラスタで同じ値にする。
例
IJServerクラスタIJServer001、IJServer002にWebアプリケーションSampleAppr.warを配備する場合
C:\Interstage\F3FMisje7\glassfish\bin\asadmin deploy --name SampleAppr1 --contextroot /SampleAppr --target IJServer001 SampleAppr.war |
/opt/FJSVisje7/glassfish/bin/asadmin deploy --name SampleAppr1 --contextroot /SampleAppr --target IJServer001 SampleAppr.war |
wscadminコマンドでWebサーバとIJServerクラスタを連携
Webサーバの存在するマシンでwscadminコマンドのadd-instance-refサブコマンドを使用し、WebサーバとIJServerクラスタを連携させます。このとき、オプションやオペランドには以下を指定するようにしてください。
項目 | 設定内容 |
--target | 負荷分散対象を識別する任意の名前 |
--webserver | 設定対象のWebサーバ名 |
オペランド | サーバーインスタンスのHTTPリスナーのネットワークアドレスとポート番号を(IPアドレス):(ポート番号)の形式で指定 WebサーバとIJServerクラスタを同じマシンで運用する場合は、IPアドレスに127.0.0.1を指定 |
例
連携させるWebサーバ名がFJapache、IJServerクラスタ(IJServer001)のサーバーインスタンスのリスナーポートが28495、IJServerクラスタ(IJServer002)のサーバーインスタンスのリスナーポートが28496、IPアドレスが127.0.0.1の場合
C:\Interstage\F3FMwsc\bin\wscadmin add-instance-ref --webserver FJapache --target IJServer001_002 127.0.0.1:28495 |
/opt/FJSVwsc/bin/wscadmin add-instance-ref --webserver FJapache --target IJServer001_002 127.0.0.1:28495 |
add-instance-refサブコマンドで指定するサーバーインスタンスのリスナーポートは、以下を実行することにより確認できます。
asadminコマンドのlist-instancesサブコマンドを使用し、サーバーインスタンスの一覧を取得します。
例
IJServerクラスタがIJServer001の場合
C:\Interstage\F3FMisje7\glassfish\bin\asadmin list-instances IJServer001 IJServer001-1 not running Command list-instances executed successfully. |
/opt/FJSVisje7/glassfish/bin/asadmin list-instances IJServer001 IJServer001-1 not running Command list-instances executed successfully. |
各サーバーインスタンスに対して、asadminコマンドのgetサブコマンドでHTTP_LISTENER_PORTシステムプロパティのvalueを確認します。
例
サーバーインスタンスIJServer001-1のHTTP_LISTENER_PORTを確認する場合
C:\Interstage\F3FMisje7\glassfish\bin\asadmin get IJServer001-1.system-property.HTTP_LISTENER_PORT IJServer001-1.system-property.HTTP_LISTENER_PORT.name=HTTP_LISTENER_PORT IJServer001-1.system-property.HTTP_LISTENER_PORT.value=28495 Command get executed successfully. |
/opt/FJSVisje7/glassfish/bin/asadmin get IJServer001-1.system-property.HTTP_LISTENER_PORT IJServer001-1.system-property.HTTP_LISTENER_PORT.name=HTTP_LISTENER_PORT IJServer001-1.system-property.HTTP_LISTENER_PORT.value=28495 Command get executed successfully. |
wscadminコマンドでWebアプリケーションを振り分け対象にする
Webサーバの存在するマシンでwscadminコマンドのadd-application-refサブコマンドを使用し、配備したWebアプリケーションを、Webサーバコネクタの振り分け対象に設定します。
例
連携させるWebサーバ名がFJapache、wscadmin add-instance-refの--targetで指定した値がIJServer001_002、WebアプリケーションのコンテキストルートがSampleApprの場合
C:\Interstage\F3FMwsc\bin\wscadmin add-application-ref --webserver FJapache --target IJServer001_002 SampleAppr |
/opt/FJSVwsc/bin/wscadmin add-application-ref --webserver FJapache --target IJServer001_002 SampleAppr |
Webコンテナへアクセスする運用形態の設定
asadminコマンドのsetサブコマンドを使用し、Webコンテナへアクセスする運用形態を“webserver”に設定します。詳細は、「ネットワーク設定の定義項目」の「Webコンテナへアクセスする運用形態」を参照してください。
IJServerクラスタの起動
asadminコマンドのstart-clusterサブコマンドで、各IJServerクラスタを起動します。
バーチャルホストを設定
Webサーバにバーチャルホストを設定し、IJServerクラスタが使用するバーチャルホストを設定することにより、バーチャルホスト単位にWebアプリケーションの振り分け先IJServerクラスタを設定することができます。バーチャルホストについては、「Interstage HTTP Server 2.2運用ガイド」-「機能」-「バーチャルホスト」を参照してください。
バーチャルホストを設定
バーチャルホストを設定します。設定方法は、「Interstage HTTP Server 2.2運用ガイド」-「環境設定」-「バーチャルホストの設定」を参照してください。
IJServerクラスタ、サーバーインスタンスの作成
IJServerクラスタやサーバーインスタンスを未作成の場合、asadmin create-clusterサブコマンド、create-local-instanceサブコマンドで、IJServerクラスタおよびサーバーインスタンスを作成します。
WebサーバとIJServerクラスタを連携
WebサーバとIJServerクラスタを同じマシンで運用する場合は、asadmin create-web-server-refサブコマンドで設定します。
WebサーバとIJServerクラスタを別のマシンで運用する場合は、Webサーバの存在するマシンでwscadmin add-instance-refサブコマンドで設定します。また、IJServerクラスタの存在するマシンにもWebサーバが存在する場合、asadmin delete-web-server-refサブコマンドでIJServerクラスタの存在するマシンのWebサーバとIJServerクラスタの連携を解除します。
IJServerクラスタにバーチャルホストを設定
IJServerクラスタにバーチャルホストを設定します。
WebサーバとIJServerクラスタを同じマシンで運用する場合は、asadmin create-virtual-host-refサブコマンドで設定します。
WebサーバとIJServerクラスタを別のマシンで運用する場合は、Webサーバの存在するマシンでwscadmin add-virtual-host-refサブコマンドで設定します。
バーチャルホストを設定したWebサーバと連携させる場合も、asadmin create-virtual-host-refまたはwscadmin add-virtual-host-refを実行する必要があります。
例
Webサーバ(FJapache)とIJServerクラスタを同じマシンで運用し、IJServerクラスタ(IJServer001)と連携するバーチャルホストが192.0.2.1/myhost、IJServerクラスタ(IJServer002)と連携するバーチャルホストが192.0.2.1:81/virtualhost1の場合
C:\Interstage\F3FMisje7\glassfish\bin\asadmin create-virtual-host-ref --target IJServer001 --webserver FJapache 192.0.2.1/myhost |
/opt/FJSVisje7/glassfish/bin/asadmin create-virtual-host-ref --target IJServer001 --webserver FJapache 192.0.2.1/myhost |
例
Webサーバ(FJapache)とIJServerクラスタを別のマシンで運用し、IJServerクラスタ(IJServer001)と連携するバーチャルホストが192.0.2.1/myhost、IJServerクラスタ(IJServer002)と連携するバーチャルホストが192.0.2.1:81/virtualhost1の場合
C:\Interstage\F3FMwsc\bin\wscadmin add-virtual-host-ref --target IJServer001 --webserver FJapache 192.0.2.1/myhost |
/opt/FJSVwsc/bin/wscadmin add-virtual-host-ref --target IJServer001 --webserver FJapache 192.0.2.1/myhost |
IJServerクラスタへのアプリケーションの配備
asadminコマンドのdeployサブコマンドで、各IJServerクラスタにアプリケーションを配備します。その際、以下となるようにしてください。
「アプリケーション名」が重複しないように、各IJServerクラスタで名前を変更する。
「コンテキストルート」は、すべてのIJServerクラスタで同じ値にする。
例
IJServerクラスタIJServer001、IJServer002にWebアプリケーションSampleAppr.warを配備する場合
C:\Interstage\F3FMisje7\glassfish\bin\asadmin deploy --name SampleAppr1 --contextroot /SampleAppr --target IJServer001 SampleAppr.war |
/opt/FJSVisje7/glassfish/bin/asadmin deploy --name SampleAppr1 --contextroot /SampleAppr --target IJServer001 SampleAppr.war |
WebサーバとIJServerクラスタを別のマシンで運用する場合、wscadminコマンドでWebアプリケーションを振り分け対象にする
WebサーバとIJServerクラスタを別のマシンで運用する場合、Webサーバの存在するマシンでwscadminコマンドのadd-application-refサブコマンドを使用し、配備したWebアプリケーションをWebサーバコネクタの振り分け対象に設定します。WebサーバとIJServerクラスタを別のマシンで運用する場合は、本手順は実施する必要はありません。
例
Webサーバ名がFJapache、IJServerクラスタがIJServer001、IJServer002、コンテキストルートがSampleApprの場合
C:\Interstage\F3FMwsc\bin\wscadmin add-application-ref --webserver FJapache --target IJServer001 SampleAppr |
/opt/FJSVwsc/bin/wscadmin add-application-ref --webserver FJapache --target IJServer001 SampleAppr |
Webコンテナへアクセスする運用形態の設定
asadminコマンドのsetサブコマンドを使用し、Webコンテナへアクセスする運用形態を“webserver”に設定します。詳細は、「ネットワーク設定の定義項目」の「Webコンテナへアクセスする運用形態」を参照してください。
IJServerクラスタの起動
asadminコマンドのstart-clusterサブコマンドで、各IJServerクラスタを起動します。