直接答案:按 2026-11-09 的 Azure Retail Prices API(eastus,美元,不含税/折扣),Azure Batch 服务本身不收费;账单来自底层资源:VM、存储、网络。以 Linux D 系列为例:D2s_v3 0.096/小时(2 vCPU,约 0.048/vCPU·小时)、D4s_v3 0.192(4 vCPU)、D8s_v3 0.384(8 vCPU);Spot/Low Priority 约 0.01919/0.038381/0.076762,约为按需价的 20%(省 80%)。按 vCPU·小时:100 vCPU·h = 4.80(按需)/0.96(Spot)、1,000 = 48.00/9.60、10,000 = 480.00/95.95。节点启动、空闲、start task 都计费;存储/网络另计;Spot 会被容量驱逐,必须 checkpoint/可重试。

本文面向正在评估大规模并行、HPC、渲染、影像/数据批处理或 Monte Carlo 的企业架构师、平台/SRE、财务与采购。它解释 Batch 的“免费服务 + 资源计费”模型、D2s_v3/D4s_v3/D8s_v3 按需 vs Spot、100/1,000/10,000 vCPU·h TCO、autoscale/idle/start task、Batch 与 Functions/Container Apps/AKS/CycleCloud 的边界,以及 90 天清单。价格来自 Azure Batch 定价页、Azure Retail Prices API 与 Microsoft Learn(eastus,2026-11-09)。本文把“官方价格事实”“编辑测算”和“未纳入项”分开写,不构成采购建议。

先记住三句话

① Batch 本身免费,账单 = VM + 存储 + 网络;不要找“Batch 服务费”。② Spot/Low Priority 约省 80%,但会被容量驱逐;短任务/可 checkpoint/可重试才适合。③ 节点启动、空闲、start task 都计费;autoscale 要设下限和公式,避免空转。

计费结构:Batch 免费,资源付费

Azure Batch 提供作业调度和池管理,不额外收费;你只为底层资源付费:compute node 的 VM、存储(输入/输出/应用包)、网络(出网/VNet)。节点是标准 Azure VM,按 VM 价格计费;Spot/Low Priority 节点按 Spot 价格计费。Batch 账户本身免费,但有核心配额(vCPU)限制,池扩不到目标节点时先查配额。

项目计费说明
Batch 服务0作业调度/池管理不另收费
Compute node VM按 VM 价格节点运行即计费,含启动/空闲
Spot/Low PrioritySpot 价格约按需价 20%
存储Azure Storage 标准价输入/输出/应用包
网络标准价出网/VNet/负载均衡
Start task节点运行时间加入/重启/重镜像时执行

来源:Azure Batch 定价页与 Learn“What is Azure Batch”(2026-11-09)。官方明确“no extra charge to use Batch”,只付 VM/存储/网络。

D 系列按需 vs Spot:约 80% 折扣

Linux D 系列的每 vCPU 价格很接近:D2s_v3 0.096/小时(2 vCPU)、D4s_v3 0.192(4)、D8s_v3 0.384(8),约 0.048/vCPU·小时;Spot 为 0.01919/0.038381/0.076762,约 0.0096/vCPU·小时,省 80%。Spot 价格随容量/区域/时间变化,本文用 eastus 2026-11-09 的快照;Low Priority 价格与 Spot 接近,但计费/驱逐行为不同。

SKUvCPU/RAM按需/小时Spot/小时Spot 折扣按需/Spot per vCPU·h
D2s_v32 / 8GB0.0960.0191980.0%0.048 / 0.0096
D4s_v34 / 16GB0.1920.03838180.0%0.048 / 0.0096
D8s_v38 / 32GB0.3840.07676280.0%0.048 / 0.0096

来源:Azure Retail Prices API(eastus,2026-11-09);Linux 价格,未含税/折扣。Spot 价格随容量/区域/时间变化;Low Priority 价格接近但计费/驱逐行为不同。

100 / 1,000 / 10,000 vCPU·小时 TCO

