[初心者向け]AWS CDK触ってみた!環境構築編
こんにちは!前越です。
今回は、 AWS CDK(Cloud Development Kit)の環境構築 について初心者向けに解説していきます!
AWS CDK を使えば、TypeScript や Python などのプログラミング言語を使ってAWSリソースを定義できます。コンソール操作に比べて再現性が高く、バージョン管理もできるので、とても便利です。
AWS CDK を使うための環境構築を一から丁寧に説明していきます。
AWS CDKとは?
AWS CDKは「Cloud Development Kit」の略で、プログラミング言語を使ってAWSリソースを定義・プロビジョニングできるフレームワークです。
CDKの主なメリット
- Infrastructure as Code (IaC) の開発と管理: インフラをコードとして扱い、プログラム的、宣言的な方法でインフラを作成・管理できる
- 汎用プログラミング言語を使用してクラウドインフラを定義: TypeScript、JavaScript、Python、Java、C#/.Net、Goなどから選択可能
- AWS CloudFormationによるインフラのデプロイ: 信頼性の高いデプロイとロールバック機能を活用
- コンストラクトを使用した迅速な開発: 再利用可能なコンポーネントで開発を加速
やってみる
事前準備
AWS CDKを使うには以下のツールが必要です:
- Node.js(npm含む)
- AWS CLI
- AWS認証情報(アクセスキーなど)
Node.jsのインストール
AWS CDKはNode.js上で動作するため、まずはNode.jsをインストールします。
下記のNode.js公式サイトにアクセス
最新版であるLTS版をダウンロードするのが望ましいでしょう。
インストール確認
インストールが完了したら、ターミナルまたはコマンドプロンプトで以下のコマンドを実行して確認しましょう。
node -v && npm -v
ちゃんとインストール出来ていれば下記のようにnodeとnpmのバージョンが表示されると思います!
AWS CLIのインストール
次に、AWS CLIをインストールします。これはAWSリソースをコマンドラインから操作するためのツールです。
下記 AWS 公式サイトからインストーラーをダウンロード
各OSごとにインストーラーがあるためお使いのOSに合わせてインストーラーをダウンロードして実行してください。
インストール確認
インストールが完了したら、以下のコマンドでバージョンを確認します。
aws --version
下記のようにバージョン情報が表示されればインストール成功です!
AWS認証情報の設定
AWS CDKを使うには、AWSアカウントの認証情報が必要です。
IAMユーザーの作成とアクセスキーの設定
-
AWSマネジメントコンソールにログイン
-
IAMサービスにアクセス
- 「ユーザー」→「ユーザーを追加」をクリック
- ユーザー名を入力し、「次へ」をクリック
- 「既存のポリシーを直接アタッチ」を選択し、「AdministratorAccess」を検索してチェックし「次へ」をクリック
- 「ユーザーの作成」をクリック
- 作成したユーザーを選択して、「セキュリティ認証情報」タブの「アクセスキーの作成」をクリック
- ユースケースのCLIを選択して、下記の確認マーク✅して「次へ」をクリック
- 「アクセスキーを作成」をクリック
- アクセスキーID と シークレットアクセスキー を安全な場所に保存
AWS CLIの設定
ターミナルで以下のコマンドを実行し、認証情報を設定します
aws configure
-
Access Key と Secret Access Key
先ほどメモ📝したキーを設定 -
Default region name
デフォルトでリクエストを送信するサーバのAWSリージョンを設定します。東京(ap-northeast-1)に設定しました。 -
Default output format
出力結果の形式を選択します。何も設定しなければデフォルトは"json"です。
json,yaml,yaml-stream,text,tableの中から選びます。
再設定する場合、もう一度"aws configure"と打てば再設定できます。
AWS CDKのインストール
いよいよAWS CDK本体をインストールします!npmを使って簡単にインストールできます。
npm install -g aws-cdk
インストールが完了したら、バージョンを確認しましょう
cdk --version
バージョン番号が表示されればインストール成功です!
CDK環境の初期化(ブートストラップ)
AWS CDKを使用する前に、環境をブートストラップする必要があります。これは、CDKがデプロイに必要なリソース(S3バケットやIAMロールなど)を作成するプロセスです。
以下のコマンドを実行します:
cdk bootstrap aws://ACCOUNT-NUMBER/REGION
ACCOUNT-NUMBER と REGION は、自分のAWSアカウント番号とリージョンに置き換えてください。例えば:
cdk bootstrap aws://123456789012/ap-northeast-1
アカウント番号がわからない場合は、以下のコマンドで確認できます:
aws sts get-caller-identity
エラーが出なければ 環境構築 完了です!
CDKブートストラップで作成されるリソースを確認する
CDKブートストラップを実行すると、AWS環境にいくつかのリソースが作成されます。これらのリソースはCDKのデプロイ基盤として機能します。リソースを確認してみましょう。
CloudFormationスタックの確認
まず、AWSマネジメントコンソールからCloudFormationサービスにアクセスします。「CDKToolkit」という名前のスタックが作成されているはずです。
S3バケットの確認
このバケットは、CDKがデプロイ時に使用するLambda関数のコードやCloudFormationテンプレートなどを保存するために使用されます。
以下のようなバケットが作成されています
cdk-hnb659fds-assets-${ACCOUNT_ID}-${REGION}
IAMロールの確認
ブートストラップではいくつかのIAMロールも作成されます。これらのロールは、CDKがリソースをデプロイする際に必要な権限を提供します。
まとめ
今回は、AWS CDKの環境構築手順について解説しました。
意外と簡単に環境構築できましたね!
AWS CLIの設定辺りでつまづきやすいポイントもありますが、手順通りに進めれば問題なく設定できるはずです。
次回は、この環境を使って実際に動かしたブログを公開する予定です。
ぜひ、お楽しみに!
参考
アノテーション株式会社について
アノテーション株式会社はクラスメソッドグループのオペレーション専門特化企業です。サポート・運用・開発保守・情シス・バックオフィスの専門チームが、最新ITテクノロジー、高い技術力、蓄積されたノウハウをフル活用し、お客様の課題解決を行っています。当社は様々な職種でメンバーを募集しています。「オペレーション・エクセレンス」と「らしく働く、らしく生きる」を共に実現するカルチャー・しくみ・働き方にご興味がある方は、アノテーション株式会社 採用サイトをぜひご覧ください。