この記事ではEC2を利用してウェブサイトを公開する方法のフェーズ4として、RDSの作成を行っていきます。
EC2を利用してウェブサイトを公開する方法(モノローグ)
EC2を利用してウェブサイトを公開する方法①VPC作成編
EC2を利用してウェブサイトを公開する方法②EC2作成編
EC2を利用してウェブサイトを公開する方法③ELB作成編
構成図(モノローグと同じものです)
作成するもの
RDS
セットアップや管理が簡単なリレーショナルデータベース(RDB)のマネージドサービスです。
EC2に自分でDBをインストールするのと違い、バックアップやOSのアップデート、冗長化などをAWSが自動で行ってくれます。
DB Subnet Group
RDSをVPC内のどのSubnetに配置するかを定義する「Subnetの集合」です。
RDSでマルチAZ構成をとるためには、あらかじめ2つ以上のAZにまたがるSubnetをグループ化しておく必要があります。
構築作業
DB Subnet Group作成
- DB Subnet Groupを作成します
RDSのサブネットグループからDB サブネットグループを作成

名前と説明を入力、VPCを選択してください。
サブネットはaとcを選択しweb-test-private-a-2とweb-test-private-c-2を選択します。
RDS作成
- データベース作成
RDSのデータベースからデータベースの作成を行います。

エンジンはMySQLでフル設定で作成します。
可用性と耐久性は真ん中のマルチAZ(2インスタンス)にします。

DBインスタンス識別子を入力し、認証情報管理をセルフマネージドにして、パスワードを自動生成にします。

インスタンスの設定は一番安いdb.t3.microにします。

ストレージはストレージタイプをgp2で20GiBにします。
とりあえず自動スケーリングは有効にしておいた方がいいです。(スケーリングによって料金が上がるので注意は必要です。)

EC2 コンピューティングリソースに接続のほうは自動でSGとかが作成されて便利ですが、ちゃんと通信管理したいなら接続しないで手動で設定した方がいいです。
VPCを選択したら、自動でDBサブネットグループも選択されるはずです、sgにはweb-test-sg-rdsを指定してください

拡張モニタリングはOFFでも問題ないです

パスワードを自動生成にした場合、作成直後に表示される「接続詳細を表示」ボタンからしか確認できません。このタイミングを逃すと再発行が必要になるため、必ずメモしておきましょう。
接続確認
- web-test-ec2-web1に接続する。
Tera Termを起動してweb1に接続してください。
MariaDBをインストールしましょう。
sudo dnf install -y mariadb105
mysqlに接続します。
mysql -h [RDSのエンドポイント] -u [ユーザー名] -p
このように接続出来たら成功です。
まとめ
これでウェブサーバーがDBを使えるようになりました。
実際にアプリケーションでDBを使用するにはシークレットマネージャに接続情報を保存してアプリから取りに行くなどまた別の設定が必要になりますが、アプリ開発のほうになってくるのでここではスルーしています。
RDSはウェブサイトを公開するためのインフラリソースの中では費用が高いので勉強する際には気を付けてください。
検証が終わったら、インスタンスを「一時的に停止」するか、不要であれば「削除(スナップショット作成は任意)」することを忘れないようにしましょう。
