メインWebサーバー(現在はRackspace Cloudインスタンス)がダウンしている場合、静的Webページにフォールバックしたいと思います。これは、発生するはずのない、しかし以前に発生した一種の最悪のシナリオです(たとえば、バックスペースハードウェア障害)。サーバーの冗長性が最適なソリューションですが、予算が懸念されます。そのため、現在唯一のサーバーで問題が発生した場合は、低コストのautoMaticフォールバックを検討しています。
DNSラウンドロビン設定を使用するある種の2番目のサーバーがない限り、サーバーの前にロードバランサーがあり、サービスの可用性を定期的にチェックして、リクエストを別の場所にリダイレクトできるかどうかを確認することをお勧めします。停止。
基本的に、単一のサーバーでできることは何もありません。明らかに、サービスの停止はサーバーの完全な損失が原因である可能性があるため、外部から駆動する必要があります。
唯一のサーバーに何かが起こった場合、低コストのautoMaticフォールバックを探しています
これを行う一般的な方法は次のとおりです:
どこかで安価な共有ホスティングプランで「メンテナンスのためにダウンしています」ページをホストします。
HTTPヘルスモニタリングも組み込まれているDNSプロバイダーを使用します。通常の操作中、DNSホストはメイン(ラックスペース)サーバーのIPアドレスを提供します。メインサーバーがダウンしている場合、DNSプロバイダーは安価な共有ホスティングプロバイダーのIPを提供します。このようなDNSプロバイダーの例は、EdgeDirector、DNSMadeSimple、easyDNSです。
ただし、これはゲットーソリューションであることに注意してください。それは多かれ少なかれ機能しますが、世界中のDNSキャッシュはあなたのIPアドレスをキャッシュし、時には指定された存続時間(キャッシュ時間)より長くキャッシュします。したがって、 時間の経過とともにフェイルオーバーは大きくなります 。 1時間が一般的です DNSの存続可能時間の値に関係なく。
これを行うためのより良い方法は、Chopper3とScott Forsythが書いているように、フォールバックサーバーを備えたサーバーの前にあるHTTPロードバランサーです。
Chopper3のコメントに+1。
クラウドサーバーのペアの前にリバースプロキシを設定する場合は、フェイルバックオプション(別名Sorry Server)を設定できます。または、アプリレイヤーが頻繁に停止するのにサーバーが停止しない場合は、1つのボックスでこれを実行することもできます。 (そのクラウドインスタンスがサイトのみであるかどうか、またはサーバーにアクセスできるかどうかはわかりません)
Microsoftの分野では、Application RequestRoutingはこれに完全に対応しています。 Linuxの分野ではSquidだと思います。
私はdebianで haproxy を使用して、いくつかのWindowsマシンの前でフェイルオーバーを提供しましたが、これは非常にうまく機能します。ハートビートを使用してこれらのサーバーをペアリングし、プロキシフェイルオーバーを取得することもできます。