🏸

Aurora Serverless V2をCDKで作る

2022/12/19に公開

はじめに

CDK、便利ですよね。ただ、AWSの凄まじいアップデートについていけてないこともしばしば。。
そんななかの1つがAurora Serverless V2への対応です。(L2コンストラクトが存在しない)
現時点での対応法についてIssueで議論はされていますが、日本語記事は無かったので紹介します。

結論

2022/12/19現在、以下のコードで作成可能です。

   const rdsV2 = new rds.DatabaseCluster(scope, `RDS-V2-Cluster`, {
      engine: rds.DatabaseClusterEngine.auroraMysql({
        version: rds.AuroraMysqlEngineVersion.VER_3_02_0
      }),
      credentials: rds.Credentials.fromGeneratedSecret('adminuser'),
      instances: 2,
      instanceProps: {
        instanceType: new InstanceType('serverless'),
        vpc,
        vpcSubnets: dbSubnet,
        publiclyAccessible: false,
      },
    })
    Aspects.of(rdsV2).add({
      visit(node) {
        if (node instanceof rds.CfnDBCluster) {
          node.serverlessV2ScalingConfiguration = {
            minCapacity: 0.5,
            maxCapacity: 1
          }
        }
      }
    })

Aspects.of が全くわかっていませんが、、とりあえずこれで作れます。

Discussion