はじめに
AWSのインフラ構築をする際に手でポチポチすることもできますが、
CloudFormationを使うと無料で自動で構築できます。
利点は以下になると考えています。
- テンプレートを作成しコード化すると同じ構成を作成しやすい
- 変更したスタックのみを更新できる
- バージョン管理ができる
しかし、CloudFormationでAPI GatewayのWAFの設定はできませんでした。
API GatewayのWAFの設定
CloudFormationでAPI Gatewayに設定できるリソースは↓です。
Amazon API Gateway リソースタイプのリファレンス
2018年11月にAPI GatewayにWAFを有効化できるようになったばかりなので、
まだCloudFormationに対応していないのかもしれません。
手で設定
AWSのコンソールのAPI Gatewayの画面でデプロイしているステージから設定タグを開きます。
WAFを設定する項目があるので、デプロイしているWAFを選びます。
おまけ
re:Invent 2018で発表されたDynamoDBオンデマンド(従量課金)をCloudFormationで指定する方法です。
template_dynamo.yml
TextDynamoDB:
Type: AWS::DynamoDB::Table
Properties:
AttributeDefinitions:
- AttributeName: table_key
AttributeType: S
KeySchema:
- AttributeName: table_key
KeyType: HASH
BillingMode: PAY_PER_REQUEST
TableName: table_name
BillingMode: PAY_PER_REQUEST
と書くとオンデマンドになります。
最後に
CloudFormationで設定できない項目が他にもあるかもしれないので、
ご存知の方はコメントいただけると嬉しいです!