CDK リポジトリで cdk deploy を行う場合の、一般的な実施手順をまとめます。
1. AWS認証を取得する
まず、対象AWSアカウントへログインします。
組織によっては:
- AWS SSO
- IAM Identity Center
- 一時認証情報
- MFA
などを利用します。
例:
aws sso login
または:
aws login --remote
2. 環境設定ファイルを準備する
CDK アプリケーションが参照する設定値を準備します。
代表例:
- AWS Account ID
- Region
- 環境名(dev/stg/prod)
- ドメイン
- ARN
- VPC設定
- API Endpoint
- バケット名
など。
設定ファイル例
account: xxxxxxxxxxxx
region: ap-northeast-1
prefix: dev
domain:
name: example.com
重要
実務では:
環境差分を設定ファイルで吸収
することが多いです。
3. 外部依存・手動リソースの有無を確認する
CDKだけで完結しない構成が存在します。
例えば:
- Secrets Manager の事前登録
- ACM証明書
- Route53 Hosted Zone
- CloudFront Key Pair
- 外部DNS
- OAuth設定
など。
実務で重要
「どこまで自動化されているか」
を事前確認します。
4. 必要なら CDK bootstrap を実行する
対象アカウント・リージョンで初回の場合、bootstrap が必要です。
cdk bootstrap
マルチリージョン構成の場合
リージョンごとに必要です。
例:
cdk bootstrap aws://ACCOUNT/ap-northeast-1
cdk bootstrap aws://ACCOUNT/us-east-1
なぜ必要?
CDK が内部利用する:
- Asset Bucket
- Deploy Role
などを作成するため。
5. 依存ライブラリをインストールする
Node.js系なら:
pnpm install
または:
npm install
6. ビルド・テストを実施する
デプロイ前確認。
build
pnpm build
test
pnpm test
目的
- TypeScriptエラー
- 設定不備
- 単体テスト失敗
を事前検知。
7. CloudFormation差分を確認する
いきなり deploy せず、まず差分確認。
cdk diff
ここで確認するもの
- S3削除
- DynamoDB置換
- CloudFront再作成
- IAM変更
など。
実務では重要
deploy前diff確認
はかなり重要です。
8. deploy を実行する
全スタック:
cdk deploy
スタック単位
cdk deploy MyStack
複数スタック
cdk deploy FrontendStack BackendStack
9. deploy後確認を行う
AWS Console で確認。
代表例:
- CloudFormation
- Lambda
- CloudFront
- Route53
- ECS
- DynamoDB
など。
10. 必要なら追加手動設定を行う
構成によっては deploy 後に:
- DNS切替
- Secrets登録
- CloudFront鍵登録
- OAuth Callback設定
- WAFルール適用
などを行います。
11. 再deployが必要な場合もある
手動設定後に:
cdk diff
cdk deploy
を再実行する場合があります。
推奨実運用フロー
1. AWSログイン
2. 環境設定準備
3. bootstrap確認
4. install
5. build
6. test
7. cdk diff
8. cdk deploy
9. 動作確認
10. 必要なら追加手動設定
11. 再deploy