Azure 環境の多くは同じように始まります。誰かがパイロット用にサブスクリプションを作り、次に本番用を作り、やがてチームごとに 1 つずつ持つようになります。2 年後には、テナントルートグループの下に 40 個のサブスクリプションが並び、3 つが独自の VPN ゲートウェイを動かし、データベース VM にパブリック IP が付き、どのポリシーがどこに適用されるのか誰も把握していません。
Azure ランディングゾーンは、これを避けるための Microsoft の設計図です。この記事では、管理グループ、プラットフォームとワークロードのランディングゾーンの違い、ポリシーによるガードレール、ハブアンドスポークと Virtual WAN の比較、ID、デプロイの各要素を図とともに説明します。
Azure ランディングゾーンとは
Cloud Adoption Framework (CAF) は、Azure ランディングゾーンを「複数サブスクリプションの Azure 環境を統制、保護、拡張するための、実績があり柔軟なアーキテクチャ」と定義しています (Microsoft Learn)。構成は 2 つの部分です。
- プラットフォームランディングゾーン: 管理グループ階層と、ハブネットワーク、ログ、セキュリティツールなどの共有リソースです。Microsoft は Microsoft Entra テナントごとに 1 つ、プラットフォームチームが運用することを推奨しています。
- ワークロードランディングゾーン: ワークロードごとに 1 つで、そのチームが所有し、すべての環境 (開発、テスト、本番) を 1 つ以上のサブスクリプションとして持ちます。古い資料ではアプリケーションランディングゾーンと呼ばれています。
サブスクリプションが構成単位です。CAF はこれを管理、課金、スケールの単位と呼んでいます。AWS で言えば、サブスクリプションはおおむねアカウント、管理グループは組織単位に相当します。その側面は AWS ランディングゾーン図で確認できます。
管理グループ階層
管理グループに対するポリシーやロールの割り当ては配下のすべてに適用され、サブスクリプションの所有者は変更できません。管理グループのドキュメントによると、Azure ではテナントあたり 10,000 個の管理グループ、ルートから 6 階層まで、親は 1 つずつです。
リファレンス階層です。既定の ALZ ポリシー割り当ての補足も付けています。
| 管理グループ | 親 | 含まれるもの |
|---|---|---|
| テナントルートグループ | なし | テナント内のすべて。ALZ はここにポリシーを割り当てない |
| 中間ルート (例: Contoso) | テナントルート | ランディングゾーン全体。ログなど組織全体のポリシー |
| Platform | 中間ルート | Management (Log Analytics)、Connectivity (ハブネットワーク)、Identity (ドメインコントローラー)、Security (Microsoft Sentinel) で、それぞれ 1 サブスクリプション |
| Landing zones | 中間ルート | Corp (ハブに接続)、Online (インターネット向け)、Local (Azure Local) |
| Sandbox | 中間ルート | 実験用。他のサブスクリプションへの VNet ピアリングは拒否される |
| Decommissioned | 中間ルート | 閉鎖予定のサブスクリプション。新規リソースは拒否され、VM は停止される |
CAF の管理グループガイダンスにある次の 3 つのルールで、再設計の大半を避けられます。
- 階層は浅く保つ。 3 階層か 4 階層で十分です。リージョンや、開発、テスト、本番のために管理グループを増やさないでください。
- テナントルートではなく中間ルートに割り当てる。 新しいサブスクリプションは既定でテナントルートの下に入り、権限を要求するまでは誰でも管理グループを作成できます。両方を変更し、Sandbox を既定にしてください。
- ワークロードチームにはサブスクリプションスコープでロールを与える。 プラットフォームチームは管理グループのロールを持てますが、ジャストインタイムアクセスで制御します。
名前は変わりつつあります。Security は 2025 年に Platform に加わり、最新の CAF 概要では Landing zones を「Workload landing zones」、Corp を「Internal」と呼んでいます。
プラットフォームとワークロードのランディングゾーン
| プラットフォームランディングゾーン | ワークロードランディングゾーン | |
|---|---|---|
| 所有者 | プラットフォームチーム | ワークロードチーム |
| 内容 | 管理グループ、ポリシー、ハブ、ログ、ID サービス | 1 つのワークロードの全環境のリソース |
| 数 | Entra テナントごとに 1 つ | ワークロードごとに 1 つ |
| 作成方法 | IaC アクセラレータ | サブスクリプションベンディング (依頼に応じて) |
| アクセス | PIM 経由の管理グループロール | 自分のサブスクリプションのロール |
サブスクリプションベンディングでは、多くの場合プルリクエストである依頼によって、Corp または Online の下にサブスクリプションが作られ、ロールと予算が割り当てられ、Corp の場合はハブとピアリングしたスポークが追加されます。Microsoft は Bicep と Terraform 向けのベンディングモジュールを公開しています。
ポリシー駆動のガードレール
Azure Policy は階層を強制力に変えます。ルールを管理グループに 1 度割り当てれば、その配下にある現在と将来のすべてのサブスクリプションが継承します。
| ガードレール | 効果 | 割り当て先 |
|---|---|---|
| パブリックネットワークアクセスを持つ PaaS サービスを禁止 | Deny | Corp |
| パブリック IP を持つネットワークインターフェイスを禁止 | Deny | Corp |
| プライベートエンドポイントの DNS レコード | DeployIfNotExists | Corp |
| すべてのサブネットにネットワークセキュリティグループを設定 | Deny | Landing zones、Identity |
| アクティビティログとリソースログを Log Analytics へ | DeployIfNotExists | 中間ルート |
| 許可される場所 | Deny | 既定では未割り当て |
リージョンのルールには注意が必要です。組み込みの Allowed locations ポリシーはリソースグループと global ロケーションをスキップするため、Allowed locations for resource groups と組み合わせ、まず DoNotEnforce モードで始めて何がブロックされるかを確認してください。
az policy assignment create \
--name allowed-locations \
--scope /providers/Microsoft.Management/managementGroups/contoso \
--policy e56962a6-4747-49cd-b67b-bf8b01975c4c \
--params '{"listOfAllowedLocations": {"value": ["westeurope", "northeurope"]}}' \
--enforcement-mode DoNotEnforce
タイミングも重要です。新しい割り当ては約 5 分で適用され、管理グループに移したサブスクリプションは約 30 分で評価され、フルスキャンは 24 時間ごとに実行されます。DeployIfNotExists と Modify のポリシーは新規および更新されたリソースに作用し、既存のリソースには修復タスクが必要です。
ネットワーク: ハブアンドスポークか Virtual WAN か
接続サブスクリプションが共有ネットワークを持ちます。Azure Firewall、VPN と ExpressRoute のゲートウェイ、Bastion、プライベート DNS ゾーン、DNS Private Resolver です。CAF のネットワークトポロジのガイダンスには 2 つの設計があります。
| ハブ仮想ネットワーク | Virtual WAN | |
|---|---|---|
| ルーティング | ピアリング、ルートテーブル、ゲートウェイトランジットを自分で管理 | 各ハブに Microsoft が管理するルーター |
| 向いている場合 | 少数のリージョン、IPsec トンネル 30 本未満、完全な制御 | 多数のリージョン、SD-WAN または 30 超の拠点、VPN から ExpressRoute へのトランジット |
| スポーク間 | ルートテーブルを使い、ファイアウォール経由 | Standard ハブではハブルーター経由、またはルーティングインテントを使ったファイアウォール経由 |
| スケール | 仮想ネットワークあたり 650 ピアリング | ハブあたり 500 の VNet 接続からハブ数を引いた数。50 Gbps のルーター |
| アドレス空間 | AzureFirewallSubnet には /26 が必要 | ハブには /24 が必要、Azure Firewall を使う場合は /22。作成時に固定 |
ピアリングは推移的ではないため、ハブ仮想ネットワークでは、各スポークに 0.0.0.0/0 をファイアウォールのプライベート IP に送るルートテーブルを付け、ハブ側のピアリングでゲートウェイトランジットを許可し、スポーク側のピアリングでリモートゲートウェイを使います。ルーティングについてはハブアンドスポークのネットワークトポロジの記事で説明しています。Azure Firewall は Basic が最大 250 Mbps、Standard が 30 Gbps、Premium が 100 Gbps を処理します。Virtual WAN では Standard タイプを選んでください。Basic はサイト間 VPN のみに対応します。
DNS はチームが最もつまずきやすい部分です。privatelink.blob.core.windows.net のようなプライベート DNS ゾーンは接続サブスクリプションに置いてハブにリンクし、そこで DNS Private Resolver が Azure DNS の 168.63.129.16 に転送します。オンプレミスの DNS サーバーは blob.core.windows.net のようなゾーンをそのリゾルバーに転送します。Corp の DeployIfNotExists ポリシーが各プライベートエンドポイントのレコードを中央のゾーンに書き込むため、ワークロードチームにそのゾーンの権限は不要です。
ID
Microsoft Entra テナントが ID の境界です。CAF の実践的なルールは次のとおりです。
- ワークロードチームには、ベンディング時に自分のサブスクリプションのロールを与え、管理グループのロールは与えません。
- プラットフォームエンジニアは、承認と時間制限付きの Privileged Identity Management (PIM) で Owner などのロールを有効化します。
- Azure を管理するすべての人に条件付きアクセスを適用し、監視された緊急アクセスアカウントを用意します。
- ワークロードがまだ必要とする場合は、ID サブスクリプションをドメインコントローラーや Microsoft Entra Domain Services に使います。
デプロイ方法
執筆時点 (2026 年 11 月) で、Microsoft は Azure Landing Zones IaC Accelerator を推奨しています。Azure Verified Modules (AVM) を基にした Bicep または Terraform です。その PowerShell モジュールが、GitHub または Azure DevOps のリポジトリ、承認付きのパイプライン、フェデレーション資格情報を持つマネージド ID を初期設定します。Terraform は、階層とポリシー (avm-ptn-alz)、管理リソース、各ネットワーク設計に別々のモジュールを使います。Bicep はデプロイスタックを使い、テンプレートから削除したリソースを削除することがあります。
古い選択肢は廃止されつつあります。Terraform モジュール caf-enterprise-scale は非推奨で、従来の ALZ-Bicep は 2026 年 2 月 16 日にアクセラレータから外れ、そのリポジトリは 2027 年 2 月 16 日にアーカイブされる予定です。ポータル版のアクセラレータは残っていますが、コードがないため更新しにくくなります。
予算も見込んでください。アクセラレータのシナリオページでは、Azure Firewall を使う単一リージョンのハブアンドスポークで固定インフラが月額約 $5,640、小規模企業向けのバリエーションで $690 と見積もっています。後者は DDoS Network Protection プランなどを無効にします (2026 年 4 月の westus の小売価格、トラフィックとログは除く)。プラットフォームのサブスクリプションも 4 つ必要で、小規模企業向けの構成では 2 つです。
Azure ランディングゾーン図
ダイアグラムの内容
- Tenant root group
- Contoso
- Platform
- Landing zones
- Corp
- Online
- Sandbox
- Decommissioned
- Azure Policy guardrails
- Hub VNet
- VPN / ExpressRoute gateway
- Azure Firewall · 10.0.0.4
- Spoke VNet · app-a
- Spoke VNet · app-b
- assigned here, inherited by every child
- Connectivity MG › connectivity subscription
- vended into Corp
- VNet peering
- ExpressRoute or VPN
図の読み方は次のとおりです。
- 左側のツリーが階層です。矢印は親から子へ向かい、継承の方向を示します。
- ポリシーノードはテナントルートグループではなく Contoso 中間ルートに付いているため、ランディングゾーン全体に届き、それ以外には届きません。
- 色は所有者を示します。青はプラットフォーム、緑はワークロード、琥珀色は Sandbox、灰色はルートと廃止済みのサブスクリプションです。
- 破線は配置を示します。ハブは接続サブスクリプションにあり、2 つのスポークはどちらも Corp にベンディングされます。
- 実線はトラフィックを運びます。ハブへのピアリングとオンプレミスへのゲートウェイ接続があり、各スポークは 0.0.0.0/0 を 10.0.0.4 のファイアウォールにルーティングします。
- Markdown ブロックに主な制限を載せています。
Azure ランディングゾーン図をわかりやすく描く
- ガバナンスとネットワークは 2 つのビューとして描き、サブスクリプションが置かれる場所でだけつなぎます。
- 各ポリシーは割り当てた場所に付け、どのワークロードを制約するかが読み手に伝わるようにします。
- グループごとに 1、2 個の例のサブスクリプションを示し、一覧にはしません。
- ハブとすべてのスポークにアドレス範囲を書きます。重複はレビュアーが最初に確認する点です。
- よくある間違いを避けます。推移的に描かれたピアリング、テナントルート直下のワークロード、管理グループとしてのリージョンや環境です。
型付きのクラウドノードについてはクラウドアーキテクチャ図を、Terraform で管理する環境については Terraform アーキテクチャ図の記事をご覧ください。
Archboard で作る
- Google または GitHub でサインインし、ダイアグラムを作成します。
- クラウドパックから クラウドリソースノードを 8 個追加します。Tenant root group、Contoso、Platform、Landing zones、Corp、Online、Sandbox、Decommissioned です。各ロールはリソースタイプの行に入れ、インデント付きのツリーとして配置します。
- 直交エッジで親と子をつなぎ、ブランチに色を付けます。Platform は青、Landing zones は緑、Sandbox は琥珀色です。
- セキュリティパックから Azure Policy guardrails という名前のポリシーノードを追加し、Contoso につなぎます。
- ネットワークパックから、ハブ用の VPC ノードを追加し、ゲートウェイ用のルーターとその中のファイアウォールを置きます。スポーク用には VPC ノードを 2 つ追加し、それぞれに基本パックのテキスト行でルートを書きます。
- Platform からハブへ、Corp からスポークへ破線のエッジを引き、ハブへのピアリングのエッジと、ゲートウェイからオンプレミスのテキストラベルへのエッジを引きます。
- 基本パックから、制限を書いた Markdown ブロックを追加します。
ランディングゾーンを Terraform で管理している場合は、Terraform to diagram ツールがファイルから最初の下書きを作ります。
この例で使うダイアグラムノードは 15 個で、Free プランの範囲に収まります。
よくある質問
Azure ランディングゾーンとは何ですか? ワークロードが届く前に、Cloud Adoption Framework の推奨に従って構築する複数サブスクリプションの Azure 環境です。管理グループ、ポリシーによるガードレール、ID、ログ、共有ネットワークを含みます。
Azure ランディングゾーンはどの管理グループを使いますか? テナントルートグループの下に中間ルートがあり、その下に Platform (Management、Connectivity、Identity、Security)、Landing zones (Corp、Online、Local)、Sandbox、Decommissioned が並びます。
Corp と Online のランディングゾーンの違いは何ですか? Corp はハブ経由で社内ネットワークに到達するワークロードを置くため、既定ではパブリックな PaaS エンドポイントと、ネットワークインターフェイスのパブリック IP を拒否します。Online は、インターネットへの直接アクセスが必要なワークロードや、仮想ネットワークを使わないワークロードを置きます。
ハブアンドスポークと Virtual WAN のどちらを使うべきですか? ハブ仮想ネットワークは、少数のリージョン、30 本未満のサイト間トンネル、完全なルーティング制御に向いています。Virtual WAN は、多数のリージョンと拠点、SD-WAN、VPN から ExpressRoute へのトランジットに向いています。
Terraform モジュールの caf-enterprise-scale はまだサポートされていますか? いいえ。非推奨で、更新は行われません。プラットフォームランディングゾーンには、通常は IaC アクセラレータ経由で Azure Verified Modules を使ってください。Microsoft は移行パスを文書化しています。