AWS

【AWS初学者向け・図解】Route53ルーティングポリシーを現役エンジニアがわかりやすく解説

※この記事にはプロモーションが含まれています。
スポンサーリンク

AWS初学者
AWS初学者

AWSサービスがなかなか理解できないなぁ..

おつまみ
おつまみ

そのお悩みを解決します!

AWSを学び始めた皆さん。
学習は順調に進んでいますか?

AWSはたくさんサービスがあって、1つ1つのサービスを学ぶのに苦労しますよね。

そこで本記事では「Route53のルーティングポリシー」について初心者にわかりやすいよう恋愛に絡めた図解付きで解説していきます。

本記事を読んだ後に「Route53のルーティングポリシーをなんとなく理解できた!」と思ってもらえれば嬉しいです。それではどうぞ!

本記事の対象者
  • これからAWSを学んでいく初学者の方
  • Route53のルーティングポリシーを覚えられない方
  • なんとなく理解したつもりでいるけど、改めて復習したい方
本記事で解説していないこと
  • DNSの説明
  • Route53の具体的な機能

Route53とは

Route53とはAWSが提供するフルマネージドなDNSサービスです。

今回はルーティングポリシーに絞ってお話しするため、DNSの説明やRoute53の具体的な機能については省略します。

具体的な機能については、公式のBlackBeltを確認してみて下さい。(ちなみにルーティングポリシーに関する説明は41分30秒あたりからあります!)

Route53ルーティングポリシー

Route53ではレコードを作成するときに、クエリに応答する方法を決めます。
その時の応答方法をルーティングポリシーと呼びます。

ルーティングポリシーにはこのような種類があります。

No.ルーティングポリシー名特徴
1シンプル1つのレコードに対し、1つのIPアドレスを返す
2フェイルオーバーメインに障害が発生していた場合にサブにアクセスする
3位置情報ユーザーの位置情報に基づいてルーティング
4地理的近接性ユーザーとリソースの位置情報に基づいてルーティング
5レイテンシーユーザーから最もレイテンシーが少ないリージョンにルーティング
6複数値回答複数のレコードの中からヘルスチェックでOKとなったレコードからランダムにルーティング
7加重予め指定した重量(比率)で複数のAWSリソースにトラフィックをルーティング
8IPベースアクセス元のIP アドレス範囲に応じてトラフィックをルーティング

1つ1つ解説していきますね。

1. シンプルルーティングポリシー

シンプルルーティングポリシーは1つのレコードに対し、1つのIPアドレスを返すようにルーティングするポリシーです。これは一般的なDNSの設定にあたります。

複数のIPアドレスを1つのレコードに設定することもでき、その場合はランダムなIPアドレスにルーティングされるようになります。

例えると、このようなイメージになります。
私の気になる人をドメイン(example.com)、AさんをIPアドレス(192.168.0.1)に置き換えてイメージしてみましょう。

相思相愛のパターンですね。

2. フェイルオーバールーティングポリシー

フェイルオーバールーティングポリシーは、メインに障害が発生していた場合にサブにアクセスするようにルーティングするポリシーです。

障害の検知はRoute53に備わっているヘルスチェックの機能を使います。

ヘルスチェックとは

アプリケーションやサーバーなどのシステムが正常に稼働しているかを監視する機能

ユースケース
  • 複数リージョンにまたがるシステムでの冗長構成
  • 災害時のリージョン間フェイルオーバー
  • 災害時に、S3静的ウェブホスティングのSorryPage 表示


例えると、このようなイメージになります。

気になっているAさんに本命の彼女がいたときに備えて、Bさんにもアプローチしておきます。
Aさんに彼女がいた時は、Bさんに切り替えます。

3. 位置情報ルーティングポリシー

位置情報ルーティングポリシーは、ユーザーの位置情報に基づいてルーティングするポリシーです。このときユーザーの位置情報はIPアドレスで特定します。

大陸別、国別、米国の州別にルーティングを設定することができ、各国に応じたサイトにルーティングする設定が可能になります。

ユースケース
  • 国や地域ごとに適切な言語でサイトを提供したい時


例えると、このようなイメージになります。

同じ渋谷にいるAさんと飲みに行くことになりますね。

4. 地理的近接性ルーティングポリシー

地理的近接性ルーティングポリシーは、ユーザーとリソースの位置情報に基づいてルーティングするポリシーです。

AWS初学者
AWS初学者

位置情報ルーティングポリシーとの違いがわからないよ..

違い難しいですよね。
例えると、このようなイメージになります。

どちらの男性も渋谷にいますが、自宅も渋谷にあるAさんと宅飲みすることになりますね。

位置情報ルーティングポリシーでは、ユーザーの地域のみに基づいてルーティングをしていましたが、地理的近接性ルーティングポリシーはユーザーとリソースの位置関係に基づいてルーティングをします。

ユースケース
  • ユーザーの地域から1番近いリソースにルーティングを行いたいとき

