CloudFormationでRDSデプロイする – 【CloudFormation】
CloudFormationでRDSデプロイするyamlです。
RDS
EngineVersionなどはシングルクォーテーションで囲まないと14.10は14.1扱いになってしまいます。
template.yaml
AWSTemplateFormatVersion: 2010-09-09
Transform: AWS::Serverless-2016-10-31
Description: CloudFormation template
Resources:
DBInstance:
Type: AWS::RDS::DBInstance
Properties:
Engine: postgres
EngineVersion: '14.10'
MasterUsername: postgres
MasterUserPassword: postgres
AllocatedStorage: '20'
DBInstanceClass: db.t3.micro
DBInstanceIdentifier: dbinstancename
PubliclyAccessible: true
Outputs:
Address:
Description: "Address"
Value: !GetAtt DBInstance.Endpoint.Address # dbinstancename.c98hpxx00o6a.ap-northeast-1.rds.amazonaws.com
Port:
Description: "Port"
Value: !GetAtt DBInstance.Endpoint.Port # 5432
CloudFormationのyaml内でRDSのエンドポイントやポートを参照するには、以下の方法で参照します。
| 参照 | 内容 |
|---|---|
| !GetAtt XXX.Endpoint.Address | dbinstancename.c98hpxx00o6a.ap-northeast-1.rds.amazonaws.com |
| !GetAtt XXX.Endpoint.Port | 3306 |
sam deploy
コマンドプロンプトからデプロイします。ここではスタック名はmystackにしています。
sam deploy --template-file template.yaml --resolve-s3 ^ --stack-name mystack --capabilities CAPABILITY_NAMED_IAM ^ --no-fail-on-empty-changeset --region ap-northeast-1
ドキュメント
AWS::RDS::DBInstance - AWS CloudFormation
Use the AWS CloudFormation AWS::RDS::DBInstance resource for RDS.
AWS::RDS::DBInstance Endpoint - AWS CloudFormation
This data type represents the information you need to connect to an Amazon RDS DB instance. This data type is used as a ...

KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^