按 D2s_v3(2 vCPU)折算:100 vCPU·h = 50 节点·小时 = 4.80(按需)/0.96(Spot);1,000 vCPU·h = 500 节点·小时 = 48.00/9.60;10,000 vCPU·h = 5,000 节点·小时 = 480.00/95.95。因为每 vCPU 价格接近,D4s_v3/D8s_v3 在同一 vCPU·h 下结果几乎一样;选型更多看单任务内存/核数/启动时间。50% 按需 + 50% Spot 的 1,000 vCPU·h 约为 28.80。

vCPU·小时D2s_v3 节点·小时按需/月Spot/月Spot 节省
100504.800.9680.0%
1,00050048.009.6080.0%
10,0005,000480.0095.9580.0%

编辑测算:D2s_v3 0.096/小时、Spot 0.01919;按 vCPU·h 线性折算;未计存储、网络、start task/空闲、税与折扣。Spot 实际价格/可用性随容量变化。

Spot/Low Priority:省 80% 的代价

Spot 利用 Azure 剩余容量,价格低但可能被容量驱逐;Batch 的 Spot 不支持设置最高价/按价驱逐,只能因容量被驱逐。被驱逐的 VM 可能在 48 小时内尝试恢复,但不保证成功;任务需要checkpoint/可重试/短任务。Spot 也不支持 ephemeral OS disk(服务管理 Stop-Deallocate)。截止期紧、不可中断的任务应保留 dedicated 节点或混合池。

项目规则/影响
驱逐容量原因,可能随时发生
最高价Batch Spot 不支持 max price/按价驱逐
恢复48 小时内尝试,非保证
Checkpoint必须可重试/断点续跑
Ephemeral OSSpot 不支持
混合池dedicated + Spot 可同时存在
截止期紧 deadline 保留 dedicated

来源:Learn“Use Spot VMs with Batch workloads”(2026-11-09)。Spot 可用性/价格随容量变化;不适合不可中断的长任务。

Autoscale、Idle 与 Start Task:免费服务也会烧钱

Batch 的 autoscale 用公式按指标增减节点;但节点只要存在就计费,包括启动、start task、空闲、任务间等待。常见浪费:池下限过高、公式不收敛、start task 过长、任务失败重试、核心配额不足导致池扩不到目标、忘记缩容/删除池。用 autoscale 的 min nodes、任务队列长度、节点去分配策略,把“空闲税”压下来。

杠杆成本影响控制
Autoscale 公式节点随负载按 RunningTasks/队列设上下限
Idle 节点存在即计费缩容/删除池/低优先级
Start task节点启动时间预装镜像/应用包
任务重试重复 computecheckpoint/幂等
核心配额池扩不到目标提前申请配额
池下限固定成本min nodes=0/低
忘记删池持续计费生命周期/自动清理

来源:Learn“Autoscale compute nodes”和“Nodes and pools”(2026-11-09)。节点运行/启动/空闲都按 VM 计费。

Batch vs Functions vs Container Apps vs AKS vs CycleCloud

按调度模型选:Batch 适合大规模并行/HPC/渲染/独立任务/MPI,按 VM 付费;Functions 适合事件驱动、短任务、按执行计费;Container Apps 适合容器化 API/作业、按 vCPU/内存;AKS 适合 Kubernetes 编排/微服务;CycleCloud 适合已有 Slurm/PBS 等调度器的工作流。Batch 的优势是“调度即服务 + 池化 VM”,不是替代所有计算平台。

场景优先理由/先核对
大规模并行/HPC/渲染BatchVM+Spot、池/任务模型
事件驱动/短任务Functions按执行/冷启动
容器化 API/作业Container AppsvCPU/内存/副本
Kubernetes/微服务AKS节点池/调度
已有 Slurm/PBSCycleCloud保留调度器模型
紧耦合 MPIBatch/CycleCloudInfiniBand/节点通信
简单定时Logic Apps/Functions无需池

编辑整理的选择框架,不是厂商推荐;具体功能/配额/区域以官方文档为准。来源:Learn Batch/HPC 文档(2026-11-09)。

隐藏成本与 90 天清单

