AWS CLIだけで試すCloudFormation Express Mode

記事タイトルとURLをコピーする

はじめに

今月誕生日の人、おめでとうございます🎉 エデュケーショナルサービス課の森純子です。

CloudFormationのデプロイ、待ち時間が長いなぁ…と思ったこと、ありませんか? 特にCloudFrontを含むスタックだと、5分以上待たされることもしばしば。テンプレートの修正→再デプロイのたびにコーヒーブレイクが挟まるあの時間、なんとかならないかなと思っていました。

そんな方々に朗報です! 2026年6月30日のアップデートで、CloudFormation Express Mode がリリースされました🎉

AWS CloudFormation and CDK express mode speeds up infrastructure deployments by up to 4x(2026年6月30日)

弊社ブログでは兼安が AWS CDK(AWS Cloud Development Kit、TypeScript)での検証記事 を公開しています。本記事では CDKを使わず、AWS CLIだけ でExpress Modeを試してみました。CDK環境がなくても、今すぐ手元で試せます。

本記事の登場サービス

略称 正式名称
CloudFormation AWS CloudFormation
CloudFront Amazon CloudFront
S3 Amazon S3(Amazon Simple Storage Service)
SQS Amazon SQS(Amazon Simple Queue Service)
DLQ Dead Letter Queue(配信不能キュー)

対象読者

  • CloudFormationテンプレートをAWS CLIで直接デプロイしているAWS運用者
  • CDK環境を持っていないが、Express Modeの効果を体感してみたい方

本記事で分かること

  • AWS CLIでExpress Modeを有効にする具体的な手順
  • AWS CLIバージョンの落とし穴(古いバージョンではオプションが認識されない)
  • CloudFront + S3構成での計測結果(通常モード4分3秒 → Express Mode 1分2秒)

Express Modeとは

従来のCloudFormationは、リソースの「安定化」が完了するまで待ってからデプロイ完了と報告していました。例えばCloudFrontディストリビューションの場合、全エッジロケーションへの伝播完了まで数分間待機してから CREATE_COMPLETE になります。

Express Modeは、AWSがリソースの 設定適用を確認した時点 でデプロイ完了と報告します。安定化(エッジ伝播、DNS反映等)はバックグラウンドで継続します。

利用方法は、既存テンプレートそのまま、CLIの引数に --deployment-config Mode=EXPRESS を追加するだけです。テンプレートの書き換えは不要です。

【落とし穴】AWS CLIのバージョンに注意

検証で最初にハマったポイントを先に共有します。

AWS CLI v2.35.6--deployment-config オプションを指定したところ、以下のエラーが発生しました。

aws: [ERROR]: Unknown options: --deployment-config, {"mode": "EXPRESS"}

AWS CLI v2.35.15 にアップデートしたところ、正常に動作しました。

Express Modeを利用する場合は、事前にAWS CLIを最新版にアップデートしてください。

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "/tmp/awscliv2.zip" \
  && unzip -o /tmp/awscliv2.zip -d /tmp \
  && sudo /tmp/aws/install --update

アップデート後の確認:

$ aws --version
aws-cli/2.35.15 Python/3.14.5 Linux/6.6.114.1-microsoft-standard-WSL2 exe/x86_64.ubuntu.26

検証環境

項目 内容
AWS CLI v2.35.15
リージョン ap-northeast-1(東京)
OS Ubuntu on WSL2
構成 Amazon CloudFront + Amazon S3

CloudFrontはエッジ伝播に数分かかるため、Express Modeの効果が最も見えやすいリソースです。

検証手順と結果

通常モードでのデプロイ

time (aws cloudformation create-stack \
  --stack-name express-test-cf-standard \
  --template-body file://template-cloudfront.yaml \
  --region ap-northeast-1 && \
aws cloudformation wait stack-create-complete \
  --stack-name express-test-cf-standard \
  --region ap-northeast-1)

結果:

real    4m3.523s

Express Modeでのデプロイ

違いは --deployment-config Mode=EXPRESS を追加するだけです。

time (aws cloudformation create-stack \
  --stack-name express-test-cf-express \
  --template-body file://template-cloudfront.yaml \
  --deployment-config Mode=EXPRESS \
  --region ap-northeast-1 && \
aws cloudformation wait stack-create-complete \
  --stack-name express-test-cf-express \
  --region ap-northeast-1)

結果:

real    1m2.276s

結果まとめ

構成 通常モード Express Mode 短縮率
CloudFront + S3 4分3秒 1分2秒 約75%
SQS + DLQ(参考) 1分32秒 1分33秒 差なし

CloudFrontのように 安定化に時間がかかるリソースほどExpress Modeの効果が大きい ことが確認できました。兼安の記事ではAmazon ECS(Fargate)で76.8%短縮という結果が出ており、同程度の短縮率です。

一方、SQSのように即時利用可能なリソースでは差が出ませんでした。Express Modeが省略する「安定化チェック」の部分がそもそもないためです。

利用時の注意点

  1. ロールバックがデフォルト無効 — デプロイ失敗時はスタックが CREATE_FAILED 状態で残ります。手動でスタックを削除して再デプロイする必要があります
  2. 設定適用完了 ≠ リソース安定化完了 — Express Modeで CREATE_COMPLETE になっても、CloudFrontのエッジ伝播等はバックグラウンドで継続中の場合があります。本番トラフィックを流す前に、リソースの状態を別途確認してください
  3. StackSets・SAMでは使用不可 — 現時点ではスタンドアロンのCloudFormationスタック操作のみ対応しています
  4. 追加料金なし — Express Modeの利用に追加費用は発生しません
  5. AWS CLIのバージョン — 古いバージョンでは --deployment-config オプションが認識されません。最新版にアップデートしてから利用してください

コスト

リソース コスト
S3バケット オブジェクト未格納のため0円
CloudFront リクエスト・転送なしのため0円
SQS キュー作成のみ・メッセージ送受信なしのため0円
Express Mode 追加料金なし

今回の検証規模ではコストは発生しません。検証後にスタックを削除すればリソースも残りません。

まとめ

  • Express Modeは AWS CLIの引数を1つ追加するだけ で利用できる。テンプレート修正は不要
  • 安定化に時間がかかるリソース(CloudFront、ECS等)を含むスタックで効果が大きく、CloudFront + S3構成では約75%の時間短縮を確認
  • SQSのように即時利用可能なリソースのみの構成では差が出ない
  • 開発・検証環境での利用を推奨 — 本番環境ではリソースの安定化を待つ通常モードが適切
  • AWS CLIは最新版にアップデートしてから試すこと(v2.35.6では動作しない)

検証後はスタックを削除してリソースを残さないようにしましょう。

aws cloudformation delete-stack --stack-name <スタック名> --region ap-northeast-1

テンプレートの試行錯誤で待ち時間にストレスを感じている方、ぜひ試してみてください!

関連情報

AWS CDKにおけるExpress Mode

AWS CDKにおけるExpress Modeについてはこちらをご覧ください。

blog.serverworks.co.jp