2つの異なるサーバーを指すドメイン名

2つの異なるサーバーを指すドメイン名

私は、2 つの別々の共有ホスティング アカウントにサインアップして、Web サイトに安価な冗長性を設定したいと考えています。両方のアカウントが同時にダウンする可能性は低いでしょう。

自分のドメイン (例: domain.com) を両方のホスティング アカウントにポイントする方法はありますか? サーバー 1 (アクティブな場合) がプライマリで、通常はすべてのリクエストを処理し、サーバー 2 はサーバー 1 がダウンした場合のフォールバックになります。つまり、ドメイン名はプライマリ サーバーに解決され、ダウンしている場合はセカンダリ サーバーをチェックします。

私は DNS、サーバーなどについてあまり詳しくないので、上記の私の提案は単純すぎるかもしれません。もしそうなら、このようなことを実行するための好ましい方法はあるでしょうか?

答え1

DNS は、返されるレコードに優先順位や順序がないため、HA ソリューションには適していません。つまり、同じサイトに 2 つの A レコードがある場合、常に両方が返され、どのレコードが使用されているかを特定の時点で判断することはできません。

とはいえ、何らかの条件が発生した場合に、ddns (動的 DNS 更新) を使用してホスト名を別の IP に切り替えることは可能です。これは、サービスを提供するマシンの外部で行われる必要があり (したがって、3 台目のマシンが必要)、または両方のマシンで同時に行われる必要があります (つまり、どちらかが生きている方が「勝つ」ことになります)。

答え2

使用するドメインに対して 2 つの A レコードを設定できますが、ここでの欠点は、解決時に、その時点でダウンしている可能性のあるサイトに移動する可能性があることです。

より良い方法は、安価な VPS サーバーを 3 台用意し、そのうち 2 台でサイトをホストし、3 台​​目を負荷分散装置として機能させてから、使用するドメインを負荷分散装置にポイントすることです。または、共有ホスティング上の 2 つのドメイン間の負荷分散装置として機能する VPS を 1 台だけ用意します。

さらに可用性を高めたい場合は、ハートビート機能を備えた 2 つのロード バランサーを設定する必要があります。これにより、最初の LB に障害が発生した場合に、ドメインが指している IP が別の LB に切り替わります。

関連情報