七项额外成本:存储(输入/输出/应用包)、网络出网/VNet、节点启动/空闲、start task、失败重试、Spot 驱逐后的重跑、核心配额。90 天:第 1–2 周统计任务数/时长/vCPU·h、数据量、截止期;第 2–4 周用 D2s_v3 按需 vs Spot 算 100/1,000/10,000 vCPU·h;第 4–6 周做 Spot PoC + checkpoint;第 6–8 周调 autoscale/池下限/start task;第 8–10 周比较 Functions/Container Apps/AKS/CycleCloud;第 10–12 周做存储/网络账单复盘和配额申请。

常见问题

Azure Batch 怎么收费?

Batch 服务本身免费;只付底层 VM、存储、网络。节点是标准 Azure VM,按 VM/Spot 价格计费;Batch 账户免费但有 vCPU 配额。没有“Batch 服务费”这一项。

为什么 Batch 免费但账单高?

因为节点只要存在就计费:启动、start task、空闲、任务间等待都算;再加存储、出网、失败重试和 Spot 驱逐重跑。池下限过高/忘记删池/公式不收敛是常见浪费。

Spot 能省多少?

eastus D2s_v3 按需 0.096/小时、Spot 0.01919,约省 80%;D4s_v3/D8s_v3 同比例。Spot 价格随容量/区域/时间变化,且会被容量驱逐;适合短任务/可 checkpoint/可重试。

1,000 vCPU·小时多少钱?

D2s_v3(2 vCPU)500 节点·小时:按需 48.00、Spot 9.60;50% 按需 + 50% Spot 约 28.80。未计存储/网络/start task/空闲/税。

Spot 被驱逐怎么办?

任务要能 checkpoint/重试/幂等;Batch Spot 不支持 max price,只按容量驱逐;被驱逐 VM 48 小时内尝试恢复但不保证。截止期紧的任务保留 dedicated 节点或混合池。

Autoscale 怎么设?

用公式按 RunningTasks/队列长度/时间窗口增减节点,设 min/max 和去分配策略;核心配额不足会扩不到目标。池下限=0 或低值,避免空闲税;定期清理不再使用的池。

存储和网络怎么算?

输入/输出/应用包按 Azure Storage 标准价;出网/VNet/负载均衡按标准网络价。它们不在 Batch 服务费里,需单独估算;大数据集/跨区传输可能比 VM 更贵。

Batch 和 Functions/Container Apps/AKS 怎么选?

大规模并行/HPC/渲染/MPI 选 Batch;事件驱动/短任务选 Functions;容器化 API/作业选 Container Apps;Kubernetes/微服务选 AKS;已有 Slurm/PBS 选 CycleCloud。按调度模型和计费单位选,不只看单价。

研究方法与局限

本文把“官方价格事实”和“编辑测算”分开:Batch 免费、只付 VM/存储/网络、Spot/Low Priority、autoscale/start task/核心配额来自 Azure Batch 定价页与 Microsoft Learn;D2s_v3 0.096/Spot 0.01919、D4s_v3 0.192/0.038381、D8s_v3 0.384/0.076762 来自 Azure Retail Prices API(eastus,2026-11-09);100/1,000/10,000 vCPU·h TCO 为编辑测算。

局限有八个:① 只取 eastus Linux list price,不含税/CSP/企业折扣/Windows;② Spot 价格随容量/区域/时间变化,示例是快照;③ 主 TCO 未计存储/网络/start task/空闲/重试/税;④ 未做真实任务/调度/HPC 压测;⑤ 未覆盖 GPU/InfiniBand/MPI 专用 SKU;⑥ Low Priority 与 Spot 的计费/驱逐差异未逐一模型化;⑦ 核心配额/区域可用性会影响实际池规模;⑧ 价格/功能会变,采购前应复核官方页面与账单。

数据来源与口径

资料截止 2026-11-09;价格/可用性以 Microsoft 官方页面与账单为准;本文不构成采购、商务或法律建议。

把 VM/Spot、vCPU·h、空闲和存储网络拆成可核对预算

带着任务数/时长/vCPU·h、数据量、截止期和 checkpoint 需求,我们把 Azure Batch 成本拆成可核对预算。

预约 Batch 成本评估