Share via


地理的な場所を認識するアプリケーションの負荷分散に DNS ポリシーを使用する

適用対象: Windows Server 2022、Windows Server 2019、Windows Server 2016

このトピックを使用して、地理的な場所を認識するアプリケーションの負荷を分散するように DNS ポリシーを構成する方法について説明します。

このガイドの前述の「アプリケーションの負荷分散に DNS ポリシーを使用する」では、架空の会社である Contoso ギフトサービスの例を使用します。これは、オンライン贈答サービスを提供し、contosogiftservices.com という名前の Web サイトを持っています。 Contoso ギフトサービスは、シアトル (ワシントン州)、シカゴ (イリノイ州)、およびダラス (テキサス州) にある北米データ センターのサーバー間で、オンライン Web アプリケーションの負荷を分散します。

注意

このシナリオの手順を実行する前に、「アプリケーションの負荷分散に DNS ポリシーを使用する」をよく理解しておくことをお勧めします。

このトピックでは、地理的な場所の認識を含む新しいサンプル展開の基礎として、架空の企業およびネットワーク インフラストラクチャを使用します。

この例では、Contoso のギフト サービスは地球全体でのプレゼンスの拡張に成功しています。

北米と同様に、会社はヨーロッパのデータセンターでホストされる Web サーバーを持つようになりました。

Contoso ギフトサービスの DNS 管理者は、北米での DNS ポリシーの実装と同様の方法で欧州データセンターのアプリケーション負荷分散を構成し、ダブリン (アイルランド)、アムステルダム (オランダ)、その他の場所に配置されている Web サーバー間でアプリケーション トラフィックを分散します。

また、DNS 管理者は、世界中の他の場所からのすべてのクエリを、すべてのデータセンター間で均等に分散させる必要があります。

次のセクションでは、独自のネットワーク上の Contoso の DNS 管理者と同様の目標を達成する方法について説明します。

地理的な場所を認識するアプリケーションの負荷分散を構成する方法

次のセクションでは、地理的な場所を認識するアプリケーションの負荷分散に DNS ポリシーを構成する方法について説明します。

重要

次のセクションでは、多くのパラメーターのサンプル値を含む Windows PowerShell コマンドの例を示します。 これらのコマンドで値の例は、これらのコマンドを実行する前に、展開に対応する値を置き換えることを確認します。

DNS クライアントのサブネットを作成します。

まず、北米とヨーロッパの地域のサブネットまたは IP アドレス空間を特定する必要があります。

この情報は、地理的 IP のマップから取得できます。 これらの地理的 IP の分散に基づき、DNS クライアント サブネットを作成する必要があります。

DNS クライアントのサブネットは、クエリが DNS サーバーに送信元 IPv4 または IPv6 サブネットの論理グループです。

次の Windows PowerShell コマンドを使用すると、DNS クライアントのサブネットを作成します。

Add-DnsServerClientSubnet -Name "AmericaSubnet" -IPv4Subnet 192.0.0.0/24,182.0.0.0/24
Add-DnsServerClientSubnet -Name "EuropeSubnet" -IPv4Subnet 141.1.0.0/24,151.1.0.0/24

詳細については、次を参照してください。 追加 DnsServerClientSubnetします。

ゾーンのスコープを作成します。

クライアントサブネットが配置されたら、ゾーンの contosogiftservices.com をデータセンターごとに異なるゾーン スコープに分割する必要があります。

ゾーンのスコープは、ゾーンの一意のインスタンスです。 DNS ゾーンには複数のゾーン スコープが存在する可能性があります。各ゾーン スコープには、独自の DNS レコード セットが含まれています。 同じレコードが複数のスコープに存在する可能性があり、IP アドレスは同じ場合も違う場合もあります。

注意

既定では、ゾーンのスコープは、DNS ゾーンに存在します。 このゾーンのスコープでは、ゾーンと同じ名前と、従来の DNS の機能がこのスコープで動作します。

アプリケーションの負荷分散に関する前のシナリオでは、北米のデータセンターに対して 3 つのゾーンのスコープを構成する方法を示します。

