複数のネットワークカード(NIC)を備えたWindowsサーバーで動作するSharePlexが宛先への通信の際、別のNICに割り当てられたIPアドレスにbindして通信を試みてしまいます。
どのような対策がありますでしょうか。
Windows版SharePlexでは SP_SYS_HOST_NAME を与えていてもそれがシステムのホスト名と同じ値の場合、プロセスがソケットクライアントとして特定のIPアドレスへbindする際に OS内部で優先されるNICを使用してしまう場合があります。
その結果、宛先マシンのあるネットワークへルーティングできない等の通信ができない状況が発生しえます。
関連ドキュメント
Export connection refused when using VIP in a clustered environment. (4303771)
SharePlex 12.1 - Installation and Setup Guide : Network checklist | Resolve to the right network card
一つの対処としてはそのSharePlex用IPアドレスに固有の別名を定義し名前解決できるようにした上でSP_SYS_HOST_NAMEを設定することです。
お試しください。
例:
作業前の準備:
既にアクティベーションしている場合は事前にdeactivate config して shutdown(SpUtilsから停止) するか、あるいは ora_cleanspしてアクティベート状態を解除しておきます。
自身のホスト名とは異なる新しい名前を定義して正引き解決できるようにします。
このサーバーおよびこのサーバーに接続するSharePlexの通信を行うサーバーでは同じように名前解決ができるように構成してください。
別名の例: wnora22sp
hostsファイルエントリ追加例:
10.10.30.13 wnora22sp
レジストリキー HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Quest Software\SharePlex\ポート番号 の配下に SP_SYS_HOST_NAME (文字列型REG_SZ) を作り、
値 (例 wnora22sp) を設定します。
SharePlexを起動・activate configを行い、SharePlex Exportプロセスが目当てのIPアドレスを使用しているかをOSコマンドなどから確認します。
サーバーマシンのネットワーク構成やセキュリティ設定などによって挙動が異なる場合があります。
より多くの支援を必要とする場合プロフェッショナルサービス窓口(PSO)へご相談ください。