SAA / ドメイン2 レジリエントなアーキテクチャの設計
重要な内容
Amazon Route 53
は、ドメイン名を アドレスや AWS リソースへ名前解決するためのマネージド サービスです。 ドメイン登録、DNS ルーティング、を組み合わせて、利用者を適切なアプリケーションへ誘導します。
SAA では、Route 53 を「DNS のサービス」として覚えるだけでは不十分です。 パブリック hosted zone とプライベート hosted zone、Alias レコード、、ヘルスチェック、、Route 53 Resolver を使い分ける判断がよく問われます。
Point
- DNS = Domain Name System の略です。
- 人間が読みやすい
example.comのような名前を、通信に使う IP アドレスなどへ変換する仕組みです。 - Route 53 の「53」は、DNS が通常使うポート番号 53 と結び付けて覚えると理解しやすいです。
- 和訳
- Domain: 領域、ドメイン
- Name: 名前
- System: 仕組み
- Weblio英和辞書「domain」
概要
は、利用者が入力したドメイン名を、Web サイト、、、 静的 Web サイト、サーバーなどの接続先へ案内します。 はアプリケーション通信の入口になるため、可用性、、災害対策、選択に影響します。
Route 53 では、hosted zone という単位で DNS レコードを管理します。 インターネット向けの名前解決にはパブリック hosted zone を使い、 内だけで使う内部 DNS にはプライベート hosted zone を使います。
SAA では、DNS の細かい RFC よりも、「どのを選ぶか」「Alias と をどう使い分けるか」「障害時に別リージョンへ切り替えるには何を使うか」「VPC 内やオンプレミスとの名前解決をどうするか」を判断します。
| 見るポイント | 代表的な判断 |
|---|---|
| インターネット向けか VPC 内向けか | Public hosted zone と Private hosted zone を使い分けます。 |
| AWS リソースへ向けるか | 、CloudFront、S3 などには Alias レコードを検討します。 |
| 複数があるか | Weighted、Latency、Failover、Geolocation などを選びます。 |
| 障害時に切り替えるか | と Failover ルーティングを組み合わせます。 |
| ハイブリッド DNS か | Route 53 Resolver inbound/outbound endpoint を検討します。 |
主要技術
①Hosted Zone と DNS レコード
Hosted zone は、特定ドメインとそのサブドメインの レコードを入れるです。
たとえば example.com の hosted zone には、www.example.com や api.example.com のレコードを作成できます。
| Hosted zone 種別 | 用途 | 試験での判断ポイント |
|---|---|---|
| Public hosted zone | インターネット上の名前解決 | 外部利用者に公開する Web サイトや で使います。 |
| Private hosted zone | 内の名前解決 | 社内向けサービス、内部 API、データベース名などで使います。 |
DNS レコードには、A、AAAA、、MX、TXT、NS、SOA などがあります。 SAA では、すべてのレコードタイプを暗記するよりも、よく使う A、AAAA、CNAME、Alias、MX、TXT の用途を押さえます。
| レコード | 用途 | 注意点 |
|---|---|---|
| A | ドメイン名を IPv4 アドレスへ対応付け | など が変わる AWS リソースには Alias を使うことが多いです。 |
| AAAA | ドメイン名を IPv6 アドレスへ対応付け | IPv6 対応時に使います。 |
| CNAME | 別の DNS 名への別名 | Zone apex には通常使えません。 |
| Alias | AWS リソースなどへの 独自の別名 | Zone apex にも使え、 や に向けやすいです。 |
| MX | メール配送先 | WorkMail や外部メールサービスで使います。 |
| TXT | 文字列情報 | ドメイン所有確認、SPF、DKIM などで使います。 |
Point
- A record は IPv4 アドレスへ向ける基本レコードです。
- AAAA record は IPv6 アドレスへ向けるレコードです。
- CNAME = Canonical Name の略です。
- MX = Mail Exchange の略で、メール配送先を示します。
- 和訳
- Canonical: 正規の
- Mail: メール
- Exchange: 交換
- Weblio英和辞書「canonical」
⚠️ 頻出: ルートドメイン example.com を ALB や CloudFront へ向けたい場合、CNAME ではなく Alias レコードを使う選択肢がよく正答になります。
②Alias レコードと AWS リソース連携
Alias レコードは、 独自のレコードです。 、、 静的 Web サイト、、 などの AWS リソースにドメインを向けるときによく使います。
通常の は別の 名へ向けますが、Zone apex には使えません。
Alias レコードは Zone apex にも使えるため、example.com を や CloudFront に直接向けたい場合に有効です。
| 向け先 | Alias 利用 | 判断ポイント |
|---|---|---|
| Elastic Load Balancing | よく使います | ALB// の DNS 名へ向けます。 |
| CloudFront | よく使います | グローバル配信の入口にします。 |
| S3 静的 Web サイト | 条件付きで使います | Web サイトへ向ける構成で使います。 |
| API Gateway | よく使います | カスタムドメイン名と組み合わせます。 |
| 別レコード | 使えます | 同じ hosted zone 内のレコードを参照できます。 |
Alias レコードでは、対応する AWS リソースに対して Evaluate Target Health を使える場合があります。 や複数レコードと組み合わせると、や設計に関係します。
⚠️ 頻出: 「ALB の DNS 名は変わる可能性があるため A レコードに を直接入れる」は不適切です。Route 53 Alias で ELB の DNS 名へ向けます。
③ルーティングポリシー
のは、 クエリに対してどのレコード値を返すかを決めるルールです。 複数のリソースがある場合、可用性、性能、段階移行、地理要件に応じて選びます。
| ルーティングポリシー | 用途 | 試験でのキーワード |
|---|---|---|
| Simple | 単一リソースへ基本的に向ける | 1 つの Web サーバー、単純な DNS 設定 |
| Weighted | 重み付け比率で分散 | カナリアリリース、段階移行、A/B テスト |
| Latency-based | 最も低になりやすいへ誘導 | 複数リージョン、低遅延 |
| Failover | Active-Passive | プライマリ障害時にセカンダリへ切替 |
| Geolocation | 利用者の地域に基づく | 国・大陸ごとの配信、法規制、ローカライズ |
| Geoproximity | リソース位置とで近接制御 | Traffic Flow、地理的な誘導調整 |
| -based | クライアント IP 範囲に基づく | ISP、企業ネットワーク、特定 ごとの制御 |
| Multivalue answer | 複数の正常レコードを返す | 簡易的な DNS レベル分散 |
Weighted routing は、複数へ指定した比率で DNS 応答を返します。 新バージョンへ 10% だけ流す、から AWS へ段階移行する、といった場面に向きます。
Latency-based routing は、利用者から見て低レイテンシになりやすい AWS リージョンのレコードを返します。 必ず地理的に最も近いリージョンを返すわけではなく、レイテンシ情報に基づく点を押さえます。
⚠️ 頻出: 「段階的に一部トラフィックを新環境へ流す」は Weighted、「一番近い地域」ではなく「低レイテンシのリージョンへ誘導」は Latency-based、「国や地域ごとの制御」は Geolocation です。
④ヘルスチェックと DNS フェイルオーバー
は、Web サーバーや、他のヘルスチェック、 の状態を監視できます。 ヘルスチェックとを組み合わせると、異常なエンドポイントを 応答から外したり、セカンダリへ切り替えたりできます。
| ヘルスチェック対象 | 用途 | 判断ポイント |
|---|---|---|
| エンドポイント | // などで外部から監視 | インターネットから到達できる公開エンドポイントに向きます。 |
| CloudWatch アラーム | 状態を使う | プライベートリソースや複雑な条件で使いやすいです。 |
| 他のヘルスチェック | 複数条件の組み合わせ | AND/OR 的な複合判定に使います。 |
| ARC routing control | アプリケーション復旧制御 | より高度な 切替で使います。 |
Failover routing では、プライマリとセカンダリのレコードを作成します。 プライマリが正常ならプライマリを返し、異常ならセカンダリを返します。 の Active-Passive DR、静的なメンテナンスページへの切り替え、障害時の代替サイトでよく使います。
DNS には の影響があります。 TTL が長いと、クライアントやリゾルバーが古い DNS 応答をし続ける可能性があります。 切替速度を重視する場合は TTL を短くしますが、DNS クエリ数やキャッシュ効率とのトレードオフがあります。
Point
- TTL = Time To Live の略です。
- DNS 応答をキャッシュしてよい時間を表します。
- TTL が短いほど切替は反映されやすくなりますが、DNS 問い合わせは増えやすくなります。
- 和訳
- Time: 時間
- Live: 生存する
- Weblio英和辞書「time to live」
ヘルスチェックによる自動切り替えは、一時的な誤検知でも切り替わってしまいます。切り替えを人が判断して実行したい場合は、Amazon Application Recovery Controller (ARC) のルーティングコントロールを使います。ルーティングコントロールはオンとオフを切り替えるスイッチとして働くヘルスチェックで、可用性の高いデータプレーンの から操作するため、障害時でも確実に切り替えられます。加重レコードの重みを書き換える方法もありますが、これはコントロールプレーンの操作で、障害時の手段としては ARC より弱くなります。
ARC のゾーンシフトは、1 つの だけが不調になったときに、 や などの対応リソースへのトラフィックをその AZ から同じの正常な AZ へ一時的に移す機能です。ヘルスチェックには合格しているのに遅延が増えているような部分的な障害で使います。期限は最大 3 日 (72 時間) で、延長もできます。移す前に、残りの AZ で処理できる容量を確保しておきます。
⚠️ 頻出: Route 53 のフェイルオーバーは DNS 応答の制御です。既にキャッシュされた DNS 応答は TTL まで残る可能性があるため、即時に全クライアントが切り替わるとは限りません。
⑤Private Hosted Zone と Route 53 Resolver
Private hosted zone は、 内だけで解決できる レコードを管理します。 内部 、社内向けサービス、データベース、間通信など、インターネットに公開しない名前に使います。
Resolver は、VPC の DNS 解決を担います。 DNS と AWS VPC の間で名前解決を連携する場合、Resolver inbound endpoint と outbound endpoint を使います。
| 機能 | 用途 | 判断ポイント |
|---|---|---|
| Private hosted zone | VPC 内のプライベート DNS | インターネットに公開しない名前に使います。 |
| Resolver inbound endpoint | オンプレミスから VPC 内 DNS を解決 | オンプレミス DNS から AWS 側へ問い合わせます。 |
| Resolver outbound endpoint | VPC からオンプレミス DNS を解決 | VPC 内リソースから社内ドメインを解決します。 |
| Resolver rule | 条件付き転送 | corp.example.com はオンプレミスへ、などの制御に使います。 |
| DNS Firewall | VPC からの DNS クエリ制御 | 悪性ドメインや許可外ドメインへの問い合わせを制御します。 |
複数 VPC で同じ Private hosted zone を使う場合は、VPC 関連付けを行います。 アカウントやをまたぐ場合は、RAM や Route 53 Profiles などの管理方法も検討します。 SAA では、VPC 内の名前解決とインターネット向け DNS を混同しないことが重要です。
⚠️ 頻出: 「オンプレミスから VPC 内のプライベート DNS 名を解決したい」は inbound endpoint、「VPC からオンプレミスの社内 DNS 名を解決したい」は outbound endpoint と Resolver rule を検討します。
⑥ドメイン登録、セキュリティ、運用
はドメイン登録にも対応します。 ドメインを Route 53 で登録し、同じ Route 53 の hosted zone で レコードを管理できます。 ただし、ドメイン登録サービスと DNS ホスティングは別の機能です。 他社レジストラで取得したドメインでも、ネームサーバーを Route 53 に向ければ Route 53 を DNS サービスとして使えます。
| 観点 | 関連機能 | 判断ポイント |
|---|---|---|
| ドメイン登録 | Route 53 Domains | ドメイン取得と更新を管理します。 |
| DNSSEC | 署名付き DNS 応答 | DNS 改ざん対策が必要な場合に検討します。 |
| Route 53 操作権限 | hosted zone やレコード変更権限を最小化します。 | |
| 操作監査 | レコード変更や hosted zone 操作を追跡します。 | |
| Query logging | DNS クエリログ | 内や公開 hosted zone の問い合わせ分析に使います。 |
| Cost | hosted zone、クエリ、 | DNS クエリ数やヘルスチェック数が影響します。 |
DNS レコード変更は、アプリケーションの入口を変える影響の大きい操作です。 IAM でレコード変更権限を制限し、CloudTrail で操作を監査します。 Route 53 の hosted zone やヘルスチェック、クエリには料金が発生するため、不要な hosted zone やヘルスチェックを放置しない運用も重要です。 ただし、、 ディストリビューション、 の静的 Web サイトなどの AWS リソースへ向けた Alias レコードへのクエリには料金がかかりません。 レコードへのクエリは通常どおり課金されるため、AWS リソースへ向ける名前は Alias にするとクエリ料金も抑えられます。
⚠️ 頻出: 「ドメインを Route 53 で登録していないと Route 53 DNS を使えない」は誤りです。外部レジストラのドメインでも、権威 DNS を Route 53 のネームサーバーへ委任できます。
試験対策
SAA の 問題では、まず「インターネット向け か、 内 DNS か」を切り分けます。 インターネット向けなら Public hosted zone、VPC 内だけなら Private hosted zone を選びます。 との名前解決連携がある場合は Route 53 Resolver endpoint を考えます。
次に、トラフィック制御の目的からを選びます。 単一リソースなら Simple、比率制御なら Weighted、低なら Latency-based、Active-Passive なら Failover、地域制御なら Geolocation、ネットワーク範囲ごとの制御なら -based です。
| 問題文のキーワード | 優先して考える機能 | 理由 |
|---|---|---|
| ルートドメインを へ向ける | Alias レコード | Zone apex に使え、AWS リソースへ向けやすいです。 |
| 新環境へ 10% だけ流す | Weighted routing | 重みで段階的にトラフィックを移せます。 |
| 複数のうち低遅延へ誘導 | Latency-based routing | 利用者から低レイテンシのリージョンを返します。 |
| プライマリ障害時にセカンダリへ | Failover routing + Health check | Active-Passive DR に使います。 |
| 国ごとに異なるサイトへ | Geolocation routing | 利用者の地理的位置に基づきます。 |
| VPC 内だけで名前解決 | Private hosted zone | インターネットに公開しない DNS に使います。 |
| オンプレから VPC の名前を解決 | Resolver inbound endpoint | オンプレ DNS から AWS 側へ問い合わせます。 |
| VPC からオンプレ名を解決 | Resolver outbound endpoint + rule | 条件付きでオンプレ DNS へ転送します。 |
| DNS 切替を早く反映 | を短く設定 | 時間を短くできますが、クエリ数は増えます。 |
よくある誤答は、 と Alias の使い分けです。
www.example.com のようなサブドメインなら CNAME も使えますが、example.com のような Zone apex では Alias が重要です。
また、ALB や の IP アドレスを A レコードに直接書く設計は避けます。
問題では、Route 53 は DNS 応答を切り替えるサービスであり、既存 接続やアプリケーション状態を移行するわけではありません。 TTL、アプリケーションの化、データベース、CloudFront や との違いも合わせて判断します。
コスト面では、hosted zone、DNS クエリ、、Resolver endpoint、Traffic Flow などが影響します。 SAA では具体的な料金暗記より、要件に合うルーティングポリシー、可用性、レイテンシ、運用負荷のトレードオフを重視します。