1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【保存版】Azure VMのゾーン冗長パターン徹底比較:同一リージョン内で“落ちない”構成を作る

Last updated at Posted at 2025-09-08

image.png

はじめに

同一リージョン内でのゾーン冗長は、データセンター障害を前提とした設計の基本です。Azure では、可用性ゾーン(物理的に独立したデータセンター群)をまたいで VM を配置し、L4/L7 のゾーン冗長エンドポイントで束ねるのが王道となります。
可用性ゾーン対応サービスと設計の肝を押さえれば、VM の 99.99% アップタイム SLAに到達可能です。(Azure Virtual Machines の可用性オプション, Azure Availability Zones)

※本記事は、同一リージョン内の可用性ゾーン(AZ)冗長に限定し、リージョン冗長単一ゾーン/単一VMは扱いません。

Azureのリージョンや可用性ゾーンについての解説はこちら。


1.前提と用語の整理

  • ゾーン冗長(zone-redundant):サービス/リソースが複数ゾーンにまたがって冗長化
  • ゾーナル(zonal)特定ゾーンにピン留め(例:ゾーン“1”の VM)。同一リージョン内で複数ゾーンに“複数インスタンスを張ると、ゾーン障害に耐性を持てる。(可用性ゾーン)
  • 到達目標2 つ以上の VM を 2 つ以上のゾーンに展開+適切な LB/ゲートウェイ構成 ⇒ VM 99.99% SLA

2.ゾーン冗長の基本構成(L4)― Standard Load Balancer を核にする

構成要素

  • VM(zonal)×2 以上:ゾーン“1/2/3”へ分散
  • Standard Load Balancer(SLB)ゾーン冗長フロントエンドを推奨(単一 IP でゾーン障害を吸収)
  • Standard Public IPゾーン冗長を選択(※多くのリージョンで既定がゾーン冗長化)

要点

  • SLB はゾーン冗長/ゾーナル/非ゾーンいずれでも作成可。フロントエンドの Public IP のゾーン属性に連動する。ゾーン冗長フロントなら単一 IP でゾーン障害による影響を回避。(ロードバランサの信頼性)
  • Public IP(Standard)はゾーン冗長/ゾーナル/非ゾーンを選択可能。多くのリージョンで“非ゾーン=既定でゾーン冗長化”にアップデートBasic SKU は 2025-09-30 廃止予定につき Standard へ移行必須。(パブリック IP アドレス)

最小パターン(L4)

推奨リソース ゾーン設計
受入口(L4) Standard Load Balancer ゾーン冗長フロント
コンピュート VM ×2 以上 ゾーナル(1/2/3 に分散)
Public IP Standard Public IP ゾーン冗長

設計メモLB をゾーンごとに複数用意する必要はない単一の LBゾーナル/ゾーン冗長フロントを複数ぶら下げて使い分け可能。


3.スケールと運用(VMSS)― Flexible/Zone-Spanning を“既定”に

Virtual Machine Scale Sets(VMSS)は、複数ゾーンに跨ってインスタンスを自動分散でき、99.99% SLAを満たす推奨手段。zoneBalance の厳密制御も可能。(可用性ゾーンを使用する仮想マシン スケール セットを作成する)

VMSS×AZ の設計ポイント

  • Zone-spanning(推奨)"zones": ["1","2","3"] で自動分散。"zoneBalance": "true"厳密分散を強制可。
  • 障害時の挙動:影響ゾーンのインスタンス到達性が落ちても、他ゾーンは継続。スケールアウトで健全ゾーンへ一時的に寄せる運用がしやすい。
  • LB/ Public IPStandardゾーン冗長を選ぶ。

4.L7 の入り口(WAF/HTTPS)― Application Gateway v2 をゾーン冗長で

Application Gateway v2/WAF v2ゾーン冗長かつ 自動スケーリング対応。L7 制御(TLS 終端、パス/Host ルーティング、WAF)を兼ねつつ、バックエンドに VM/VMSS(zonal) を並べるのが定石。(MApplication Gateway v2 と WAF v2 のスケーリング)

最小パターン(L7)

推奨リソース ゾーン設計
受入口(L7) Application Gateway v2/WAF v2 ゾーン冗長自動スケール
バックエンド VMSS or VM×2以上 ゾーナル分散(1/2/3)
Public IP Standard Public IP ゾーン冗長

5.アウトバウンド設計(NAT)― “ゾーンスタック”で片肺停止を局所化

