#前提
ドメインの取得完了済み
(自分はお名前ドットコム
を使用したのでそれに沿って書いていきます)
#本題
取得したドメインとRoute53を紐付け、最終的にはhttps通信できるように実装していきます。
##Route53と独自ドメインの紐付け
###Route53にドメインを登録
ドメインを扱うにあたり、まずAWSのRoute53へドメインを登録。
AWSコンソールのトップからRoute53と検索し、Route53のコンソールへと移動。
ホストゾーンの作成。
作成が正常に完了すると、NSレコードと呼ばれる値が割り振られる。
これで、Route53の初期設定は完了。
###お名前ドットコムのネームサーバーを変更
お名前ドットコムへアクセスし、他のネームサーバーを利用をクリック。
4つのドメインを入力して確認画面へ進む。
変更完了画面になれば、お名前ドットコムでのネームサーバー設定は完了。
###ドメインとEC2インスタンスのIPアドレスを紐付ける
次はドメインとEC2のIPアドレスを紐付け、独自ドメイン経由でアプリケーションを使えるようにしていきます。
一旦EC2のコンソールへ移動しIPV4パブリックIPをコピー。
Route53のコンソールに戻る。
レコードセットの作成。
・名前には何も入力しない
・タイプはA IPv4アドレスのまま
・値にはコピーしたEC2インスタンスのパブリックIPアドレスを入力
追加したAタイプの値にEC2のパブリックIPが記載されていれば設定は完了。
この設定により、DNS(名前解決)サービスに登録され、ドメインでアクセスが来た際にアクセス先をIPアドレスに変換する仕組みを利用できるようになった。
##AWS Certificate Managerでの証明書取得
現状だとhttp通信でしかアプリケーションを利用できない状態。
近年は常時SSL化が推奨されていているみたいです。
Google Chromeではhttp通信のままだと保護されていない通信
と出ます。
そのため、https通信のための証明書を準備していきます。
###ACMの初期設定
AWSコンソールのトップからACMのコンソール(Certificateと検索)へと移動します。
証明書のプロビジョニングの方の今すぐ始めるをクリック。
パブリック証明書を選択して証明書のリクエストをクリック。
無事ダウンロードができれば、ACMの設定は一旦終了。
###Route53で所有権の確認
ACMで証明書の発行を行うためにはドメインの所有権を確認しなければならないため、DNSを用いて確認。
Route53のコンソールへ移動。
レコードセットの作成。
ここで先ほどダウンロードしたDNS設定を確認。
ダウンロードした DNS_Configuration.csvを開く。
(タイプはCNAMEを選択・Record Valueは値全てをコピー)
入力が終わったら5分〜15分ほど待ちます。
その後、ACMのコンソールに戻り画面を更新し、証明書が発行済み
になっていれば所有確認は完了。
##ELBの立ち上げ
ELB(Elastic Load Blancer)
ELBを使い、https通信でアプリケーションを使えるよう設定。
###ELBの概要と役割
・ELBの役割
ELBは通常、ロードバランサーと呼ばれている。
つまり負荷のバランスを取る装置のこと。
例えばWebサーバーに負荷がかかりやすいアプリケーションの場合、使用例としては複数のサーバーに負荷を振り分ける。
例えばアクセスが増大した際にEC2の負荷が増加(CPUやメモリの使用量が増える)。
こういった場合、同じ処理を行うEC2を2台に増やすことで負荷を分散できる。
ただ、ELBを置かずにEC2を増やすだけだと、負荷を分散できない。
ここでELBを通して、アクセスを捌くことによって負荷を分散することができる。
・ELBのもう1つの役割
負荷の大きいアプリケーションを構築しない場合は、EC2を2台用意する必要はありません。
そのため、ELBは証明書を使ったセキュアな通信のために利用。
具体的には外部とやりとりする通信を簡単に暗号化できる。
VPC外とやりとりする際にセキュアはhttps通信を用いて、通信内容が外部に読み取られても安全な仕組みを作る。
対して、VPC内はプライベートなAWSのネットワークなので、暗号化しないhttp通信でやりとりする。
こういった仕組みをELBを用いて構築することにより、簡単にセキュアなネットワークを構築することができる。
###EC2コンソールからELBを立ち上げる
ELBは1日あたり約65円の料金がかかるため注意。
EC2コンソールのロードバランサーをクリック。
5分程度でELBの構築が完了。
###Route53の設定変更
これまでは以下のような流れでアプリケーションが動いていました。
1、ブラウザから独自ドメインにアクセス
2、Route53を通じでEC2にアクセスが渡る
3、EC2やRDSで処理して、ブラウザに結果を返す
しかし、今回はELBの証明書を挟むため、以下のような流れに変更します。
1、ブラウザから独自ドメインにアクセス
2、Route53を通じでELBにアクセスが渡る
3、ELBからEC2にアクセスを流す
4、EC2やRDSで処理して、ブラウザに結果を返す
2の部分であるRoute53の設定を変更していきます。
Route53のコンソールに移動。
ホストゾーン → 本教材のドメインをクリック。
タイプAの行をクリック。
右側の設定詳細にあるエイリアスをはいに変更。
アクセスを向ける先を作ったばかりのロードバランサーに変更。
変更したタイプAの値がALIAS ・・・
となっていれば、アクセスのルーティング先が変更完了。
httpsでアクセスできたら完了です。