VMware Global Community
hdek
Contributor
Contributor

仮想マシーン間の通信

いつも大変お世話になります。

ESXホストをまたがる仮想マシーン間の通信について教えていただくお願いいたします

同一セグメントで、oracleを使用したwebサーバとレポートを出すサーバが動いているのですが

同一ホスト上では、問題なく連携して動作するのですが、別々のホストにサーバがいると

うまくアプリケーションが動作しなくなります。

仮想マシーンの包括をしておけば良いとは思いますが、なぜこのような現象が発生するのか

それぞれのESXホスト/仮想マシーンに何かしらの設定をすることで回避できるのか、

もしくは、仮想OS上で何かしらの設定がいるのか、またoracleに限らずこのような

経験をされた方、どのような対策をされているか、ご教授いただきたくよろしくお願いいたします。

補足

ハード IBM BladeCenter にてHS22をポートVLANにてネットワークを使用

物理NICを2枚使用し、

vSwitchの設定は(0/1)アクティブ/アクティブ

management network(0/1) アクティブ/スタンバイ

VM Network      (0/1) スタンバイ/アクティブ

その他の設定はデフォルトで使用しております。

Reply
0 Kudos
6 Replies
myamamoto
Expert
Expert

こんにちは。

問題の切り分けとしてですが、別々のサーバでDBサーバのVMとWebサーバのVMもしくはその他のVMを配置した際に、それぞれネットワーク疎通ができていますか?

Ping等のコマンドで確認できるかと思います。

ネットワーク疎通ができていない場合にはESXホストのvSwitchの設定もしくは、ブレードサーバのシャーシでのVLAN設定に原因があると考えられます。

Reply
0 Kudos
hdek
Contributor
Contributor

myamamoto様

お世話になります。

ご回答ありがとうございます。

別ホストにいる場合でも、問題となっているゲストOS間で

PING等は問題なく出来ております。

Reply
0 Kudos
DrDoraemon
Enthusiast
Enthusiast

お疲れ様です。

一点確認ですが、レポート等のシステムが別ホストの場合うまく動作しないとのことですが、

その際のエラーはどのようなエラーでしょうか?

「ORA-XXXX」系であれば、そのメッセージを教えてください。

また、ゲストOS間で、OSのファイアーウォール機能が有効になっているとかはないでしょうか?

OracleのバージョンやゲストOSの種類等を教えて頂けると、もう少し細かくアドバイスが出来るかもしれません。

よろしくお願い致します。

Reply
0 Kudos
hdek
Contributor
Contributor

DrDoraemon様

お世話になります。また、回答が遅くなり申し訳ございません。

ご質問いただいている内容についてご回答いたします。

>「ORA-XXXX」系であれば、そのメッセージを教えてください。

REP-51002 -「Reports Server <レポート・サーバー名>へのバインドに失敗しましたが表示されます。

>また、ゲストOS間で、OSのファイアーウォール機能が有効になっているとかはないでしょうか?

WINDOWS2K3のファイヤーウォールはサービスから止めてあります。

ウィルス対策ソフトにシマンテックのエンドポイント11を使っておりますが同一サーバ上では上記のような

現象が発生しないため問題ないと思っております。

>OracleのバージョンやゲストOSの種類等を教えて頂けると、もう少し細かくアドバイスが出来るかもしれません

O/S:Micorsoft Windows Server 2003 R2 Standard Edition Service Pack 2
Oracle:Oracle Application Server Forms and Reports Service 10g 10.1.2.0.2

サーバーの構成(用途)は、次のようになっています。
(1) Formsサーバー   ×  3台
(2) Reportsサーバー ×  1台
※  O/S、Oracleのバージョンは、上記4台とも同じです。

現象を再度申しますと、
FormsサーバーとReportsサーバーを異なるESXホストで稼働させると、

FormsからリクエストしたReportが冒頭のエラー(REP-51002)で出力されない。

同一ESXホストにゲストO/S、4台が存在すると、問題なく稼動しまた、別ホストから

vMotionでゲストO/Sを移動させると、OSやOracleの再起動なしで正常に出力されるようになります。

以上です、なにとぞよろしくお願いいたします。

Reply
0 Kudos
DrDoraemon
Enthusiast
Enthusiast

お疲れ様です。

なるほど、OracleDBではなく、APですね。

あまり、アプリケーション側のサーバーは詳しくないのですが、同一サーバー上ということは、同一NICで、

物理サーバーが分かれた場合に通信できないとなると、物理NICをまたぐような動作をした際に出るような感じですね。

同一サーバーの場合vSwitch内で通信が終わる作業が、物理サーバーが分かれることで

通信がまたぐのが影響しているような気がしますね。

以前、内容は違うのですが、物理NICと仮想NICでうまく通信が出来ないアプリケーションがあり、

「プロミスキャスモードを有効」にすることで対応したケースがあります。

ちょっと直接関係がない可能性もあるのですが、物は試しで設定を変更してみてください。

vSwitchのセキュリティタブ内に、「無差別モード」というのがありますので、こちらを有効にしてみてください。

これで、現象が変ればよいのですが・・・。

あとは、APサーバーがどんな通信をしているか等々の確認が必要ですね。

マルチキャストを利用している場合とかは、なんらかの調整がいるのかもしれませんね。

hdek
Contributor
Contributor

DrDoraemon様

回答ありがとうございます。

他の仮想サーバも問題の仮想サーバも実稼動しているので

プロミスキャスモードを有効にしてテストする環境が整ったら実施してみたいと思います。

>あとは、APサーバーがどんな通信をしているか等々の確認が必要ですね。

これについては、システム構築会社に確認してみます。

>マルチキャストを利用している場合とかは、なんらかの調整がいるのかもしれませんね。

もしよければ、たとえばでいいので、どのような調整があるのか教えていただけると幸いです。

Reply
0 Kudos