インストール済みのプロファイル内のポートを変更するには、updatePorts.ant スクリプトを使用します。
始める前に
各プロファイル・テンプレートには、
独自の updatePorts.ant スクリプトがあります。
アプリケーション・サーバー・プロファイルの updatePorts.ant スクリプトは、app_server_root/profileTemplates/template_name/actions ディレクトリーに入っています。このスクリプトを使用するには、更新するプロファイルを識別する必要があります。
このタスクについて
次の手順に従い、updatePorts.ant スクリプトの使用に習熟してください。
各ステップは演習になっており、updatePorts.ant スクリプトがサポートしている特定のメソッドを使用して、ポートを再割り当てします。
言及されているすべてのオペレーティング・システムについて、ステップを調べてください。違いは、主にスクリプト・ファイルの拡張子およびディレクトリーの区切り文字の指示にあります。
例えば、Linux のシェル・スクリプト (*.sh) やその他のコマンドの
前には、./ を付ける必要があります。こうすることで、そのコマンドが
現行作業ディレクトリーにあることを、オペレーティング・システムに知らせます。
プロシージャー
競合していないポートを AppSrv01 プロファイルに割り当てます。
ANT スクリプトは、デフォルトでは競合していないポートを割り当てます。特別な引数は必要ありません。完全修飾ディレクトリー・パス、プロファイル名、固有のノード名、および固有のセル名を指定します。次に、コマンドを実行します。
- ISO-8895-1 ファイル・エンコードでエンコードされた Java プロパティー・ファイルを作成し、競合していないポート値をアプリケーション・サーバー・プロファイルに割り当てます。
この例の場合は、システムが Linux オペレーティング・システムで、以下の /TMP/was_props/appserver.props プロパティー・ファイルを作成するものとしています。
WAS_HOME=/opt/IBM/WebSphere/AppServer
was.install.root=/opt/IBM/WebSphere/AppServer
profileName=AppSrv01
profilePath=/opt/IBM/WebSphere/AppServer/profiles/AppSrv01
templatePath=/opt/IBM/WebSphere/AppServer/profileTemplates/default
nodeName=appserver_node01
cellName=appserver_cell01
hostName=myserver.ibm.com
- コマンド・シェル・ウィンドウを開きます。
- /opt/IBM/WebSphere/AppServer/bin ディレクトリーに移動します。
cd /opt/IBM/WebSphere/AppServer/bin
(または、
製品がデフォルト以外のディレクトリーにインストールされている場合は、app_server_root/bin ディレクトリーに移動します。)
- コマンドを実行します。
./ws_ant.sh -propertyfile /TMP/was_props/appserver.props ¥
-file /opt/IBM/WebSphere/AppServer/profileTemplates/default/actions/updatePorts.ant
- 管理コンソールを開き、変更済みのポート割り当てを表示します。
ポート割り当てを表示するには、とクリックします。
- スクリプトを再度実行して、ポートを表示します。これらは以前と同じですか?
動的に割り当てられたポート値は、(プロファイル・ノード名の serverindex.xml ファイルにリストされた各サーバーの) AppSrv01 プロファイルに現在割り当てられているすべてのポートに適用されます。各ポートは、新規の非競合値を受信します。新規割り当て時にポート値が使用されるため、古いポート値割り当ては使用されません。
デフォルトのポートを AppSrv02 プロファイルに割り当てます。
ANT スクリプトは、デフォルトでは競合していないポートを割り当てます。defaultPorts=true という特殊な引数が必要です。完全修飾ディレクトリー・パス、プロファイル名、固有のノード名、および固有のセル名を指定します。次に、コマンドを実行します。
- ISO-8895-1 ファイル・エンコードでエンコードされた Java プロパティー・ファイルを作成し、デフォルトのポート値をアプリケーション・サーバー・プロファイルに割り当てます。
この例の場合は、システムが Windows オペレーティング・システムで、以下の C:¥temp¥was_props¥appserver.props プロパティー・ファイルを作成するものとしています。
WAS_HOME="C:¥Program Files¥IBM¥WebSphere¥AppServer"
was.install.root="C:¥Program Files¥IBM¥WebSphere¥AppServer"
profileName=AppSrv02
profilePath="C:¥Program Files¥IBM¥WebSphere¥AppServer¥profiles¥AppSrv02"
templatePath="C:¥Program Files¥IBM¥WebSphere¥AppServer¥profileTemplates¥default"
nodeName=appserver_node02
cellName=appserver_cell02
hostName=myserver2.ibm.com
defaultPorts=true
スペースを含む Windows のパス名は、二重引用符で囲みます。パスにスペースが含まれていない場合は、パス名を二重引用符で囲まないでください。
- DOS コマンド・ウィンドウを開きます。
- C:¥Program Files¥IBM¥WebSphere¥AppServer¥bin ディレクトリーに移動します。
cd "C:¥Program Files¥IBM¥WebSphere¥AppServer¥bin"
(または、
製品がデフォルト以外のディレクトリーにインストールされている場合は、app_server_root/bin ディレクトリーに移動します。)
- コマンドを実行します。
ws_ant.bat -propertyfile C:¥temp¥was_props¥appserver.props -file "C:¥Program Files¥IBM¥WebSphere¥AppServer¥profileTemplates¥default¥actions¥updatePorts.ant"
- 管理コンソールを開き、変更済みのポート割り当てを表示します。
ポート割り当てを表示するには、とクリックします。
- スクリプトを再度実行して、ポートを表示します。これらは以前と同じですか?
値はデフォルト値であるため、結果の割り当てポート値は毎回同じです。この方法では、競合するポート割り当ては解決しません。プロファイルのすべてのポート割り当てを表示するには、C:¥Program
Files¥IBM¥WebSphere¥AppServer¥profiles¥AppSrv02¥config¥cells¥appserver_cell02¥nodes¥appserver_node02¥serverindex.xml ファイルを参照してください。
マシンで使用中のすべてのポートを表示するには、netstat -a コマンドを発行します。
AppSrv03 プロファイルに、2050 で始まるポートを割り当てます。
ANT スクリプトは、デフォルトでは競合していないポートを割り当てます。startingPort=2050 という特殊な引数が必要です。完全修飾ディレクトリー・パス、プロファイル名、固有のノード名、および固有のセル名を指定します。次に、コマンドを実行します。
- ISO-8895-1 ファイル・エンコードでエンコードされた Java プロパティー・ファイルを作成し、デフォルトのポート値をアプリケーション・サーバー・プロファイルに割り当てます。
この例の場合は、システムが AIX オペレーティング・システムで、以下の /usr/tmp/was_props/appserver.props プロパティー・ファイルを作成するものとしています。
WAS_HOME=/usr/IBM/WebSphere/AppServer
was.install.root=/usr/IBM/WebSphere/AppServer
profileName=AppSrv03
profilePath=/usr/IBM/WebSphere/AppServer/profiles/AppSrv03"
templatePath=/usr/IBM/WebSphere/AppServer/profileTemplates/default"
nodeName=appserver_node03
cellName=appserver_cell03
hostName=myserver3.ibm.com
startingPort=2050
- コマンド・シェル・ウィンドウを開きます。
- /usr/IBM/WebSphere/AppServer/bin ディレクトリーに移動します。
cd /usr/IBM/WebSphere/AppServer/bin
(または、
製品がデフォルト以外のディレクトリーにインストールされている場合は、app_server_root/bin ディレクトリーに移動します。)
- コマンドを実行します。
./ws_ant.sh -propertyfile /usr/tmp/was_props/appserver.props ¥
-file /usr/IBM/WebSphere/AppServer/profileTemplates/default/actions/updatePorts.ant
- 管理コンソールを開き、変更済みのポート割り当てを表示します。
ポート割り当てを表示するには、とクリックします。
- スクリプトを再度実行して、ポートを表示します。これらは以前と同じですか?
-startingPort オプションを使用すると、以上のステップによって動的に割り当てられたポート値は、毎回同じにはなりません。ANT スクリプトは、startingPort 番号 (この例の場合は、ポート 2050) から始まる、競合していないポート値を割り当てるからです。この方法では、競合するポート割り当てが解決されます。
ポート定義プロパティー・ファイルを使用して、ポートを AppSrv04 プロファイルに割り当てます。 ANT スクリプトは、デフォルトでは競合していないポートを割り当てます。portsFile=/opt/was/portdefs.our_appsrv_ex.props という特殊な引数が必要です。完全修飾ディレクトリー・パス、プロファイル名、固有のノード名、および固有のセル名を指定します。次に、コマンドを実行します。
- ISO-8895-1 ファイル・エンコードでエンコードされた Java プロパティー・ファイルを作成し、競合していないポート値をアプリケーション・サーバー・プロファイルに割り当てます。
以下の
/opt/was/portdefs.our_appsrv_ex.props プロパティー・ファイルを作成するものとします。
WC_defaulthost=19080
WC_adminhost=19060
WC_defaulthost_secure=19443
WC_adminhost_secure=19043
BOOTSTRAP_ADDRESS=22809
SOAP_CONNECTOR_ADDRESS=28880
SAS_SSL_SERVERAUTH_LISTENER_ADDRESS=29401
CSIV2_SSL_SERVERAUTH_LISTENER_ADDRESS=29403
CSIV2_SSL_MUTUALAUTH_LISTENER_ADDRESS=29402
ORB_LISTENER_ADDRESS=39100
DCS_UNICAST_ADDRESS=39353
SIB_ENDPOINT_ADDRESS=37276
SIB_ENDPOINT_SECURE_ADDRESS=37286
SIB_MQ_ENDPOINT_ADDRESS=45558
SIB_MQ_ENDPOINT_SECURE_ADDRESS=45578
SIP_DEFAULTHOST=45060
SIP_DEFAULTHOST_SECURE=45061
注: ポート定義プロパティー・ファイルで使用されるポートは、テンプレート・タイプを反映したものである必要があります。この例のポートは、デフォルトのテンプレート・タイプに対応しており、他のテンプレート・タイプの場合は異なっていることがあります。これらのポートは、テンプレート・ディレクトリー内の portdef.props ファイルをモデルにすることができます。
次の /TMP/was_props/appserver.props プロパティー・ファイルを作成するとします。
WAS_HOME=/opt/IBM/WebSphere/AppServer
was.install.root=/opt/IBM/WebSphere/AppServer
profileName=AppSrv04
profilePath=/opt/IBM/WebSphere/AppServer/profiles/AppSrv04
templatePath=/opt/IBM/WebSphere/AppServer/profileTemplates/default
nodeName=appserver_node04
cellName=appserver_cell04
hostName=myserver4.ibm.com
portsFile=/opt/was/portdefs.our_appsrv_ex.props
- コマンド・シェル・ウィンドウを開きます。
- /opt/IBM/WebSphere/AppServer/bin ディレクトリーに移動します。
cd /opt/IBM/WebSphere/AppServer/bin
(または、
製品がデフォルト以外のディレクトリーにインストールされている場合は、app_server_root/bin ディレクトリーに移動します。)
- コマンドを実行します。
./ws_ant.sh -propertyfile /TMP/was_props/appserver.props ¥
-file /opt/IBM/WebSphere/AppServer/profileTemplates/default/actions/updatePorts.ant
- 管理コンソールを開き、変更済みのポート割り当てを表示します。
ポート割り当てを表示するには、とクリックします。
- スクリプトを再度実行して、ポートを表示します。これらは以前と同じですか?
以上のステップによって割り当てられたポート値は、props ファイルから得た値です。したがって、値は変更されません。この方法では、競合するポート割り当ては解決しません。
結果
この手順は、結果的に、updatePorts.ant スクリプトを使用した 4 とおりのポート割り当て方式になります。
次の作業
ポート値はさまざまな方法で変更できます。
install コマンドおよびサイレント・インストールの応答ファイルも、この項目で説明したのと同じ方法によるポート値の設定をサポートしています。実際、これら 2 つのインストール方法では、以下の同じオプションが使用されています。
- -OPT PROF_defaultPorts=
値は不要です。等号は、標準化の誤表記です。
- -OPT PROF_startingPort="nnnn"
- -OPT PROF_portsFile="path_to_portsdef.props file"
- install コマンドを呼び出す際に、上記の引数の 1 つを省略した場合、またはサイレント応答ファイルから上記の引数の 1 つを除いた場合、デフォルト・アクションでは、競合しないポート値が割り当てられます。
グラフィカル・ユーザー・インターフェース・インストールおよびサイレント・インストールにまったく同じオプションが使用されているのは、偶然ではありません。
ほとんどの WebSphere Application Server コンポーネントのインストール・プログラムは、
WebSphere Application Server の共通インストール・エンジンを実装したものです。ANT スクリプトにまったく同じアクションを使用するのは、同じ設計テーマが普及しているためであり、それによってユーザーが簡単にインストール経験を積めるようにするためです。