スクリーンショット_2020-01-30_00

AWS習得編 ゼロからわかるAWS超入門 CHAPTER6

https://www.amazon.co.jp/ゼロからわかる-Amazon-Services超入門-はじめてのクラウド-かんたんIT基礎講座-ebook/dp/B07TFTGHMX/ref=dp_kinw_strp_2
こちらの書籍について学んだことです。

CHAPTER6 固定IPアドレスとドメイン名を使おう

ドメイン名を使うには、AWSのRoute53というマネージドサービスを使う。
3章で作ったS3のサーバー
4章・5章のEC2のサーバー
それぞれをドメイン名でアクセスできるようにする。

6-1 IPアドレス・ドメイン名を設定するには

ドメイン名でアクセスできるのを目指す

6-1-1 ドメイン名によるアクセス

サーバーにドメイン名でアクセスできるようにするのを目指す

6-1-2 この章での操作の流れ

ドメイン名の例
http://www.awsbookexample.com/
http://blogs.awsbook.example.com/

①固定IPアドレスを割り当てる
S3バケットはエンドっポイントが固定化されている
EC2インスタンスは停止して起動しなおすとパブリックIPやパブリックDNSが変わっちゃうから固定化するためにElasticIPという機能を使う

②ドメインを取得する
AWSで操作すれば手に入る

③ドメイン関連付け
Route53の出番


6-2 Elastic IPで固定IPを割り当てる

固定IP割り当てからスタート

6-2-1 EC2インスタンスのIPアドレスは変わる

EC2のIPアドレスは変わるよ

6-2-2 Elastic IPアドレス

別名EIP
IPアドレス固定化!

6-2-3 Elastic IPの料金

1時間あたり0.005ドルかかるよ
1ヶ月あたり3〜4ドルかかるよ

6-2-4 IPアドレスを確保する

さっそく操作

EC2のElasticIPをポチ
ElasticIPアドレスの割り当てをポチ

ElasticIPアドレスの設定でAmazonのIPv4アドレスプールをポチ

13.112.230.25が割り当てられる

6-2-5 IPアドレスを割り当てる

新しく取ったIPアドレスを選択した状態でElasticIPからアクションをポチ
ElasticIPアドレスの関連付けをポチ
インスタンスを選択
インスタンスはWordPressWebServerを選択
プライベートIPアドレスは別に選択しなくてもいいっぽい
これで、13.112.230.25に固定化

http://ec2-54-65-30-164.ap-northeast-1.compute.amazonaws.com
http://ec2-13-112-230-25.ap-northeast-1.compute.amazonaws.com

データベースにアクセスできないことが確認

6-2-6 レイアウトの崩れなどに対応する

これ、WordPressが原因。

まずはssh接続
cd Dropbox/【フリーランスエンジニアに必要なデータ】/001\ ブログ/001\ 未経験からエンジニアへ/013\ AWS習得編
ssh -i myserverkey.pem ec2-user@13.112.230.25
sudo -i

wp-config.phpファイルを開く
sudo nano /var/www/html/wp-config.php

最初の2行を追記
define('WP_HOME','http://13.112.230.25')
define('WP_SITEURL','http://13.112.230.25')

再度開いてみる
http://ec2-13-112-230-25.ap-northeast-1.compute.amazonaws.com

真っ白だなぁ・・・。

http://ec2-13-112-230-25.ap-northeast-1.compute.amazonaws.com/wp-admin/install.php

真っ白だなぁ・・・。

http://ec2-13-112-230-25.ap-northeast-1.compute.amazonaws.com/wp-admin/install.php

真っ白だなぁ・・・。

sudo systemctl restart httpd

なにも表示されない!

原因はセミコロン抜け!
define('WP_HOME','http://13.112.230.25');
define('WP_SITEURL','http://13.112.230.25');

これで表示された!

6-3 ドメイン名を使えるようにするには

DNSサーバー設定

6-3-1 ドメイン名の取得

AWSも実はレジストラ。マジか!

