はじめに
この記事はAWS SAA試験勉強のための、Amazon Route53に関する知識のまとめです。
Amazon Route53とは
エッジロケーションで使用されるDNSサービス。
アプリケーションとWebサーバーおよびその他のリソースの状態とパフォーマンスを監視するヘルスチェック機能を提供します。
ヘルスチェック
Route53のヘルスチェックはインターネット経由でアクセスできるエンドポイントに使用可能あるため、オンプレミスにも使用できます。
エイリアス(ALIAS)
- S3バケットにドメイン名でアクセスするためには、Route53のエイリアス機能を使って、S3バケットにエイリアスを設定します
- ELBとAutoScalingを使用してEC2上にWebサイトを構築し、Route53のエイリアスとしてELBのエンドポイントを紐づけることが出来ます
- Route53ホストゾーンにおいてAliasレコードを利用して、API Gatewayエンドポイントを設定することができる。Route53ホストゾーンのAliasレコードを利用して、ALBやCloudFrontなどのAWSサービスをドメインに関連付けて、URLを公開することができます
- エイリアスレコードを作成してCloudFrontを構成することで、Route53のDNSレコードにCloudFrontを設定してドメインを関連付けることができます
DNSレコード設定の一般論(AWSでも同様)
IPv4に基づいたドメイン設定をする場合は、Aレコードタイプにすることが必要。IPv6 アドレスの場合はAAAA レコード。
ルーティングポリシー
加重ルーティング
ABテストのために新サービスをリリースしたサーバーに一定割合のユーザーを誘導したい場合は、加重ルーティングポリシー。
サーバーごとに性能の偏りがある場合などに、それぞれのサーバーに加重をかけてトラフィックを分散させるには、加重ルーティングを構成します
位置情報ルーティング
位置情報ルーティングを使用すると、ユーザーの地理的位置に基づいてトラフィックを処理するリソースが選択されます。この機能によって、ユーザーの位置に応じて言語表示やトラフィック処理方法を変更することが可能となります。
フェイルオーバールーティング
メインに障害が発生した場合に自動でサブにルーティングするポリシー。
Amazon Route 53の DNS フェイルオーバー機能では、複数のEC2インスタンスの正常性をチェックし正常なリソースのみを使用して DNS クエリに応答するように、DNSレベルでルーティングすることができます。
(Route53に限らず一般論として)フェールオーバーには以下の種類があります。
-
フェールオーバー(アクティブ/パッシブ)
プライマリリソースをアクティブなリソースとしてルーティングする。
障害が発生したらセカンダリにルーティングする。 -
フェールオーバー(アクティブ/アクティブ)
複数のリソースをプライマリとしてルーティングする。
障害が発生した場合、正常なリソースにフェールバックする。
この仕組みを利用して、Route53でDR環境の構築もできます。
ラウンドロビンはリソースを順番に利用すること。
複数値回答ルーティングポリシー
複数のリソースに対してヘルスチェックを行い、正常なリソースの中から最大8個のIPアドレスを回答します。
シャッフルシャーディングと エニーキャスト ルーティング
DDoS 攻撃中にも適切なエンドユーザーがアプリケーションの利用を継続することができるように支援する機能。
DR環境構成
本番環境に加えて、遠隔地向けのDR環境を別リージョンに設置して、2つの構成をRoute53で連携することで災害発生時の切り替えを自動化することができます。
トラフィックフロー
Route53において複雑なルーティングを設定するにはトラフィックフローを用いてルーティングの順序を詳細に設定します。
Route 53 Resolver
Route 53 Resolverは、VPCにデフォルトで提供されるDNSサーバーで、インターネット上に公開されたリソースの名前解決と、VPC内のリソースの名前解決ができます。