web-dev-qa-db-ja.com

CloudFlareは別のバックエンドへの自動フェイルオーバーを実行できますか?

別のDC=にすばやくフェイルオーバーする簡単な方法を探しています。ヘルスチェックなどの点でCloudFlareはこれに関して特別な何かを提供していますか、それとも標準のDNSサービスのようですか?

19
henry.oswald

現時点では自動フェイルオーバーはありません(私たちが見ているもの)。もちろん、ゾーンファイル内の追加のDNSエントリをサポートすることもできますが、現時点では、この状況を手動で変更する必要があります。

13
damoncloudflare

更新:CloudFlareは、この種のフェイルオーバーを正確に実行できるTraffic Manager機能のクローズドベータ版を開始しました。

https://www.cloudflare.com/traffic-manager/


AWSフェイルオーバー:

次のソリューションは、AWSでバックエンドシステムをホストしている場合にうまく機能するようです。

  1. AWS Route 53ゾーンを別のドメイン(たとえば、failover-example.com)でセットアップしました。 Route 53を使用すると、DNSフェイルオーバーを使用してバックエンドサーバー(ロードバランサーなど)のヘルスチェックを設定できます。 AWSは、DNSレコードリストから異常なバックエンドシステムを削除します。
  2. Cloudflareでは、example.comレコードのCNAMEをfailover-example.comに設定し、example.comでcloudflareプロキシをアクティブにします。

その結果、ブラウザーはexample.comのIPアドレスをcloudflare IPアドレスに解決します。 CloudflareはAWS DNSサーバーにクエリを実行して、failover-example.comをロックアップします。 Cloudflareは解決されたIPアドレスからコンテンツをフェッチし、コンテンツをブラウザーに返します。

私のテストでは、他のバックエンドシステムへの切り替えは、caの後に発生します。 20秒。

CNAMEがexample.comのサブドメインである場合、cloudflareはプロキシを介してトラフィックをルーティングしないため、別のドメインが必要です。

フェイルオーバーを視覚化してみました。理論的には、フェイルオーバーはRoute53だけでなく、あらゆるDNSフェイルオーバー対応サービスで機能します。

enter image description here

ブラウザーは常にCloudFlareに接続するため、バックエンドシステムのDNSフェイルオーバーがユーザーのブラウザーに影響を与えることはありません。

16
Thomas Hunziker

追加します-その間、私は https://runbook.io を見ることをお勧めします

他のいくつかのDIYオプション:

もちろん、これらが適切なオプションかどうかを判断する必要があります。

14
xxdesmus