ハマログ

株式会社イーツー・インフォの社員ブログ

AWSのRDSイベントサブスクリプションをCloudFormationで設定する

AWSのRDSイベントサブスクリプションをCloudFormationで設定する
複数のAWSアカウントにRDSのイベントサブスクリプションを設定しました。
当初は面倒だったので手動で設定していたのですが、手動のほうが面倒ということに気付いたため、CloudFormationで作成するようにしました。

設定内容

ソースタイプ
設定できるすべて:インスタンス、セキュリティグループ、パラメータグループ、スナップショット、クラスター、クラスタースナップショット、カスタムエンジンバージョン

イベントカテゴリ
「すべてのイベントカテゴリ」

CloudFormationテンプレート

AWSTemplateFormatVersion: '2010-09-09'
Description: "Create RDS Event Subscription"
# ------------------------------------------------------------#
# Input Parameters
# ------------------------------------------------------------#
Parameters:
  SNSTopic:
    Description: Please type the SNS Topic ARN.
    Type: String
Resources:
  # ------------------------------------------------------------#
  # RDS EventSubscription
  # https://docs.aws.amazon.com/ja_jp/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html
  # SourceType: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot
  # ------------------------------------------------------------#
  RDSEventSubscriptionInstance:
    Type: "AWS::RDS::EventSubscription"
    Properties:
      Enabled: true
      SnsTopicArn: !Ref SNSTopic
      SourceType: "db-instance"
  RDSEventSubscriptionCluster:
    Type: "AWS::RDS::EventSubscription"
    Properties:
      Enabled: true
      SnsTopicArn: !Ref SNSTopic
      SourceType: "db-cluster"
  RDSEventSubscriptionParameterGroup:
    Type: "AWS::RDS::EventSubscription"
    Properties:
      Enabled: true
      SnsTopicArn: !Ref SNSTopic
      SourceType: "db-parameter-group"
  RDSEventSubscriptionSecurityGroup:
    Type: "AWS::RDS::EventSubscription"
    Properties:
      Enabled: true
      SnsTopicArn: !Ref SNSTopic
      SourceType: "db-security-group"
  RDSEventSubscriptionSnapshot:
    Type: "AWS::RDS::EventSubscription"
    Properties:
      Enabled: true
      SnsTopicArn: !Ref SNSTopic
      SourceType: "db-snapshot"
  RDSEventSubscriptionClusterSnapshot:
    Type: "AWS::RDS::EventSubscription"
    Properties:
      Enabled: true
      SnsTopicArn: !Ref SNSTopic
      SourceType: "db-cluster-snapshot"
GitHubにもコミット済み
https://github.com/e2kaneko/aws-cloud-formation-rds-event-subscription

結果

作成できました
AmazonAuroraAWSCFCloudFormationPostgreSQLRDSSNSTemplateTopicyamlymlテンプレート通知

  kaneko tomo   2021年12月28日


関連記事

GCEに対する外部からのSSH接続を拒否しつつ、GCPコンソールからのSSH接続を許可する

タイトルのとおりです。 GCEのVMをプライベートサブネットに配置して、踏み台か…

GSuiteのアカウントでAWSマネジメントコンソールにログインする(SAML)

はじめに イーツー・インフォでは、AWSの複数アカウントを運用しています。そうい…

AWS Lambda/API GatewayのIP制限が解除されなくて困った話

AWSで環境構築・開発をするにあたって(AWSに限りませんがまあその)、 当然な…


← 前の投稿

次の投稿 →