ロゴ画像

  • HOME
  • Blog
    Allcategories
  • Portfolio
  • Profile
  • Contact

【入門】AWS CDK (TypeScript) 開発環境構築

インフラ
投稿日:
2023.10.15
最終更新日:
2023.10.15

今回はAWS CDKに入門したので、その際の開発環境構築の方法を議事録を兼ねて記事にしました。

基本的には以下の記事を参考にさせていただいていますが、本記事ではそれぞれの概念の説明も補足的に含めていますので、ご参考までにご活用ください。

AWS CDKチュートリアル(1) 環境構築|SHIFT Group 技術ブログの画像AWS CDKチュートリアル(1) 環境構築|SHIFT Group 技術ブログはじめに こんにちは、株式会社SHIFT DAAE部の栗山です。今回からAWS CDKのチュートリアルを執筆していきたいと思います。 第1本目の今回はCDKの環境構築方法の解説です。 本来であればnote.com

想定する読者

  • AWS CDKに関してキャッチアップしたい。
  • AWS CDK (TypeScript) の開発環境の構築手順が知りたい。

前提条件

  • お使いのローカル開発環境にNode.jsがインストールされている。
  • AWSアカウントを持っている。
  • AWS IAMユーザーを作成している。

AWS CDKとは?

本題に入る前に、そもそもAWS CDKとは何なのかについてざっくり解説したいと思います。

AWS Cloud Development Kit (AWS CDK) はTypeScript, JavaScript, Pythonなどのプログラミング言語を使用してインフラのリソースをコードで管理できるようにする仕組みのことで、いわゆる「Infrastructure as Code」と呼ばれるものの一つです。

インフラをコード化する技術・手段としては、CDKの他にもTerraformなどが挙げられます。

Terraformは1つのプロバイダー(AWS, GCP, Azure等)に依存することなく、他のプロバイダーのクラウドインフラを扱える点ではメリットがありますが、CDKはAWS環境において最適化されているので、AWSを扱う場合はCDKを用いるのが良いと言えます。

CDKの簡単な概要の説明は以上になりますので、以下でAWS CDK (TypeScript) の開発環境構築の手順に入っていきたいと思います。

AWS CLIのインストール

まず、AWS CLIをインストールします。

Node.jsがインストールされていることを確認してください。

bash
$ node -v
v18.16.0

続いて、AWS CLIがインストールされていないことを確認した上で、インストールしていきます。

なお、AWS公式を参考に最新の手順でインストールを完了させてください。

(以下、Mac OS向けの手順:Windows、その他の手順に関しては公式を参考にしてください。)

bash
$ aws –-version
Command 'aws' not found 
bash
$ curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
bash
$ sudo installer -pkg AWSCLIV2.pkg -target /

インストールが完了したら、一度ターミナルを再起動し、以下でインストールされていることを確認します。

(バージョン等は異なっていても問題ありません。)

bash
$ which aws
/usr/local/bin/aws

$ aws --version
aws-cli/2.10.0 Python/3.11.2 Darwin/18.7.0 botocore/2.4.5

AWS CLIの初期設定

続いて、インストールしたAWS CLIの初期設定を行います。

なお、AWS IAMのユーザーが作成されていることを前提に進めますので、IAMユーザーを作成されていない場合は、こちらを参考にIAMユーザーの作成を完了させてください。

はじめに、お使いのIAMユーザーの

  • Secret Access Key
  • Access Key ID

を取得します。

取得方法はAWS公式の手順を参考に取得するようにしてください。(AWS アカウントとアクセスキー )

取得が完了したら、以下のコマンドで取得した情報を入力していきます。

bash
$ aws configure
AWS Access Key ID [None]: アクセスキー
AWS Secret Access Key [None]: アクセスキーのシークレット
Default region name [None]: ap-northeast-1
Default output format [None]: json

Default region NameDefault output format は任意のもので問題ありませんが、基本的には上記の設定で問題ないかと思います。

以下のコマンドでAWS CLIの設定がされたことを確認します。

bash
$ aws ec2 describe-vpcs
{
    "Vpcs": [
        {
            (省略)

describe-vpcsコマンドの結果が出力されれば、AWS CLIの初期設定は完了です。

CDKのインストール

CDKをローカルにインストールしていきます。

以下のコマンドでインストールを完了させ、実際にインストールされているかを確認します。

(バージョンが表示されればインストール完了です。)

bash
$ sudo npm install -g aws-cdk

$ cdk --version
2.44.0 (build bf32cb1)

CDKの初期設定

CDKのインストールが完了しましたら、bootstrapping (ブートストラッピング) という初期設定が必要です。

ブートストラップとは、新しくCDKのアプリケーションをデプロイする際に最初の1回だけ実行する必要がある呪文のようなものです。

このコマンドを実行することで、CDKアプリケーションのデプロイに必要な周辺リソースが自動的に作成されます。

まず、以下のコマンドでbootstrappingに必要な設定情報を取得します。

bash
$ aws sts get-caller-identity
{
    "UserId": "【ユーザーID】",
    "Account": "ACCOUNT-NUMBER",
    "Arn": "arn:aws:iam::ACCOUNT-NUMBER:user/【ユーザー名】"
}

こちらで取得した情報のうち、ACCOUNT-NUMBER の情報を用います。

以下のコマンドでブートストラップを行います。

bash
$ cdk bootstrap aws://ACCOUNT-NUMBER/REGION

REGIONは使用するリージョン(ap-northeast-1など)を設定してください。

以上でAWS CDKのインストール・初期設定は完了です。

CDKのプロジェクトを作成する

ここまでの環境構築が完了したところで、続いてCDKのプロジェクトを作成していきます。今回用いる言語はタイトルにもありますように、TypeScriptを用いて行っていきます。

CDKの開発自体、TypeScriptで行われていることもあり、CDKのドキュメントや技術記事等もTypeScriptで解説されているものが多いのでおすすめです。

それでは、任意のディレクトリに移動した状態で、以下のコマンドを実行します。

bash
$ cdk init --language typescript SampleCdk

作成作成したディレクトリに移動して、パッケージをインストールします。 (インストール方法はお使いのパッケージマネージャーに従ってください。)

bash
$ yarn
or
$ npm i
or
pnpm i

ここまでが、AWS CDKの環境構築になります。 実際にリソースを作成してデプロイする流れまでを知りたい方は以下のAWS CDK Workshopを参考に動かしてみることをお勧めします。

新しいプロジェクトの画像新しいプロジェクトcdkworkshop.com

ここまで読んでいただきありがとうございました。 SNSのフォロー・記事のシェアもよろしくお願いします。

See You !!

記事をシェアする

ロゴ画像

  • HOME
    • ホームへ戻る
  • Blog
  • Profile
  • Portfolio
プライバシーポリシー利用規約お問い合わせ
Copyright © Mates for engineer All Rights Reserved