NAT Gatewayゾーンリソースゾーン障害時にアウトバウンドが止まる事態を避けるには、各ゾーンに NAT ゲートウェイ+同ゾーンの Public IPセットで持つゾーンスタックが推奨。インバウンド(LB)と合わせる 2 つのパターンも公式で整理されている。(NAT ゲートウェイと可用性ゾーン)

パターン 受入口 特徴
(1) アライン ゾーナル SLB をゾーンごとに イン/アウト同一障害モデルでシンプルだが、ゾーンごとに IP が分かれる。
(2) オーバーレイ ゾーン冗長 SLB(単一 IP) インバウンドは単一 IP、アウトバウンドは各ゾーンの NAT で局所化。運用はやや複雑。

6.ディスク/データ冗長 ― Managed Disk の ZRS を正しく使う

Managed Disk の ZRS は、同一リージョン 3 ゾーン同期複製し、ゾーン障害からの迅速復旧を可能にする。
ただし 対応ディスク種別は限定Premium SSD / Standard SSD のみPremium SSD v2 / Ultra Disk は非対応)。レイテンシは LRS より増える点も要考慮。(マネージドディスクの冗長オプション)

例)ゾーン障害で VM が停止したら、RS ディスクを健全ゾーン側の VM に強制デタッチ→再アタッチで先行復旧する運用も可能(データディスク対象)。


7.アンチパターンと落とし穴

  • Basic SKU の混在Public IP/Load Balancer は Standard で統一。Basic は廃止予定・ゾーン未対応・混在不可。
  • PPG の誤用Proximity Placement Group は“同一ゾーン内の近接配置”制約ゾーンをまたげないため、“超低遅延×ゾーン冗長”を同時達成は不可(低遅延が最重要なら単一ゾーン+PPG、冗長はアプリ層で)。(Azure ポータルを使用して近接通信配置グループを作成する)
  • フロント IP のゾーン属性を放置LB のゾーン冗長性はフロントの Public IP に従属作成後は変更不可なので最初にゾーン冗長を選ぶ
  • ゾーン非対応サイズ/在庫:選定 VM サイズ/ディスクが全ゾーンで提供されるか事前確認(スケール時の割当失敗を回避)。

8.おすすめ構成カタログ(同一リージョンの AZ 冗長)

ユースケース 入口 コンピュート データ/ディスク 補足
最小構成(L4) SLB:ゾーン冗長 VM×2以上(zonal) 任意(可能なら ZRS 単一 IP でゾーン障害に耐性。
スケール重視 SLB:ゾーン冗長 VMSS(zones=1/2/3, zoneBalance) 任意(ZRS 推奨) 99.99% SLA へ最短。
L7 制御/WAF AppGW v2(ゾーン冗長+自動スケール) VMSS or VM×2以上 任意(ZRS 推奨) TLS 終端/ルーティング/WAF。
強いアウトバウンド SLB:ゾーン冗長 VMSS or VM×2以上 任意 各ゾーンに NAT GW+同ゾーンの Public IP の“ゾーンスタック”。

9.運用ベストプラクティス(同一リージョン AZ 冗長の“型”)

  1. 入口は“まずゾーン冗長”(SLB/AppGW)。Public IP は Standard+ゾーン冗長を前提に。
  2. VM は“zonal を 2 ゾーン以上”。規模/運用を考え VMSS(Flexible/Zone-spanning)を既定に。
  3. アウトバウンドは“ゾーンスタック”で片肺停止を局所化(NAT GW×ゾーン)。
  4. データは“ZRS を選べる所は選ぶ”(Premium SSD/Standard SSD)。非対応ディスクはアプリ/DB レプリケーションで補完
  5. ゲームデイゾーン障害を想定した訓練(IP フェール、再配置、スケール挙動)を定期テスト

10.(応用)ステートフルな VM のクラスタリング

※本記事はリージョン冗長を扱わないが、Site Recovery のゾーン間 DRも選択肢として存在。RPO/RTO 要件に応じて評価を。(可用性ゾーン間の Azure VM 災害復旧を有効にする)


11.実装チェックリスト

  • Standard Public IPゾーン冗長で作成(Basic は不可/廃止)。
  • SLB/AppGWゾーン冗長で。作成後ゾーン属性は変更不可
  • VM/VMSSzonal2 ゾーン以上へ分散。zoneBalance の要否を決める。
  • NAT Gatewayゾーンスタックで配置(各ゾーンに NAT+同ゾーンの Public IP)。
  • Managed Disk は可能なら ZRSPremium v2/Ultra は非対応に注意)。
  • [ ]

