web-dev-qa-db-ja.com

冗長アダプターが利用可能な場合、Windowsはどのネットワークアダプターを使用するかをどのように選択しますか?

次の構成があります。2つのWindowsServer 2008非仮想マシン(データベースサーバーとアプリケーションサーバー)が、高速のもの(1 Gbps)と低速のもの(100 Mbps)の2つのネットワークアダプターを介して同じネットワークに接続されています。 。それらは異なるIPを持っていますが、同じ構成を共有しています。

The schema of the network installation

アプリケーションサーバーは、データベースまたはファイル共有のいずれかから別のサーバーにデータを要求します。マシン名\\DataServer01\<FileName>を使用して共有に接続します。 DNSサーバーの\\DataServer01に関連付けられている最初のIPは192.168.1.19(1 Gbpsアダプターで使用)です。毎回使用し、遅いものは速いものが失敗した場合にのみ使用したい。

アプリケーションサーバーが共有からファイルを最大速度でダウンロードする場合もありますが、転送ではアプリケーションサーバー側で高速の192.168.1.22が使用され、データベースサーバー側で低速の192.168.1.18が使用され、速度が約11に制限される場合があります。 MB /秒。

正確なメトリックはありませんが、私が見たところ、半分の時間、ランダムにデフォルトの接続を使用できないと思います。

\\192.168.1.19\<FileName>の代わりに\\DataServer01\<FileName>を指定すると、すべてが正常に最大速度で動作します。

何が起こっているのかを診断する方法は?共有からファイルを送信するときにWindowsにランダムなネットワークアダプターを選択させるポリシーはありますか? DNSサーバー(Windows Server 2008の役割)をチェックインするための設定はありますか?

5

Devicenullが言ったように、これは名前解決の問題です。

私が疑っているのは、NetBIOS名前解決を使用しているということです。 WINSサーバーがネットワーク上で実行されていない場合、この名前解決はネットワークブロードキャストを介して機能します。

サーバー上のどちらのカードがこのブロードキャストに最初に応答するかは、名前解決キャッシュエントリの有効期限が切れるまで(10分または15分だと思います)使用されるカードであり、その後、別のブロードキャストが行われます。

これについて詳しくは、こちらをご覧ください: http://www.techrepublic.com/article/how-netbios-name-resolution-really-works/5034239

4
Brad

さて、最初に、2番目の接続がプライマリ接続の負荷を処理できない場合、それは実際には冗長ではありません。 500メガビット/秒のトラフィックをプッシュしているときにプライマリカードに障害が発生するとどうなりますか?セカンダリカードはそれに追いつくことができなくなります。なぜあなたはこれをやっている?おそらく、他のテクノロジーを利用したほうがよいでしょう。

ここで発生している問題は、IPアドレスの代わりにホスト名を使用していることが原因である可能性があります。たまたまネットワークに最初に登録されたカードが、ホスト名が割り当てられたカードになります。これはランダムになります(コンピューターの電源がオンになったタイミング、カードが起動したタイミングなどによって異なります)。

ここには本当に賢い解決策はありません。常にプライマリアダプタでホスト名を最初にアナウンスするようにコンピュータを説得できない限り、これを希望どおりに機能させることはできません。ギガビットイーサネットアダプタはそれぞれ約13ドルです。さらに、2つ選んで、100メガビットのoensの使用をやめてみませんか。

3
devicenull

まず、アダプターは冗長ではありません。あなたは2つの別々のアダプターを持っていますが、それは冗長と同じものにさえ近くありません。アダプターでチーミングをセットアップする必要があります。それらはshould同じベンダーのものであり、そのベンダーのチーム化ツールを使用しています。それらshouldも同じ速度であり、異なる速度で動作する可能性がありますが、この種のセットアップが推奨されない理由があります。

チーム化したら、フェイルオーバーの冗長性を備えたプライマリを指定できます。現在のセットアップは障害耐性がありません。使用中のNICのプラグを抜くことで、これをすばやくテストできます(このようなテストはサーバーのセットアップの一部であり、機能がないと思われる場合は、テスト済みは、機能していないと見なす必要があります:冗長性、バックアップソリューション、パフォーマンス、すべて)。

1
Chris S