【UPDATE】CloudFormationのリソース作成が視覚化されました!

【UPDATE】CloudFormationのリソース作成が視覚化されました!
この記事をシェアする

はじめに

こんにちは、CloudBuildersのsugawaraです。

11/11にCloudFormationの新機能である、タイムラインビュー(Deployment Timeline View)がリリースされました。日々CDKやCloudFormationを利用している自分にはなかなかうれしいアップデートだったので、簡単に紹介していきたいと思います。

なお、上記記事の「x-ray vision」とはいわゆる「透視能力」のことであり、CloudFormationの過程が見られるようになったよというお話ですね。ちょっと紛らわしいかもですが、AWS X-rayのことではないです(こっちはサービス名だから大文字ですね)。

タイムラインビューとは

まず、タイムラインビューがどのような機能かを簡単にまとめました。

  • 機能概要: スタック操作中にCloudFormationがリソースをプロビジョニングする順序や時間を可視化できる。
  • 利点:
    • リソース間の依存関係や処理順序が把握しやすくなる。
    • テンプレートの最適化が可能になり、デプロイ時間の短縮やメンテナンス性の向上ができる。
  • 視覚化の特徴:
    • 各リソースのステータスが色分けされて表示され、かかった処理時間も確認ができる。
    • エラー発生時には該当リソースが強調表示され、原因特定がしやすい。

なお、すでにデプロイ済みのスタックもすべてタイムラインビューで確認できるようです。下記の画像は以前cdk bootstrapコマンドを実行して作成されたスタック、CDK Toolkitのテーブルビューとなります。

実際にやってみた

作成成功の場合

まずは、VPCと3つのプライベートサブネットを作成するCloudFormationテンプレートを使用してスタック作成をしてみました。作成後、「Events – updated(イベント-アップデート済み)」タブをクリックし、さらに「Timeline view – new(タイムラインビュー – 新規)」を選択すると、作成したリソースが時系列に沿って表示されます。

グラフ内の色のついた部分をクリックすると、リソースごとの作成の詳細が見れます。今回の例では、VPCの作成自体は13秒で完了しており、各サブネットはそれぞれ4秒ほどで同時並行で作成されていますね。

また、検索窓を使うと、特定のリソースのみに絞り込むこともできます。大量のリソースを作成したとしても、ピンポイントで確認できるのはいいですね。

削除失敗の場合

次に、別スタックを使用してわざと失敗するようにしてみます。対象リソースはVPCエンドポイントで、CDKで作成したものを削除します。なお、VPCエンドポイント自体はCDKで作成されたものですが、それにアタッチされているセキュリティグループ(以下、SG)は手動で作成したものです。CDKコード内では、手動作成したSGを指定して設定するようにしています。この状態でスタックの削除を行うと、削除ができずに失敗になります。

実際にスタックの削除を実行すると、再試行を繰りかえしているのがグラフや詳細からわかります。

DELETE_FAILEDのとなりにある「Likely root cause(考えられる根本原因)」をクリックすると、想定通りSGと依存関係があるという記載があります。先に手動でSGを削除すると、正常にVPCエンドポイントも削除されました。

これまで利用していたテーブルビューよりも見やすくなったので、個人的には気に入っています。みなさんもタイムラインビューを活用してみてください!

おわりに

今回はCloudFormationの新機能「タイムラインビュー」を紹介しました。視覚化されることで、これまでのテーブルビューよりもデプロイ状況が直感的でわかりやすくなりました。これからreInventにかけて様々なアップデートが来ると思うので、面白そうなものはどんどん試していきたいと思います!

この記事をシェアする
著者:sugawara
元高校英語教員。2023&2024 Japan AWS All Certifications Engineers。IaCやCI/CD、Platform Engineeringに興味あり。