5.4.5 同一ホスト上で物理ホスト環境と論理ホスト環境を構築する場合の設定
同一ホスト上で物理ホスト環境と論理ホスト環境を構築する場合,ネットワーク制御の設定が必要です。Windowsでこの設定をしない場合,論理ホストのIPアドレスが物理ホストに割り当たった状態で動作するため,論理ホストへの要求を物理ホストが受信することがあります。また,運用中に物理ホスト名から解決されるIPアドレスが予期しないIPアドレスに変更され,JP1の通信が正常に機能しないことがあります。これを回避するには,論理ホストのJP1/Baseを構築するときに,次に示す手順でネットワーク制御を設定してください。
-
テキストエディター(メモ帳など)で次に示すような定義ファイルを作成する。
物理ホスト名 物理IPアドレス #ノード1
物理ホスト名 物理IPアドレス #ノード2
定義ファイルのファイル名は任意です。物理ホスト名と物理IPアドレスは,そのホストの環境に合わせて定義してください。物理ホスト名には,hostnameコマンドを実行した結果,表示されるホスト名を指定してください。また,物理ホスト名と物理IPアドレスの間は,一つ以上の半角スペースかタブで区切ってください。#以降は改行されるまでコメント扱いとなります。なお,ファイルの最終行には改行を入れてください。
(例)jp1-node1(IPアドレスは100.100.100.1)とjp1-node2(IPアドレスは100.100.100.2)の2ノードクラスタ,論理ホストjp1-clusterの場合,次に示す定義ファイルを作成します。
jp1-node1 100.100.100.1
jp1-node2 100.100.100.2
-
jp1hosts情報またはjp1hosts2情報の設定を反映する。
- jp1hosts情報の場合
-
jbshostsimportコマンドを実行して,定義ファイルの内容を物理ホスト,論理ホストの共通定義情報に反映します。jbshostsimportコマンドの詳細については,「15. コマンド」の「jbshostsimport」を参照してください。
また,イベントサービスの通信設定も変更します。
(例)物理ホスト,論理ホストの共通定義情報に反映するために,次に示すようにjbshostsimportコマンドを実行します。
・物理ホスト,論理ホストのJP1/Baseのサービスを停止
・jbshostsimport -o 定義ファイル名
・jbshostsimport -o 定義ファイル名 -h jp1-cluster
・物理ホストのイベントサーバ設定ファイル(conf)のportsパラメーターを設定
(例)
jp1-node1:
ports 100.100.100.1 jp1imevt jp1evtapi
jp1-node2:
ports 100.100.100.2 jp1imevt jp1evtapi
・API設定ファイル(api)のserverパラメーターを追加
(例)
server jp1-node1 keep-alive 100.100.100.1
server jp1-node2 keep-alive 100.100.100.2
・物理ホスト,論理ホストのJP1/Baseのサービスを起動
- jp1hosts2情報の場合
-
jbshosts2importコマンドを実行して,定義ファイルの内容を物理ホストに登録します。jbshosts2importコマンドの詳細については,「15. コマンド」の「jbshosts2import」を参照してください。
なお,イベントサービスの通信設定を変更する必要はありません。
(例)次に示すようにjbshosts2importコマンドを実行します。
・物理ホスト,論理ホストのJP1/Baseのサービスを停止
・jbshosts2import -o 定義ファイル名
・物理ホスト,論理ホストのJP1/Baseのサービスを起動
なお,論理ホストのjp1hosts2情報で+PhysicalMergeパラメーターに0を設定している場合は,論理ホストのjp1hosts2情報にも定義ファイルの内容を登録してください。
-
jp1hosts情報またはjp1hosts2情報に反映した内容を確認する。
次に示すコマンドを実行して,反映した内容が正しいか確認します。
(例)
物理ホストjp1-node1の設定確認
c:\>インストール先フォルダ\bin\jp1ping jp1-node1
LogicalHostnameKey : no define. use JP1_DEFAULT
jp1hosts : Use jp1hosts entry in JP1_DEFAULT
Search jp1hosts : jp1-node1 is found.
Resolved Host List : jp1-node1 -> jp1-node1(100.100.100.1)
:
物理ホストjp1-node2の設定確認
c:\>インストール先フォルダ\bin\jp1ping jp1-node2
LogicalHostnameKey : no define. use JP1_DEFAULT
jp1hosts : Use jp1hosts entry in JP1_DEFAULT
Search jp1hosts : jp1-node2 is found.
Resolved Host List : jp1-node2 -> jp1-node2(100.100.100.2)
:
論理ホストjp1-clusterの設定確認
c:\>インストール先フォルダ\bin\jp1ping -h jp1-cluster jp1-node1
LogicalHostnameKey : jp1-cluster
jp1hosts : Use jp1hosts entry in jp1-cluster
Search jp1hosts : jp1-node1 is found.
Resolved Host List : jp1-node1 -> 100.100.100.1(100.100.100.1)
:
c:\>インストール先フォルダ\bin\jp1ping -h jp1-cluster jp1-node2
LogicalHostnameKey : jp1-cluster
jp1hosts : Use jp1hosts entry in jp1-cluster
Search jp1hosts : jp1-node2 is found.
Resolved Host List : jp1-node2 -> 100.100.100.2(100.100.100.2)
:
この例のように,Resolved Host Listの行に,設定したとおりに「物理IPアドレス」が表示されている場合は,正しく設定されています。もし,設定した内容と表示が異なる場合は,定義ファイルを見直してやり直してください。