またこのポリシーはRoute 53のトラフィックフローという機能を使用する必要があるため、他のポリシーとは少し系統が違っているのも特徴的ですね。

トラフィックフローとは

レイテンシー、フェイルオーバー、加重などの複数のルーティングポリシーを組み合わせて使用する場合に複雑なルーティングのサポートをしてくれる機能
レコード管理の煩雑さを防ぐことができます。
詳細はこちらの公式ドキュメントを参考にして下さい。


実際にAWSマネジメントコンソールでルーティングポリシーを設定する場面でも、地理的近接性ポリシーは載っていません。

5. レイテンシールーティングポリシー

レイテンシールーティングポリシーは、ユーザーから最もレイテンシーが少ないリージョンにアクセスするようルーティングするポリシーです。

レイテンシーが基準になっているため毎回同じリソースにアクセスされることはなく、変動する可能性があります。

また、AWSのリソースに対するレイテンシーのみが計測の対象となるため、オンプレミス等のAWS以外のリソースに対して設定した場合は充分に機能しない可能性があることに注意しましょう

ユースケース
  • 世界中にシステムを展開しているアプリケーション

例えると、このようなイメージになります。

すぐに連絡がきたAさんと食事に行くことになりますね。

6. 複数値回答ルーティングポリシー

複数値回答ルーティングポリシーは、複数のレコードの中からヘルスチェックでOKとなったレコードのみランダムにアクセスするようにルーティングするポリシーです。

AWS初学者
AWS初学者

あれ?シンプルルーティングポリシーでも1つのレコードに対して複数のIPアドレスを紐づけたりできなかった?



正解です!シンプルルーティングポリシーでも設定は可能です。
ただ、シンプルルーティングポリシーではヘルスチェックを行うことができません。

なぜならヘルスチェックはレコード単位に行うからです。
そのため、ヘルスチェック機能を利用したい場合は、複数値回答ルーティングポリシーを利用するようにしましょう。

公式ドキュメントにも違いが記載されていたので、より詳細に知りたい方は確認してみて下さい。

ユースケース
  • 複数リージョンにまたがるシステムで冗長構成を取りたい時


例えると、このようなイメージになります。

Aさんには本命の彼女がいたので、ヘルスチェックNGとなります。
返信があったBさんもしくはCさんのどちらかと食事に行くことになります。

7. 加重ルーティングポリシー

加重ルーティングポリシーは、予め指定した重量(比率)で複数のAWSリソースにトラフィックをルーティングするポリシーです。

このように重み付けをすることで、新機能を搭載した一部のインスタンスに対して段階的にリリースしていくようなことができます。

ユースケース
  • A/B テスト
  • 段階的な移行(Blue/ Green デプロイ)
  • サーバー性能に応じた負荷平準化

例えると、このようなイメージになります。

どちらの男性も気になっているパターンですね。
Aさんの方が脈アリのようなので、Aさんとマッチングする可能性の方が高くなります。

8. IPベースルーティングポリシー

IPベースルーティングポリシーは、アクセス元のIP アドレス範囲に応じてトラフィックをルーティングするポリシーです。

こちら2022/6/1に新しく追加されたポリシーになります!

上記の図のように、アクセス元に応じてトラフィックを変更することができます。
※IPアドレス範囲指定のため、直接のIPアドレス指定(/32)はできません。

一般ユーザー:ALBを経由して接続
社内開発メンバ:ALBを経由せず直接EC2に接続

こちらのポリシーによって、よりきめ細やかな設定ができるようになりますね

ユースケース
  • 社内からの接続はALBを経由せず、直接開発環境に接続する
  • 社内からの接続のみ、新バージョンの開発環境に接続する

例えると、このようなイメージになります。

どのアプリの男性から連絡がきたかでちょっと雰囲気を変えて対応します。
婚活アプリの方は結婚を意識したアピールをするのでしょうか。

まとめ

今回はAWSサービスの中からRoute53のルーティングポリシーに絞ってお話ししました。

なんとなく理解できたのではないでしょうか?

ルーティングポリシーは実際にハンズオンで触りながら覚えることで、さらに理解が深まると思います!

AWS初学者の方は会員制コミュニティ付きの動画で学べるAWS学習オンラインスクールCloudTechがおすすめ!
CloudTechについてはこちらの記事でご紹介しているので、参考にしてみて下さい。

おつまみ
おつまみ

今だけお得に入会できるクーポンコード配布中!

それでは、これからも一緒に学んで、自己価値を高めていきましょう〜!

最後まで、お読み頂きありがとうございました!

参考文献

本記事を作成するにあたり、こちらのブログ記事や本を参考にさせて頂きました!

①AWSエンジニア入門講座――学習ロードマップで体系的に学ぶ

②AWSの知識地図 〜現場必修の基礎から構築・セキュリティまで

今回解説していないRoute53の具体的な機能についても詳しく解説されており、どれもAWS初学者にとって、とても分かりやすい内容になっています。

よかったら参考にしてみて下さい!

コメント

タイトルとURLをコピーしました