6-3-2 ドメインとホスト名

ドメイン取得時はexample.co.jpのような名前で申請する。
アクセスするときの左側につけたwww.はドメインを取得した人がつける好きな名前
www.がついた全体の名前のことは完全修飾ドメイン名(FQDN)という。

Fully Qualified Domain Name

wwwはホスト名
example.co.jpはドメイン名

6-3-3 ドメインを使うためのDNSサーバー

DNSサーバーが必要

6-4 Route53でDNSサーバーを作る

Route53でDNSサーバー作る!

6-4-1 Aレコードを構成する

ホスト名とIPアドレスを結びつけるときに使われるのはAレコード

6-4-2 S3バケットの場合はエイリアス機能を使う

EC2はAレコードでいいけどS3はエイリアス機能使わないと無理

EC2
http://ec2-13-112-230-25.ap-northeast-1.compute.amazonaws.com

S3
http://www.jun-web-free.com.s3-website-ap-northeast-1.amazonaws.com

S3の対応方法は2つ

①エイリアス機能を使う
Route53にはAレコードに対して「エイリアス」と呼ばれる拡張機能があり、S3バケットなどのIPアドレスとして接続先が指定されないものに対しても、ホスト名の割り当てができる。
エイリアス機能はRoute53独自のもの。

汎用的なDNSサーバーの機能にはない。

②CNAMEを使う
Aレコードの代わりにCNAMEレコードを使う方法
CNAMEレコードは、DNSにおける別名を示すレコードで、あるホスト名に対して別のホスト名(ドメイン名)を指定できる。
Route53以外でDNSサーバーを構成する場合にも使える

①推奨

一般には短いURLが好まれる

ホスト名なしとかも多くなった。
ホスト名なしドメイン名の別名
ゾーンAPEX(エイペックス)
ネイキッドドメイン(Naked Domain)
ルートドメイン(Root Domain)

制限がひとつある。
CNAMEレコードが使えない
Route53ならAレコードでエイリアスすればCNAMEレコードの代わりになるため問題ないが、そうでないときは注意!

6-4-3 S3バケット名とドメイン名の関係

バケット名はアクセスするときのドメイン名と合致しなければならない
S3バケット造ったときからドメイン名は固定されるから作るときはめっちゃ注意

6-4-4 ドメイン名でアクセスできるようになるまでの操作

①ドメイン名の申請
②EC2インスタンスに接続できるようにする
③S3バケットに接続できるようにする

6-4-5 Route53の費用

実は無料じゃないから注意ね

①ドメイン名の申請費用
1年間の使用料金
末尾の種類などによって変わってくる。
高いとめっちゃ高い。100ドルとか!

②運用費用
運用費用=月額固定費+アクセスされた回数に対する変動費

固定費は0.5ドル

6-5 ドメイン名を申請する

実際に設定していく

6-5-1 Route53ダッシュボード

AWSからRoute53

Route53は読み方ルートフィフティースリー

ドメインの登録をポチ

6-5-2 Route53でドメイン名を申請する

ドメインの登録をポチ

ドメイン名結構高いんだなぁ・・・
ここまでにしておく。
ポートフォリオ作成時にまた決める!

6-6 EC2にドメイン名でアクセスできるようにする
6-6-1 Aレコードを設定する
6-7 S3バケットにドメイン名でアクセスできるようにする
6-7-1 S3バケット名の注意点
6-7-2 エイリアスを設定する

パブリックIPやパブリックDNSは、ECインスタンスを停止して再度起動すると変わる。
いつも同じ値にしたいのなら、ElasticIPを設定する。

ドメイン名でアクセスできるようにしたければ、ドメイン名の申請が必要。
ドメインの運用にはDNSサーバーが必要。
AWSでは、Route53サービスがDNSサーバーとして機能する。
ホスト名とIPアドレスを関連付けるにはAレコードを使う。
S3バケットのようにIPアドレスではなくドメイン名の場合には、エイリアスという機能を使う。



この記事が気に入ったらサポートをしてみませんか?