次のコマンドを使用して、ダブリンとアムステルダムのデータセンター用にそれぞれ 1 つずつ、さらに 2 つのゾーンスコープを作成できます。

これらのゾーン スコープは、同じゾーン内の既存の 3 つの北米ゾーン スコープに変更を加えることなく追加できます。 また、これらのゾーン スコープを作成した後で、DNS サーバーを再起動する必要はありません。

次の Windows PowerShell コマンドを使用すると、ゾーンのスコープを作成します。

Add-DnsServerZoneScope -ZoneName "contosogiftservices.com" -Name "DublinZoneScope"
Add-DnsServerZoneScope -ZoneName "contosogiftservices.com" -Name "AmsterdamZoneScope"

詳細については、次を参照してください 追加 DnsServerZoneScope。

レコードをゾーンのスコープに追加します。

ゾーンのスコープに Web サーバーのホストを表すレコードを追加する必要があります。

米国のデータセンターのレコードは、前のシナリオで追加されました。 次の Windows PowerShell コマンドを使用して、レコードを欧州データセンターのゾーン スコープに追加することができます。

Add-DnsServerResourceRecord -ZoneName "contosogiftservices.com" -A -Name "www" -IPv4Address "151.1.0.1" -ZoneScope "DublinZoneScope”
Add-DnsServerResourceRecord -ZoneName "contosogiftservices.com" -A -Name "www" -IPv4Address "141.1.0.1" -ZoneScope "AmsterdamZoneScope"

詳細については、次を参照してください。 追加 DnsServerResourceRecordします。

DNS のポリシーを作成します。

パーティション (ゾーン スコープ) を作成しレコードを追加したら、これらのスコープに対して受信クエリを分散する DNS ポリシーを作成する必要があります。

この例では、異なるデータセンター内のアプリケーション サーバー間でのクエリの分散は、次の条件を満たしています。

  1. 北米クライアント サブネットのソースから DNS クエリを受信すると、DNS 応答の 50% がシアトル データセンターを指し、応答の 25% がシカゴのデータセンターに送信され、さらにその残りの 25% がダラスのデータセンターに送信されます。
  2. 欧州クライアント サブネットのソースから DNS クエリを受信すると、DNS 応答の 50% がダブリン データセンターをポイントし、DNS 応答の 50% がアムステルダム データセンターをポイントします。
  3. 世界の他の場所からクエリが来る場合は、DNS 応答は 5 つのデータセンター全体に分散されます。

これらの DNS ポリシーを実装するには、次の Windows PowerShell コマンドを使用します。

Add-DnsServerQueryResolutionPolicy -Name "AmericaLBPolicy" -Action ALLOW -ClientSubnet "eq,AmericaSubnet" -ZoneScope "SeattleZoneScope,2;ChicagoZoneScope,1; TexasZoneScope,1" -ZoneName "contosogiftservices.com" –ProcessingOrder 1
Add-DnsServerQueryResolutionPolicy -Name "EuropeLBPolicy" -Action ALLOW -ClientSubnet "eq,EuropeSubnet" -ZoneScope "DublinZoneScope,1;AmsterdamZoneScope,1" -ZoneName "contosogiftservices.com" -ProcessingOrder 2
Add-DnsServerQueryResolutionPolicy -Name "WorldWidePolicy" -Action ALLOW -FQDN "eq,*.contoso.com" -ZoneScope "SeattleZoneScope,1;ChicagoZoneScope,1; TexasZoneScope,1;DublinZoneScope,1;AmsterdamZoneScope,1" -ZoneName "contosogiftservices.com" -ProcessingOrder 3

詳細については、次を参照してください。 追加 DnsServerQueryResolutionPolicyします。

これで、5 つの異なるデータセンターにある複数の大陸に配置されている Web サーバー全体で、アプリケーションの負荷分散を実現する DNS ポリシーが作成されました。

何千もの DNS のポリシーに合わせて作成できます、トラフィック管理の要件、DNS サーバーを再起動しなくても - 受信したクエリで、すべての新しいポリシーが動的 - 適用されます。