Spot VM は Azure の余剰キャパシティを最大 90% 割引で利用できる特殊な VM です。 30 秒前通知の Eviction (停止) リスクがあるためステートフルワークロードには不向きですが、適切な設計でバッチ処理・AKS Spot Node Pool・Dev/Test 環境のコストを劇的に削減できます。 本記事では、Eviction Policy・Max Price・Placement Score・AKS 統合・コスト効果を網羅的に整理します。
| Policy | 動作 | 用途 |
|---|---|---|
| Deallocate | 停止のみ・Disk と Network 設定は保持・後で再起動可能 | Web Tier スケールアウト・再起動継続 |
| Delete | VM 自体が削除・完全停止コストゼロ・再起動不可 | バッチ処理・AKS Spot Node Pool |
判断: バッチ処理で『中断したら別 VM で最初からやり直し』なら Delete、Web Tier スケールアウトで『再起動して継続したい』なら Deallocate。 AKS Spot Node Pool では Delete が標準。
| 設定 | 動作 | 推奨度 |
|---|---|---|
| -1 (Capacity Only) | Spot Price 無視・Capacity 不足時のみ Eviction | ★ Microsoft 推奨 |
| Pay-as-you-go Price | 通常 VM と同じ価格を上限 | 価格高騰時のみ Eviction |
| 具体的な価格 (例: 0.05 USD/h) | 低価格設定で Eviction 頻発 | 非推奨 |
-1 (Capacity Only) が標準。コスト爆発リスクなし (Spot Price は Pay-as-you-go を超えない) + Eviction 頻度最小。 Max Price を低く設定すると Eviction 頻発で実用性低下するため避けるべき。
2023 GA、Spot VM を作成する前に Region / VM Size 別の Spot 可用性を確認できる API / Portal 機能。
Spot VM を AKS Node として活用する標準パターン。
kubernetes.azure.com/scalesetpriority=spot:NoSchedule を Default で付与バッチ Workload・CI/CD Pipeline・開発 Pod に最適、本番 Web は通常 Node Pool + 余剰負荷を Spot で吸収するハイブリッド構成が標準。
VMSS Flexible mode の Spot Priority Mix で、1 つの VMSS 内に Spot VM と通常 (Regular) VM を混在可能。
Spot VM が Eviction された際に自動的に通常 VM で補充される動作。
東日本リージョン、Standard_D4s_v5 (4 vCPU・16 GB RAM・Pay-as-you-go 月額 約 4 万円) 想定:
| 時間帯 | Spot 月額 | 割引率 | Eviction リスク |
|---|---|---|---|
| 余剰多い時間帯 | 約 0.4 万円 | 90% | 低 |
| 通常時間帯 | 約 1 万円 | 75% | 中 |
| 需要高い時間帯 | 約 2 万円 | 50% | 高 |
コスト削減効果が劇的だが、Eviction による処理中断・再実行コストも考慮必須。 『Total Cost (Spot コスト + Eviction による再実行コスト)』で評価。
Eviction 通知 (30 秒前) を受けて適切に処理を完了させる Graceful Shutdown 実装。
# Eviction 通知 Polling (Linux)
while true; do
EVICTION_NOTICE=$(curl -s -H Metadata:true \
"http://169.254.169.254/metadata/scheduledevents?api-version=2020-07-01")
if echo "$EVICTION_NOTICE" | grep -q "Preempt"; then
echo "Eviction detected, gracefully shutting down..."
# ジョブ完了処理・State 保存・Pod Drain など
break
fi
sleep 5
doneAKS では kubelet が自動的に Eviction を検知して Pod を Graceful Shutdown するため、アプリは標準的な SIGTERM ハンドリングのみで OK。
Spot VM とは?
Spot VM は Azure の余剰キャパシティを最大 90% 割引で利用できる特殊な VM。Microsoft が他顧客のために必要になったタイミングで 30 秒前の通知で停止 (Eviction) される可能性があり、ステートフルワークロード・本番ミッションクリティカルには不向き。代表的なユースケース: 1) バッチ処理 (Genomics 解析・動画レンダリング・ML トレーニング)、2) Dev / Test 環境、3) Stateless Web Tier の一時スケールアウト、4) AKS Spot Node Pool でコスト最適化、5) Azure Batch のワーカーノード、6) HPC ジョブ。Eviction Policy (Deallocate / Delete) と Max Price でリスクとコスト管理。コスト削減効果が劇的 (Pay-as-you-go の 1/10 価格も実現可能) で、適切な設計で本番でも活用可能です。
Eviction Policy の選択は?
2 つの Eviction Policy: Deallocate (停止のみ・Disk と Network 設定は保持・後で再起動可能・標準推奨): Eviction 時に VM が Deallocated 状態に、Public IP / Disk / NIC 設定はそのまま、後でキャパシティが空いたら再起動可能。停止中の Compute コストはゼロだが Disk と Public IP は課金継続。Delete (完全削除・コスト最小・再起動不可): Eviction 時に VM 自体が削除される、Disk / NIC / Public IP は別途設定により残るか削除される、完全に停止コストゼロにしたい場合。判断: バッチ処理で『中断したら別 VM で最初からやり直し』なら Delete、Web Tier スケールアウトで『再起動して継続したい』なら Deallocate。AKS Spot Node Pool では Delete が標準 (Pod の状態は Kubernetes が管理するため VM 自体は不要)。本番運用ではユースケースに応じた選定が重要です。
Max Price 設定の戦略は?
Spot VM の Max Price (最大価格) はユーザーが許容する最高価格を指定する仕組み。動作: 1) Spot Price (現在の Spot 市場価格、Azure の余剰キャパシティに応じて変動) が Max Price を超えたら Eviction、2) Max Price 未満なら継続稼働。設定オプション: 1) -1 (Capacity Only、Spot Price は気にせず Capacity 不足時のみ Eviction、最も安定)、2) Pay-as-you-go Price (例: 0.10 USD/h、通常 VM と同じ価格を上限に設定、価格高騰時のみ Eviction)、3) 具体的な価格 (0.05 USD/h など、価格に応じた Eviction)。Microsoft 推奨は -1 (Capacity Only)、コスト爆発リスクなし (Spot Price は Pay-as-you-go を超えない) + Eviction 頻度最小。本番運用では -1 が標準、Max Price を低く設定すると Eviction 頻発で実用性低下するため避けるべきです。
Spot Placement Score とは?
Spot Placement Score (2023 GA) は、Spot VM を作成する前に Region / VM Size 別の Spot 可用性を確認できる API / Portal 機能。Score は 1-10 のスケール、10 が最も Spot 可用性高 (Eviction されにくい)、1 は低 (Eviction されやすい / VM 作成失敗の可能性)。代表的な活用パターン: 1) バッチジョブ実行前に Score 確認 → 高 Score Region を選定、2) AKS Spot Node Pool の Region 選定、3) コスト最適化レポートで Score 推移トラッキング、4) Score 低下時に別 VM Size / Region への自動切り替え (Logic App / Functions で自動化)。Multi-region 戦略の実装で『東日本 Score 3 → 西日本 Score 8 なら西日本にデプロイ』のような動的判断が可能。Microsoft が機械学習で予測する Score を提供、本番 Spot 運用での重要な意思決定支援機能です。
Spot VM の制約は?
重要な制約: 1) VM サイズ制限 (一部 SKU のみ Spot 対応、B シリーズ・H シリーズ Burstable など非対応)、2) Region 制限 (一部 Region で Spot 提供なし)、3) Reserved Instance / Savings Plan 適用不可 (既に大幅割引)、4) VM Snapshot 不可 (Eviction Policy が Delete の場合)、5) Spot 単独で SLA なし (Microsoft の余剰提供のため可用性保証なし)、6) Eviction 通知は 30 秒前 (短時間で Graceful Shutdown 必要)、7) Quota 別 (通常 vCPU Quota と Spot vCPU Quota は別管理、申請必要)、8) Confidential VM の Spot は限定対応、9) Azure Backup の Spot VM Backup は推奨されない、10) Auto-shutdown 機能との同時利用不可。本番運用では制約を踏まえてアーキテクチャ設計、Stateless + Idempotent ワークロードに特化することが成功の鍵です。
AKS Spot Node Pool の構成は?
AKS Spot Node Pool は Spot VM を Node として活用する標準パターン。構成手順: 1) AKS Node Pool 追加 → Mode: User → Priority: Spot を指定、2) Eviction Policy: Delete を選択 (AKS 推奨)、3) Max Price: -1 (Capacity Only) を設定、4) Min/Max Node 数を設定 (Cluster Autoscaler 連携)、5) Taint: kubernetes.azure.com/scalesetpriority=spot:NoSchedule を Default で付与、6) Pod の Tolerations で同じ Key を許可した Pod のみ Spot Node にスケジュール。AKS が Eviction を自動検出 → 別 Spot Node に Pod 再配置、または通常 Node Pool に Failover。バッチ Workload・CI/CD Pipeline・開発 Pod に最適、本番 Web は通常 Node Pool + 余剰負荷を Spot で吸収するハイブリッド構成が標準です。
コスト効果はどれくらいですか?
Spot VM の割引率は VM サイズ・Region・需要によって変動。代表例 (東日本リージョン、Standard_D4s_v5・4 vCPU・16 GB RAM・Pay-as-you-go 月額 約 4 万円 想定): 1) 余剰多い時間帯: 約 0.4 万円 (90% 割引)、2) 通常時間帯: 約 1 万円 (75% 割引)、3) 需要高い時間帯: 約 2 万円 (50% 割引)、Eviction 頻発の可能性も。GPU 系 (NCsv3 シリーズ・NDv4) では割引率さらに大きく、ML トレーニングで Pay-as-you-go 月 200 万円 → Spot で月 40 万円 (80% 削減) も実現可能。コスト削減効果が劇的だが、Eviction による処理中断・再実行コストも考慮必須。本番運用では『Total Cost (Spot コスト + Eviction による再実行コスト)』で評価、適切に設計すれば Pay-as-you-go の 1/5-1/10 コストが実現可能です。
関連認定試験は?
AZ-104 (Administrator) のドメイン 3 (Compute 20-25%) で Spot VM の基礎概念、AZ-305 (Solutions Architect Expert) でアーキテクト視点でのコスト最適化設計、AZ-204 (Developer Associate) で開発者視点での Spot 活用 (バッチ処理)、AZ-400 (DevOps Engineer Expert) で CI/CD パイプラインでの Spot 活用、AKS の Node Pool 設定で深く問われる。Microsoft 外: CKA (Kubernetes Administrator) で Spot Node Pool の Pod スケジューリング。Azure コスト最適化の重要技術で、FinOps エンジニア・SRE にとって必須スキルです。
関連記事・技術深掘り
AKS Node Pool 戦略|System/User/Spot/GPU/Windows の使い分けとコスト最適化【2026 年版】
Azure Kubernetes Service (AKS) の Node Pool 設計戦略を完全解説。System / User / Spot / GPU / Windows Node Pool の使い分け、Cluster Autoscaler vs Node Auto Provisioning (NAP/Karpenter)、Pod の Affinity / Tolerations、コスト最適化、関連認定試験 (AZ-104 / AZ-400 / CKA) を日本語で網羅。
Azure Kubernetes Service (AKS) 入門ガイド|アーキテクチャ・Networking・Ingress・セキュリティ完全解説【2026 年版】
Azure Kubernetes Service (AKS) の入門ガイド。Control Plane と Node Pool の構造、Azure CNI Overlay vs Kubenet の選定、Application Gateway / NGINX Ingress 選定、Workload Identity (新方式)、Private Cluster・Microsoft Defender for Containers・Azure Policy のセキュリティ、関連認定試験 (AZ-104 / AZ-204 / AZ-400 / CKA) を日本語で網羅。
Azure DevOps エンジニア キャリアロードマップ|AZ-104 → AZ-400 → SC-100 シニア DevOps への道【2026 年版】
Azure DevOps Engineer になるための認定取得ロードマップ完全版。AZ-900 → AZ-104 → AZ-400 の王道ルート、GitHub と Azure DevOps の両方を扱う AZ-400 の構成、Kubernetes 認定 (CKA / CKAD / CKS) との二刀流、IaC (Bicep / Terraform) 戦略、年収レンジまで日本語で網羅。
Azure VMSS 完全ガイド|Uniform/Flexible・Auto Scale・Rolling Upgrade・Spot 混在【2026 年版】
Azure Virtual Machine Scale Sets (VMSS) の完全ガイド。Uniform vs Flexible Orchestration mode の使い分け、Auto Scale (Metric/Schedule/Custom)、Custom Image と Azure Compute Gallery、Rolling Upgrade Policy、Spot + Regular 混在パターン、関連認定試験 (AZ-104 / AZ-305 / AZ-400) を日本語で網羅。
本記事の技術情報は Azure Spot Virtual Machines Documentation に基づいています。 本記事は Microsoft Corporation の公式商品ではなく、いかなる提携・後援関係もありません。 Microsoft、Azure は Microsoft group of companies の商標です。 情報は 2026 年 5 月 24 日時点の公式公開資料に基づきます。最新情報は必ず公式ページをご確認ください。
NicheeLab編集部
データエンジニアリング・クラウド資格の専門家。Databricks・Snowflake等の認定資格を保有し、実務経験に基づいた問題作成・解説を行っています。NicheeLab運営。
AZ-900 完全ガイド|Microsoft Azure Fundamentals 出題範囲・学習リソース・合格戦略
Microsoft Azure Fundamentals (AZ-900) の 2026 年 1 月 14 日改訂版に対...
Azure 認定資格ロードマップ 2026 完全版|全 26 試験の体系と大型再編 (AI-901/AI-103/SC-500)
Microsoft Azure 認定資格 全 26 試験 (現行 23 + 退役 3) の 2026 年版ロードマップ。...
AI-901 完全ガイド|Azure AI Fundamentals 新試験
Microsoft Certified: Azure AI Fundamentals (AI-901) の出題範囲・Mi...
Microsoft Entra ID 入門|旧 Azure AD から学ぶ ID 管理 (AZ-900/SC-900/AZ-104 必須知識)
Microsoft Entra ID (旧 Azure Active Directory) の入門解説。2023 年 7...
DP-900 完全ガイド|Azure Data Fundamentals 出題範囲・学習リソース・合格戦略
Microsoft Azure Data Fundamentals (DP-900) の完全ガイド。4 ドメインの出題範...