「ダウンタイムなし」を重視しているクライアント向けのサイトを開発しています。
クラウドホスティングでさえ、100%の稼働時間を約束するものではありません。そのため、ミラー化されたホスティングについて考えていました。 DNSを停止に切り替えるためにどのように設定するかはわかりませんが、非営利組織であるため、これは低予算で実行されています。
誰かがこれを行った経験があれば、私はそれを行うための最良の方法を知りたいです。
サイトはLAMPです。 SEOのペナルティを回避するために、重複サイトのrobots.txtにdisallowを追加することを考えましたが、それ以外は盲目的に実行されているため、喜んでアドバイスを受け取ります。
あなたの場合、ソリューションは、同じコンテンツを持つ少なくとも2台のサーバーと、サーバーへのトラフィックをプロキシし、1台のサーバーがダウンした場合にフェールオーバーを処理するフロントエンドプロキシである必要があります。
しかし、これは非常に複雑な構成であり、実行内容がわからない限り、sysadmを雇って構成および管理する必要があるでしょう。
クライアントは常に正しいことを理解していますが、これが達成不可能な目標であることはあなた(そして彼の)の最大の利益になると思います。ホストが100%の稼働時間を約束しなかった理由があります。ホストが将来を予測できないためです。
私はかつて、彼のウェブサイトが6か月ぶりにダウンしたときに文句を言い始めたこのようなクライアントがいました。ウェブホストは電力会社によく似ているとクライアントに説明しました。電源が切れたら、どうしますか?
ほとんどのホストは、1か月あたり99.x%のアップタイムを約束しています。クライアントは、通常は月に1時間未満であり、ダウンタイムがすべてのサイトであるとは限らないことを理解する必要があります。彼らが月に数分で失う売上高は、ホスティングのために2倍支払うことを正当化しますか?そして、あなたの場合、クライアントは低予算の非営利団体であるため、その質問自体に答えているようです。
もう1つの問題は、この仕事に最適なソリューションはないということです。もちろん、DNSのフォールバックに名前を付けることもできますが、これはDNSサーバーがダウンした場合にのみ機能します。そして、あなたはいくつかの複雑なプロキシ設定をいじることができますが、それはあなたのクライアントが明らかにしたお金がかかります。
そのシンプルなソリューション。 2つの異なるプロバイダーからホスティングサービスを購入します。地理的に異なる地域が望ましい。
サイトexample.comのDNSには、プロバイダーからの2つの異なるIPアドレスを使用します。
例。 ISP#1がIP aaa.bbb.ccc.dddを割り当てますIPS#2がIP www.xxx.yyy.zzzを割り当てます
DNSエントリは次のようになります
aaa.bbb.ccc.ddd example.com www.xxx.yyy.zzz example.com
Nslookupを実行すると、1つではなく2つのIPが取得されます。この場合、リクエストは2つのサイト間で負荷分散され、一方がダウンしている場合、もう一方が利用可能になります。
ただし、DBには課題がありますが、sysadはそれを把握できるはずです:)
-システム管理者
私は別の質問で答えを見つけました、私はすでにこれを知っていたのでかなり愚かです-私は答えが実際には単純だったときにもっと複雑なものを探していました。
各プロバイダーは、ドメインの登録中に使用するDNSサーバーのリストを提供する必要があります。次のようになります。
NS1.ACME.COM NS2.ACME.COM NS1.EXAMPLE.COM NS2.EXAMPLE.COM
ドメインの登録時(またはドメインプロパティの編集時)に、これら4つのDNSサーバーすべてを入力します。その結果、acme.comのDNSサーバーがダウンすると、example.comのサーバーが引き継ぎます。