【学習記録】CloudFormationでRDS作成

CLoudFormationでECS、ALB、VPCなどはこれまでに作成できているので、CLoudFormationでRDSも作成する練習しときたいと考えてこちらのYouTube動画を参考にCloudFormationでRDSを作成しました。 www.youtube.com

必ずしもAWSリソースを全部コード化することが正しいわけではないと思いますが、マネジメントコンソールから操作したりAWS CLIを使ったりCloudFormationを使ったりすることでそのリソースに対する各パラメーターの役割とかひも付き方が整理しやすい気がして、いろいろ試してみます。

現時点で自分のRDSに対する知識は浅いのでこういった勉強を通して理解深めたいと思います。

用意したCloudFormationテンプレートは以下。

rds.yml

Parameters:
  DBNameP:
    Type: String
  MUser:
    Type: String
  MPass:
    Type: String
    Description: "It shouldn't be less than 8 characters"

Resources:
  MyDBvideoInstance:
    Type: AWS::RDS::DBInstance
    Properties:
      DBName: !Ref DBNameP
      MasterUsername: !Ref MUser
      MasterUserPassword: !Ref MPass
      Engine: MySQL
      DBInstanceClass: db.t2.micro
      StorageType: gp2
      PubliclyAccessible: True
      AllocatedStorage: "20"
      DBInstanceIdentifier: !Join ["-", ["MyDbInstance", !Ref "AWS::Region"]]
      AvailabilityZone: !Select [1, !GetAZs ""]

以下は構築の手順です。

Create New Stack(with new resources)をクリック
f:id:JunpeiNakasone:20210210212815p:plain

Step 1 Specify templateの画面で作成済みのymlファイルを選択してNextをクリック
f:id:JunpeiNakasone:20210210212959p:plain

Step 2 Specify stack detailsの画面でymlファイルで指定しているパラメーターの値を入力してNextをクリック
f:id:JunpeiNakasone:20210210213237p:plain

Step 3 Configure stack optionsの画面はデフォルトの設定のままNextをクリック
f:id:JunpeiNakasone:20210210213350p:plain

Step 4 Reviewの画面で設定に問題ないことを確認しCreate stackをクリック
f:id:JunpeiNakasone:20210210213510p:plain

Stackが作成されたことを確認(ちょっと設定変えたので前のキャプチャと違うところあります)

f:id:JunpeiNakasone:20210210220106p:plain

ResorcesタブからRDSにマネジメントコンソールに移動して設定を確認
f:id:JunpeiNakasone:20210210220244p:plain

CloudFormationからRDSを作成することができました。
この手順ではRDSがAWSアカウント作成時のデフォルトのVPCに作成されていたので、すでに構築しているECSと同じVPC内に置くなどテンプレートに手を加えていきたいと思います。