マルチアカウントの AWS 環境でハイブリッドネットワークの DNS 解決をセットアップする - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

マルチアカウントの AWS 環境でハイブリッドネットワークの DNS 解決をセットアップする

作成者: Amir Durrani

環境:本稼働

テクノロジー: インフラストラクチャ、ネットワーク

AWS サービス: AWS RAM、Amazon Route 53、AWS Control Tower

[概要]

このパターンでは、オンプレミスのドメインネームシステム (DNS) サービスを Amazon Route 53 Resolver とアウトバウンド Resolver エンドポイントとともに使用して名前解決を行う方法を説明します。

DNS はネットワーク環境間の通信を確立し維持するための基本です。 ハイブリッドネットワーク接続環境であれば、DNS や Active Directory などの重要なネットワークサービスを共有できます。アカウントや仮想プライベートクラウド (VPC) にまたがる分散環境を管理するという運用上の負担はありません。このアプローチは、多数のアカウントにまたがるアプリケーションの構築とサポートに役立ちます。たとえば、ハイブリッド接続が必要なマルチリージョンアカウントが数百または数千ある場合、AWS Organizations 内の接続されているすべての環境で DNS サービスを安全かつ効率的に共有できます。

DNS は、アプリケーションのあらゆる層 (ウェブ、アプリケーション、データベース) 間の IP ネットワーキングに不可欠です。ベストプラクティスとしては、DNS の専門家チームにのみ、このリソースを構成、運用、サポートするためのフルアクセス権を与えます。ハイブリッド接続環境では、条件付き転送を使用することにより、異なるアカウントにあるリソースからの名前解決リクエストに対し、オンプレミス DNS を引き続き使用できます。

このパターンは、AWS マルチアカウント環境でのハイブリッド DNS 解決を対象としています。単一アカウントの場合は、「単一アカウントの 環境におけるハイブリッドネットワークの DNS 解決をセットアップする」パターンを参照してください。

前提条件と制限

前提条件

  • ベストプラクティスに基づいて運用され、AWS Control Tower を使用して構築された AWSマルチアカウント環境。次のセクションの図は、このような環境の一般的なアーキテクチャを示しています。

  • AWS Transit Gateway を使用した、アカウントと VPC 間のスケーラブルなルーティングインフラストラクチャ。

  • Amazon Route 53 を使用したアウトバウンド Resolver エンドポイントと Resolver ルール。

  • AWS Resource Access Manager(AWS RAM) を使用したアウトバウンド Resolver ルールのリソース共有。

アーキテクチャ

マルチアカウントアーキテクチャ

マルチアカウントアーキテクチャ

ターゲットテクノロジースタック

  • 多数の AWS プリンシパルにわたるアウトバウンド名前解決のための既存のオンプレミス DNS インフラストラクチャ 

  • Route 53 Resolver ルールとアウトバウンド Resolver エンドポイント

  • Route 53 Resolverルールを AWS Organizations内外の他の AWS プリンシパルと共有するための AWS RAM

ターゲット アーキテクチャ

次の図は、 end-to-end ハイブリッド DNS 解決を設定する手順を示しています。AWS RAM は、中央の Shared Services アカウントで構成および管理される Route 53 Resolver ルールと Resolver エンドポイントを共有するために使用されます。Route 53 Resolver エンドポイントは、オンプレミスデータセンターにあるリソースのアウトバウンド名前解決リクエストを受信し、そのリクエストをオンプレミスの DNS リゾルバーに転送するように各アベイラビリティゾーンについて構成されます。オンプレミスの DNS リゾルバーは名前解決レスポンスをアウトバウンドエンドポイントに送信し、アウトバウンドエンドポイントはそのレスポンスを VPC リゾルバーに転送します。これらのステップでは、IP アドレスの代わりにホスト名を使用して end-to-end 通信を確立します。

AWS プリンシパルと Resolver エンドポイントの共有

アーキテクチャの詳細を次の図に示します。

自動化とスケール

AWS CloudFormation テンプレートを使用して、AWS RAM を介して Route 53 Resolver ルールを設定および共有できます。 

ツール

サービス

  • AWS Control Tower は、規範的なベストプラクティスに従って、AWS 複数アカウント環境を設定して管理するのに役立ちます。

  • AWS Resource Access Manager (AWS RAM) は、 アカウント全体にわたり、リソースを安全に共有して運用上のオーバーヘッドを削減して、可視性と監査性を高めます。

  • Amazon Route 53 は、高可用性でスケーラブルな DNS Web サービスです。

その他のツール

  • nslookupdig は DNS レコードをクエリするためのユーティリティです。

エピック

タスク説明必要なスキル

Route 53 アウトバウンド Resolver エンドポイントとルールを構成します。

  1. Route 53 アウトバウンド Resolver ルールを構成して共有する AWS マネジメントコンソールにサインインします。

  2. Route 53 コンソール (https://console.aws.amazon.com/route53/) を開きます。

  3. ナビゲーションバーで、Resolver エンドポイントを構成するリージョンを選択します。

  4. ナビゲーションペインで [アウトバウンドエンドポイント]、[エンドポイントの構成] の順に選択します。

  5. 一般設定、IP アドレス、オプションのタグ情報を入力し、[次へ] を選択します。

  6. ネットワークに転送する DNS クエリのドメイン名を指定するには、1 つまたは複数のルールを作成し、[保存] を選択します。

詳細については、Route 53 ドキュメントの「アウトバウンド DNS クエリのネットワークへの転送」を参照してください。

AWS 全般

Route 53 アウトバウンド Resolver ルールを作成し、AWS プリンシパルと共有します。

  1. https://console.aws.amazon.com/ram/ で AWS RAM コンソールを開きます。

  2. ナビゲーションペインで [リソース共有] を選択し、[リソース共有の作成] を選択します。

  3. 共有名を指定します。

  4. リソースタイプには、[Resolver ルール] を選択します。

  5. 共有したい Resolver ルールを選択し、オプションでタグキーと値の情報を入力して、[次へ] を選択します。

  6. Resolver ルールのリソースを共有するプリンシパルを選択します。プリンシパルは、AWS Organizations の内部でも外部でもかまいません。たとえば、AWS Organizations、組織内の特定の組織単位 (OU)、または特定のアカウントを選択できます。

  7. リソースの共有を確認し、作成します。

    リソースを作成して共有すると、そのリソースは共有先のプリンシパルのナビゲーションペインの「私と共有済み」セクションに表示されます。

  8. (プリンシパル) アカウントの VPC を shared services またはネットワークアカウントで共有されている Resolver ルールに関連付けます。

詳しくは、AWS RAM ユーザーガイドの「 リソースの共有」をご覧ください。

AWS 全般

アウトバウンド DNS の名前解決をテストする。

Resolver ルールを共有しているアカウントの VPC 内のインスタンスで nslookup または dig ユーティリティを使用して名前解決をテストします。

クエリは、オンプレミスデータセンター内にあるリソースの IP アドレスに解決されるはずです。

AWS 全般

関連リソース