12.コスト/信頼性/運用のトレードオフ

選択 コスト 信頼性 運用
SLB ゾーン冗長 低~中 高(単一 IP) シンプル
AppGW v2 ゾーン冗長 高(L7/WAF) 機能豊富
VMSS Zone-spanning 低~中 最高(99.99% SLA 到達) 自動化/スケール容易
NAT “ゾーンスタック” 高(局所化) 設計一工夫
Disk ZRS 高(同期 3 ゾーン) 多少のレイテンシ増

13.結論(要点の“ひとことで”)

入口はゾーン冗長、計算はゾーナル分散(VMSS 推奨)、出口はゾーンスタック、データは ZRS を選べる所は選ぶ。
これが、同一リージョン内 AZ 冗長の最短解です。


14.なぜ?(5 Whys で深掘り)

  1. なぜ ゾーン冗長にするのか?
     答え単一データセンター障害でダウンしないため。可用性ゾーンは物理的に独立しており、ゾーン跨ぎ冗長で 99.99% へ到達できる。
  2. なぜ “SLB/AppGW をゾーン冗長”にするのか?
     答え入口の単一 IPゾーン障害で落とさないため(LB の冗長性はフロント IP のゾーン属性に依存)。
  3. なぜ “VM は VMSS の Zone-spanning”が良いのか?
     答え均等分散自動スケールで障害時の健全ゾーン寄せが容易。zoneBalance で厳密分散も担保。
  4. なぜ “NAT をゾーンスタック”にするのか?
     答え:アウトバウンド停止を障害ゾーンに局所化できるから。単一 NAT だとそのゾーン障害=全体の送信断になり得る。
  5. なぜ “ZRS ディスク”を選ぶのか?
     答え同期 3 ゾーン複製ゼロ RPOを満たしやすく、強制デタッチ→他ゾーン再アタッチで迅速復旧ができる(用途はデータディスク)。

15.仮説 → 根拠/データ → 再検証 → 示唆・次アクション

  • 仮説SLB/AppGW をゾーン冗長VMSS を Zone-spanningNAT はゾーンスタックディスクは ZRSの組み合わせが、コストと信頼性の最適点

  • 根拠/データ:LB のゾーン冗長フロント、Public IP の既定ゾーン冗長化、VMSS の Zone-spanning/zoneBalance、NAT“ゾーンスタック”、ZRS の特性/制限は公式ドキュメントで確認。

  • 再検証:対象リージョン/ゾーンでのSKU/サイズ在庫ディスク種別の ZRS 対応待機時間とスループットの実測(ゲームデイ)を実施。

  • 示唆・次アクション

    1. 設計レビュー:Public IP/LB/AppGW のゾーン属性を棚卸し。
    2. IaC(Bicep/Terraform)テンプレートへzones/zoneBalanceZRS/LRSの切替パラメータを実装。
    3. ゾーン停止シナリオ定期演習を運用 SOP に組み込む。

おわりに

同一リージョン内の AZ 冗長は、入口(フロント)・計算(VM/VMSS)・出口(NAT)・データ(Disk/DB)の4 点セットで設計を固めると、高信頼×運用容易性を両立できます。
まずは 最小構成(SLB ゾーン冗長+VMSS Zone-spanning)から着手し、NAT ゾーンスタックやZRSを要件に合わせて拡張してください。


主要出典(抜粋)

  • Load Balancer とゾーン冗長:Reliability in Load Balancer(Microsoft Learn)。(Microsoft Learn)
  • Public IP(Standard)とゾーン冗長/Basic 廃止:Public IP Addresses(Microsoft Learn)。(Microsoft Learn)
  • VMSS と Zone-spanning/zoneBalance:Create a VMSS that uses Availability Zones(Microsoft Learn)。(Microsoft Learn)
  • NAT Gateway と“ゾーンスタック”:NAT ゲートウェイと可用性ゾーン(Microsoft Learn)。(Microsoft Learn)
  • Managed Disk ZRS(対応/非対応):Redundancy options for managed disks(Microsoft Learn)。(Microsoft Learn)
  • 可用性ゾーンと 99.99% VM SLA(概念):Azure Availability Zones(azure.microsoft.com)。(Microsoft Azure)

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?