A Webサーバーのプラグが抜かれた場合、すべてのユーザーを別の都市のB Webサーバーに自動的にリダイレクトするにはどうすればよいですか?


15

A Webサーバーのプラグが抜かれた場合、すべてのユーザーを別の都市のB Webサーバーに自動的にリダイレクトするにはどうすればよいですか?

負荷分散スイッチは、両方のWebサーバーが同じ建物内にない限り、どのように機能させるかわからないことを除いて、私が望むことを行います。

高可用性クラスタリングシステムは、両方のWebサーバーが同じ建物内にない限り、どのように機能させるかわからないことを除いて、私が望むことを行います。

メインWebサーバーがダウンしているときに別のWebサーバーの静的ページにリダイレクトする」に対する受け入れられた回答、2つの異なる都市のWebサーバーをサポートしているようです。しかし、1つのボックスにソフトウェアをインストールすると、そのボックスを取り外した後にどのように役立ちますか?

ラウンドロビンDNSおよびコンテンツ配信ネットワーク(CDN)はどのようにそれを行いますか?

私は1つのアプローチが次のようなものから始まると思います:

  1. 物理的なWebサーバーのすべてのIPアドレスを取得します。
  2. 物理的なWebサーバーのすべてのIPアドレスを、 "the" Webサイトの単一ドメイン名(複数のAレコードまたはAAAAレコードまたは両方)のDNSレコードに入れます。
  3. ...次に何をする必要がありますか?

別のアプローチは次のようなものから始まると思います

  1. ユーザーがWebブラウザーに入力することを期待する単一のドメイン名に、いくつかの動的DNSプロバイダーを使用します
  2. 各Webサーバーでcronジョブを設定し、定期的にDNSプロバイダーに独自のIPアドレス(AレコードまたはAAAAレコードを更新)または独自のドメイン名(CNAMEレコードまたはDNAMEレコードを更新)に通知します。
  3. ...次に何をする必要がありますか?

(今のところ、WebサーバーAが接続されていないときはいつでも、ユーザーが連絡先情報と「メインA Webサーバーがダウンしているように見える」という脚注を含む静的なWebページを手に入れれば幸いです。 「サーバーが見つかりません」というエラーを単に表示する現在のシステムです。理想的には、AとBを完全に同期し、見かけ上は同一にしたいのですが、それは別の質問です:CDNと同等ですが、動的コンテンツですか?)。


回答:


6

グローバルサーバーロードバランシング(GSLB)ソリューションを探しているようです。GSLBは通常、「スマート」DNSを使用して、多数のパラメーター(サーバーの使用不可、高負荷、IPジオロケーションなど)に基づいてユーザーを異なるサーバーに誘導します。

例として、西に1つ(10.10.10.1/24)と東に1つ(10.20.20.1/24)の2つのWebサーバーがあるとします。Webホスト名がwww.connect.comであるとします。

GSLBは、DNSまたはCNAMEとして構成できます。いずれにせよ、ユーザーがwww.connect.comと入力すると、dnsクエリはGSLBソリューションに向けられ、パラメーターに応じて10.10.10.1または10.20.20.1で応答します。GSLBは通常、TTLを低く設定して、クライアントホスト/ブラウザができるだけ短い時間応答をキャッシュするようにします。永続性に対処するにはさまざまな方法がありますが、それはこのシナリオの範囲を超えています。

東(10.20.20.1)Webサーバーがダウンしたとしましょう。GSLBは通常、ヘルスチェックを実装して、バックエンドノードのヘルスをチェックします。GSLBは、東がダウンしていることを通知し、www.connect.comの後続のDNSレコードはすべて10.10.10.1に解決されます。

ローカルサーバーロードバランシングソリューション(SLB)がある場合、www.connect.comが2つのバックエンドノード(10.10.10.1/24と10.20.20.1/24)。技術的には、ローカルSLBが他のサーバーに到達できる限り、ノードは異なるネットワークセグメントに存在できます。SLBソリューションは、バックエンドノードがダウンした場合に利用可能なサーバーにユーザーをリダイレクトするのに十分なほどスマートです。F5 LTMを使用している場合、そのようなイベントのiRuleを簡単に作成できます。Citrix NetScalerおよび他のSLBソリューションにも同様の機能が必要です。

この場合、RR DNSは機能しません。RR DNSにはインテリジェンスが組み込まれていません。DNSでユースケースを達成する唯一の方法は、GSLB(または同様の)ソリューションを介して何らかの「スマート」DNSを使用することです。

通常、CDNはGSLB / SLBソリューションを実装して、顧客のHAを保証します。


デビッドは:F5がされているCisco ANSのほかにアプライアンスを、あなたはとしてそれを持つことができる サービス tzoha、edgedirectorとdnshatのように、
Sandman4

実際、F5、Citrix / NetScalerはどちらもGSLB用の仮想アプライアンスを提供しています。A10、radware、zeus、brocade、alteonなどは、仮想アプライアンスも提供する可能性があります。しかし、GLSB SaaSサービスプロバイダーが存在することは間違いありません。おそらく、設備投資の代わりにopexを使用してインフラストラクチャを構築することにより、ポケットブックで簡単になりますが、SaaSモデルにはそのリスク(SLA、運用、サポート)があります。edgedirectorやdnshatについて聞いたことがありませんが、どちらも競争力のある価格です!
bangdang

1
複数のAレコードと比較して、「グローバルサーバーの負荷分散{原因}によって高可用性が低下する」と言われました。「10.10.10.1」または「192.168.1.1」または他のプライベートネットワークアドレスは、パブリックインターネットでは機能しないと言われました。すべてのローカルサーバーバランシングシステムは、(a)すべてのWebサーバーが同じ建物にある必要があると言われました。または(b)単一障害点がある。どちらもHAシステムでは避けるべきです。これらの問題を回避する方法はありますか?
デビッドケーリー

2

F5やCisco makeなどのグローバルロードバランサーを調べます。基本的に、パートナーがダウンしている場合はDNSでいくつかのトリックを実行し、パートナーがアップしている場合はロードバランサーを介して相手側にデータをフィードします。



0

もしあなたがあなたの環境でどんな種類のリバースプロキシを使っているのか教えてください。もしそうならあなたはそれをバックアップサーバーにリダイレクトできるかもしれません。

そうでない場合は、F5を使用することをお勧めします。

また、サードパーティのドメインレジストラーでドメインを登録している場合、新しいサーバーまたはバックアップサーバーにリダイレクトするDNSサーバー設定を取得できます。


0

少なくとも次の2つの方法を使用してネットワークアプライアンスを使用せずにこれを行うことができますが、変更制御が必要になります。

  • リバースプロキシ、プロキシの候補から切断するサーバーを削除する必要があります

  • DNS、事前に計画し、DNSを変更し、TTLが通過するのを待つ必要があります

また、特にルーティングプロトコルを使用して静的ページを提供するWebサーバーの場合、自動負荷分散とアクティブ/アクティブフェールオーバーを実行できます。EGPおよびIGRPをチェックアウトします。ルータを介して2つ以上のホストでこれを行う方法を詳しく説明したオンラインのヘルプ資料(特にシスコに関連)が必要です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.