Amazon Route 53とDNSを理解する
Route 53のDNS、ドメイン登録、ヘルスチェックという役割を整理します。名前から接続先を知る処理と、その接続先へ実際のWeb要求を送る処理を分けることが基本です。
この単元で学ぶこと
- DNSと登録・Web配信の役割を分ける
- レコードと公開範囲を説明する
- ルーティング方針とキャッシュの影響を判断する
本文解説
1. 名前を接続先へ結び付ける 利用者はwww.example.comのような名前を使います。DNSは、その名前に対応するIPアドレス等の情報を問い合わせて取得する仕組みです。取得した情報を使ってブラウザーがWebサーバーへ通信します。DNSサービスそのものがHTMLや画像の本体を保存・配信する役割とは異なります。
2. Route 53の三つの仕事 Route 53はドメイン名の登録、DNSの問い合わせへの応答、リソース等の状態を調べるヘルスチェックを提供します。登録は名前の利用権の管理、DNSはレコードの管理、Webホスティングはアプリの配置です。ドメインの登録先とDNS運用先とWebサーバーの提供者を分ける構成も可能です。
3. 権威DNSとリゾルバー ホストゾーンには、あるドメインの問い合わせへ返すレコードを保管します。権威DNSは管理するゾーンの情報を回答し、リゾルバーは利用者に代わって名前を解決し、結果をキャッシュします。VPCのRoute 53 ResolverはVPC内の名前解決や、適切な設定によるオンプレミスとの名前解決に関係します。
4. レコードの種類 AはIPv4アドレス、AAAAはIPv6アドレスを扱い、CNAMEは別のドメイン名への別名です。Route 53のAliasは対応するAWSリソース等を宛先にできる拡張で、ゾーン頂点でも利用できます。例えばexample.comを対応するロードバランサーへ向ける際に、頂点へ置けない通常のCNAMEと区別します。
5. 公開と非公開 パブリックホストゾーンはインターネットから使う名前解決を管理します。プライベートホストゾーンは関連付けたVPC等の対応する解決経路から利用します。内部DBの名前を登録しても、それだけで外部にDBへの経路や権限を公開するわけではありません。オンプレミスからの利用にはResolverの接続設定等も確認します。
6. 応答先の選び方 Weightedは指定した重みに応じて応答先を選ぶ方針、Latencyは複数リージョンのレイテンシーを基準とする方針です。Failoverは稼働系と待機系を切り替える構成で使います。Geolocationは利用者の位置に基づく方針であり、低遅延の推定と同じ条件ではありません。
7. TTLと変更の見え方 TTLはDNS応答をキャッシュできる時間に関係します。レコードを変更しても、すでに古い応答を保持しているリゾルバーやクライアントが直ちに再問い合わせするとは限りません。TTLを短くすると更新の追従性を上げやすい一方、問い合わせ回数への影響を考えます。レコード種類等によって設定条件が違います。
8. ヘルスチェックの限界 ヘルスチェックや対応するリソースの状態をルーティングに反映できますが、アプリが業務上正しいかはチェック内容にも依存します。DNSによる切替えは既存のTCP接続を待機系へ移動する操作ではなく、キャッシュの影響もあります。監視対象、切替条件、データの用意を別々に確認します。
図解
重要ポイント
- DNS応答とWeb本体の配信は別。
- A/AAAA/CNAME/Aliasは用途と制約が違う。
- DNS切替えにはキャッシュと既存接続の影響がある。
間違えやすい点
- WeightedをHTTP要求数の厳密な割当てと考える。
- DNSレコードの追加を通信許可と考える。
用語解説
- ホストゾーン
- あるドメインのDNSレコードを管理する入れ物。
- リゾルバー
- 名前解決を行い、結果をキャッシュする仕組み。
- TTL
- DNS応答をキャッシュできる時間に関係する値。
- ゾーン頂点
- example.comゾーンならexample.com自身という最上位の名前。
関連教材
参考資料
教材データに登録された参考リンクです。リンク先の内容や更新日は提供元でご確認ください。
- https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html
- https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html
- https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zones-private.html
- https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-choosing-alias-non-alias.html
確認問題の出題・採点や学習履歴の保存にはログインが必要です。