
MSSQL 用にカスタマイズされた HA プログラムを開発する予定でしたが、クラスターに関するいくつかの記事を読んでいるときに疑問が生じました。
マスターがダウンすると、スレーブは新しいマスターに投票し、新しいマスターが古いマスターの仮想 IP アドレスを引き継ぎます。
ここでの仮想 IP アドレスとは何ですか?
例えば:
A: マスター 192.168.1.100
B: スレーブ 192.168.1.101
C: スレーブ 192.168.1.102
A に別の IP アドレスが割り当てられていますか? または IP 192.168.1.100 は仮想 IP ですか? 追加のネットワーク カードを追加することはできません。
Windows システム。
答え1
正確に何をしようとしているのかはわかりませんが、組み込まれているか、同様の効果を持つ外部関数に依存しているため、ほとんど一致する傾向があるクラスター アドレスの基本を以下に示します。
HA クラスターは通常、個々のクラスター ノードに固有の IP アドレスに加えて、クラスターに属する 1 つ以上のクラスター IP アドレスを作成します。
設定と特定の技術に応じて、このクラスタアドレスは一般的に次のいずれかになります。
クラスター ノードの 1 つにバインドし (つまり、そのノードの NIC MAC アドレスに関連付けられます)、そのノードがアクティブ ノードになります。フェイルオーバー時には、別のノードがその MAC アドレスをクラスター IP アドレスにバインドし、アクティブ ロールを引き継ぎます。
すべてまたは一部のクラスター ノードがサブスクライブできるマルチキャスト MAC アドレスに関連付けられ、複数のアクティブ ノードを持つことができます。このシナリオでは、クラスター IP アドレスはマルチキャスト IP アドレス (バインディング プロトコルに準拠) にすることも、まれに (Microsoft NLB クラスターなど)、マルチキャスト MAC アドレスにバインドする IP ユニキャスト アドレスにすることもできます (この場合、ネットワーク ルーター/スイッチは、通常は追加の構成ディレクティブを通じて、このプロトコルに準拠していない L3/L2 マッピングを処理できる必要があります)。
クラスターは通常、クライアントからクラスターへのトラフィックにのみクラスター アドレスを使用し、状態情報やハートビートなどのクラスター内トラフィックには個々のノード アドレスを使用します。クラスター内トラフィックは、専用ネットワーク上に配置される場合があります。