デプロイ応用

ARMテンプレートで、Application Insightsをデプロイするリソース定義において、dependsOnセクションで関連するApplication Gateway、Virtual Networkの依存関係を明記しました。しかし、Azure はApplication InsightsをApplication Gatewayより先にデプロイしても機能的には問題がありません。それでも dependsOnで依存関係を明記すべき理由はどれか?

A.明記しないとAzureがリソース作成を拒否し、デプロイが失敗するため
✗ 機能的な依存関係がなければ、dependsOnなしでもデプロイは成功します。失敗は起こりません。
B.デプロイの順序を保証し、リソース間の接続・統合が正しい順序で行われることを確保し、予測可能で安定したデプロイを実現するため← 正解
✓ 正解です。dependsOnはデプロイの順序を明示的に制御し、リソース間の接続・設定・統合が正しい順で行われることを保証し、予期しない問題を防ぎます。
C.明記しないとApplication Insightsのコストが高くなるため
✗ dependsOnの有無はコストに影響しません。リソースのSKUやサイズがコスト決定要因です。
D.テンプレートのファイルサイズを削減し、デプロイ速度を向上させるため
✗ dependsOn記述でファイルサイズは増加し、デプロイ速度への効果はありません。

この問題のポイント

dependsOnはデプロイの順序を明示的に制御し、リソース間の接続・設定・統合が正しい順で行われることを保証し、予期しない問題を防ぎます。

AZ-900:Microsoft Azure Fundamentals の問題一覧