前回
今回の作業
- 今回の完成イメージ
- Privateサブネット作成
- RDSでDBサーバー作成
- SGの設定変更
- 疎通確認
1. 今回の完成イメージ
2. Privateサブネット作成
インターネットに公開しないため、ルートテーブルもデフォルトの設定のままでよい

3. RDSでDBサーバー作成
これからDBを作成するが、事前に準備すべき2ポイントを記載する
事前準備① Privateサブネットをもう一つ作成
DBには先ほど作ったPrivateサブネットを紐づけたいがそれだけだと以下のエラーが出る

内容として別々のAZを指定しているサブネットが2つ必要とある
そのためもう一つPrivateサブネットを用意する
今度はap-northeast-1cで作成

事前準備② サブネットグループ作成
DBを作成する際、VPCを指定してその中のどのサブネットと紐づけするか選択する(サブネットグループと呼ばれるもので指定する)
この時にサブネットグループが自動で作成されるが、デフォルトだと含まれるサブネットが3つになっている(Public+Private2つ)
Publicは外したいので、Privateサブネットのみのサブネットグループを新規作成する
「Aurora and RDS」から新規作成できる

ここまでで事前にやるべきことは終了なので、いよいよ実際のDB作成を行う
DB作成
「Aurora and RDS」からダッシュボードを開き「データベースを作成する」を押下

今回はMySQLを選択、データベースの作成方法はフル設定にする

デフォルトから変更するポイントは以下の箇所だけ
●認証情報の管理

パスワードを自動生成にチェック
Q. サブネットグループに2種類のAZが指定されているがどうなる?
作成時の設定によりap-northeast-1aが指定されている
マルチAZを有効化すると、1aで障害発生時に1cで動作する
今は無効化されている
これで基本的な設定は終わったので次にSGを変更する
4. SGの設定変更
変更前
以下の通り、自分のIPアドレスの3306ポートだけ開いてる

Q. なぜSGを指定するのか?IPアドレスではなく?
AWSではインバウンドルールにSGを指定すると、そのSGをもつサーバーとの通信を許可する
IPアドレスを指定する場合と比べて、冗長構成等の理由で複数台の同じ用途のサーバーを立てているときに簡単に対応できる
5. 疎通確認
●Webサーバーからの疎通確認
Webサーバー上でMySQLをインストール(ここではmariadb)
sudo dnf install mariadb105 -y
その後、次のコマンドでRDSに接続できる
mysql -h <RDSエンドポイント> -u admin -p
●ローカルでも疎通確認
DB作成時、パブリックアクセスを無効にしているため、期待値通りタイムアウトで失敗する

ここまでで、WebサーバーからのみRDSへ接続可能であり、外部からは遮断されたセキュアな構成であることを確認できた
次の作業:ALB構築
(NAT Gatewayの構築を予定していたがRDSでは不要のためスキップ)








