AWS CDK(v2): 基本設定

目次

AWS CDK v2 は、AWS のインフラ構成をプログラミング言語で記述して、作成したり変更したりを可能にするツールです。最初は Web の管理画面からポチポチ行っていた操作も、何度も同じようなことを(ミスなく手早くイライラせず)繰り返すのが大変になってくるので、こういう定型化の仕組みは慣れると重宝します。

個人的にこの CDK が便利だなと強く思うのが、IAM 系の権限の付与が手軽にできたり、各種リソースの連携を簡単にかけることです。管理画面で行うと各種画面を行ったり来たりしないといけないことが、簡単にかけるとちょっと感動します。 CDK でできる基本的なことは CloudFormation でもできると思いますが、CDK では記述言語に TypeScript を選ぶと、VSCode などで編集すればプロパティ名などをいい感じに補完してくれたり、使えない組み合わせのようなものも事前に検出できるのでなかなか快適です。

AWS CDK は 2021 年 12 月 2 日に一般提供が開始されました。概ね v1 と似たような書き方になりますが、微妙に違ったりして、既存のサンプルがそのまま動かないこともしばしばあるので、メモとして残していこうと思います。

基本設定

参考: 公式ドキュメントのGetting Started

環境

  • MacBook Pro(M1), OS: Monterey(12.0.1)
  • node: v16.13.1

Setup AWS Account

いきなりですが、ここは色々な方法があるので割愛します(調べれば色々出てきます)。 基本的には aws configure などから credentials の設定を行っておく必要があります。

node の Install

aws-cdk を使うために node の v16 系が欲しいので、 nvm経由で Install します。

% brew install nvm
% nvm --version
0.39.0
% nvm install 16
% node --version
v16.13.1

Install AWS-CDK & TypeScript

aws-cdktypescript を Install します。

% npm install -g aws-cdk typescript
% cdk --version
2.2.0 (build 4f5c27c)
% tsc --version
Version 4.5.4

Bootstrapping

「AWS アカウント + Region」毎に 1 回だけ bootstrap というのを実行しておく必要があります。 例えば、 アカウント番号が 123456789 で、 リージョンが ap-northeast-1 なら以下のように実行します。

cdk bootstrap aws://123456789/ap-northeast-1

これが成功すれば、AWS のアカウント設定もあわせて OK なので、次のステップに進めます。