Webサービスをユーザーに公開する際、レンタルサーバーを契約したりドメインを契約して、インターネット経由でのアクセスが可能になるように設定を行います。
本記事では、AWSから提供されているDNSのフルマネージドサービス「Route53」についてご紹介していきます。
AWSのRoute53とは
AWS Route53は、権威DNSと呼ばれるDNSサービスで、ドメイン名とIPアドレスの変換情報を保持します。
AWSよりDNS(Domain Name System)のフルマネージドサービスとして提供されており、「ドメイン登録」「DNSルーティング」「ヘルスチェック」といった機能を任意の組み合わせで利用出来るサービスです。
ドメイン登録
インターネット上にWebサイトを公開するには「https://style.potepan.com/」のように「style.potepan.com」部分のドメインと呼ばれる名前を取得する必要があります。
AWSではRoute53のサービスからこのドメインを取得することが可能です。
Route53以外から取得したドメインであっても、AWSベースのWebサイトとして公開出来ますが、Route53を利用することによりAWSコンソール内での一元管理が出来るようになるメリットがあります。
DNSルーティング
ユーザーがブラウザで、ドメイン名やサブドメイン名を入力した際に、Route53がWebサイトやWebアプリケーションに接続するための支援を行います。
インターネットの世界では、IPアドレスによる相互通信を行うためIPv4形式であれば「192.x.x.xx」やIPv6であれば「xxxx:0xx0:00×0:0000:0000:xxxx:0001:xxxx」のような非常に覚えにくい英数字の羅列をアドレスバーに入力する必要がありました。
しかしDNSルーティングを利用することで「potepan.com」のようなドメイン名をブラウザで入力すれば「192.x.x.xx」のような形式に自動で変換してアクセスしてくれる仕組みがDNSルーティングで、Route53で利用出来る機能です。
ヘルスチェック
リソースが正常に動いているかの確認が出来る機能で、リソースが使用不可状態となった場合に通知を受けるよう設定したり、異常なリソースからトラフィックを遠ざけるようなルーティングを行うことが出来ます。
仕組みとしては、自動リクエストをインターネット経由でWebサーバーなどのリソースに送信し、リソースに到達可能、使用可能、機能中であることを確認します。
AWS Route53の特徴
AWS Route53の利点としては、下記9つの特徴が挙げられています。
- 高い可用性と信頼性
- 柔軟性
- 他のアマゾンウェブサービスと併用しやすい設計
- シンプル
- 高速
- 高い費用対効果
- セキュア
- スケーラブル
- ハイブリッドクラウドを簡素化
いくつかピックアップしてご紹介していきます。
高い可用性と信頼性
AWS Route53では、トラフィックフローやルーティングコントロールなどの機能を利用することで、フェイルオーバー機能を簡単に設定することが可能です。
アプリケーションのプライマリエンドポイントが利用出来ない状態となった場合でも、代替場所へユーザーを再ルーティングすることが出来るため、信頼性が向上しています。
AWS Route53の可用性と信頼性はAmazon Route 53 サービスレベルアグリーメントに基づいて設定されているため一度確認しておきましょう。
他のアマゾンウェブサービスと併用しやすい設計
AWS Route53では、同じAWS上のサービスと併用しやすい設計となっているため、簡単に連動させることが出来ます。
EC2インスタンスやS3バケット、Amazon CloudFrontといった各種リソースとマッピングすることが可能で、IAMを利用すればDNSデータを更新するユーザーを細かく管理することも可能です。
またエイリアスレコードと呼ばれる機能を使用すれば、 Zone ApexからロードバランサーやAPI Gateway、S3でのWebサイトバケットへマッピングすることも可能となります。
シンプル
セルフサービスのサインアップ機能により、AWS Route53では数分という短い時間でDNSクエリへの応答を開始することが可能です。
DNSの設定に関しても、AWSマネジメントコンソールのAPIを利用してGUIで簡単に操作することが出来ます。
Amazon Route 53 APIを活用すれば、EC2インスタンスを生成するたびに新しいDNSレコードを作成するよう設定するなど、他のAWSサービスとの連携も簡単に行うことが可能です。
高い費用対効果
AWS Route53も他のAWSサービス同様、従量課金制が採用されています。
ユーザーは使用したリソースに対してのみ課金することになるため、利用した分だけの支払いでコストを抑えることが出来るようになります。
最低使用量の条件や前払いの義務がないため、手軽に始められる点も大きな特徴です。
高速
AWS Route53では、世界中に存在するDNSサーバーのグローバルエニーキャストネットワークを使用することで、ネットワーク状況に応じて適切なロケーションにルーティングする機能が設けられています。
トラフィックポリシーを使用してユーザーに最も近い正常稼働しているアプリケーションエンドポイントに確実にルーティングすることにより、高速な処理を実現しユーザーエクスペリエンスが向上する仕組みとなっています。
AWS Route53を使用する上での注意点
AWS Route53を使用する上でいくつか留意しておきたいポイントについてもご紹介しておきましょう。
ドメイン登録は無料範囲外
AWSでは多くのサービスを体験出来るようにアカウントを作成してからの12ヶ月間規定の範囲内であれば無料で利用出来る枠が設けられています。
AWS Route53についても無料で利用可能なサービスの対象ではありますが、ドメイン取得に関しては範囲外です。
AWS Route53を試してWebサイトを公開しようとすると、既にお持ちのドメインを活用するか別途ドメインを取得する必要があるため意識しておきましょう。
Aレコードの設定不可
AWS Route53では、エンドポイントのIPアドレスが動的に変化するという特徴があります。
Aレコードというのは、ドメイン名とIPアドレスを紐付けるレコードのことですが、AWSサービスではこの機能を利用することが出来ません。
通常Aレコードが使えない場合、CNAMEレコードが使用されますが、AWS Route53ではレスポンスが高速なエイリアスレコードを利用することになります。
さいごに: AWS Route53でDNSサービスを一元化しよう
本記事では、AWSのDNSサービス「AWS Route53」についてご紹介してきました。
AWS Route53のサービスを利用すれば、DNSサービスを構築するための機能が揃っており、AWS上だけで簡単に実現することが可能です。
AWSの他サービスとも簡単に連携することが出来ますので、まずは無料枠の範囲内で実際に使いながらAWS Route53の便利さを体験してみてください。