2. Azure虚拟机核心概念

要真正把 Azure 虚拟机用起来,不能只记住“创建一台 VM”这个动作,而要先理解它背后的一组核心对象:规格决定性能上限,区域与可用区决定部署位置与容灾能力,资源组与订阅决定管理与计费边界,磁盘决定数据持久性与性能,网络接口与 IP 决定连通性。这五组概念共同构成一台虚拟机的“身份”和“能力边界”。

一、VM 系列与规格:先选能力,再选大小

Azure 虚拟机按用途划分为多个系列,每个系列面向不同的计算特征。常见的有:B 系列(突发型,适合低负载但偶发高峰的测试或小型 Web 服务)、D 系列(通用型,vCPU 与内存比例均衡,适合大多数企业应用)、E 系列(内存优化,适合数据库、缓存、内存分析)、F 系列(计算优化,适合批处理、游戏服务器、CI 构建)、N 系列(GPU 加速,适合 AI 训练与图形渲染)。

规格名称如 Standard_D4s_v5 可以拆解理解:Standard 表示标准定价层,D 是系列,4 代表 4 个 vCPU,s 表示支持高级存储(Premium SSD),v5 是硬件代次。选择规格时,先看工作负载是 CPU 密集、内存密集还是 I/O 密集,再看是否需要临时磁盘、GPU 或高级存储,最后结合成本与区域可用性确定具体大小。规格一旦选定,vCPU、内存、临时磁盘容量和最大数据磁盘数就随之确定,后续只能通过关机后调整大小来变更。

二、区域与可用区:决定延迟与容灾等级

区域(Region)是 Azure 数据中心的地理集群,例如“中国东部”“东亚”“美国西部”。选择区域时主要考虑:用户与数据的地理位置、合规要求、服务可用性以及与其他 Azure 服务的网络延迟。区域决定了数据驻留位置和基础延迟。

可用区(Availability Zone)是同一区域内物理隔离的数据中心组,通常为 3 个。可用区之间拥有独立的电力、冷却和网络,因此一个可用区故障不会影响其他可用区。把多台 VM 分散到不同可用区,可以获得 99.99% 的 SLA;而放在同一可用区内的可用性集(Availability Set)则通过故障域和更新域提供 99.95% 的 SLA。简单判断:可用区防的是数据中心级故障,可用性集防的是机架与主机维护故障。

三、资源组与订阅:管理与计费的边界

订阅(Subscription)是计费、配额和访问控制的顶层容器。一个组织可以有多个订阅,例如生产订阅、测试订阅、开发订阅,分别对应不同的账单和策略。资源组(Resource Group)是订阅内的逻辑分组,用于把生命周期一致、权限一致、一起部署和删除的资源放在一起。例如一台 VM、它的网卡、磁盘、公共 IP 和网络安全组通常放在同一个资源组中。

资源组不是物理隔离,而是管理边界:删除资源组会删除其中所有资源;基于资源组可以分配 RBAC 权限;基于资源组可以查看合并账单。设计时建议按“应用 + 环境”划分资源组,例如 rg-web-prod、rg-db-test,避免把所有资源堆在一个组里。

四、托管磁盘与临时磁盘:持久与易失的分工

托管磁盘(Managed Disk)是 Azure 托管的持久化块存储,数据独立于 VM 生命周期存在。它分为多种性能层:Standard HDD(低成本、低 IOPS)、Standard SSD(均衡)、Premium SSD(高性能、低延迟)、Ultra Disk(极高 IOPS 与吞吐)。托管磁盘支持快照、磁盘加密和跨区域复制,是操作系统盘和数据盘的首选。

临时磁盘(Temporary Disk)是宿主机本地 SSD,提供低延迟的临时存储,但数据不持久:VM 重新部署、停止(解除分配)或宿主机迁移时数据会丢失。它适合存放页面文件、临时缓存、日志缓冲等可重建数据。默认情况下,Windows VM 的临时磁盘为 D 盘,Linux 为 /dev/sdb,但盘符可能变化,生产环境应通过序列号或标签识别,而不是固定盘符。

五、网络接口与 IP 配置:连通性的入口

每台 VM 至少有一块网络接口(NIC),NIC 连接到虚拟网络中的子网。NIC 上可以配置:私有 IP(子网内通信,默认动态分配,可改为静态)、公共 IP(可选,用于互联网访问)、网络安全组(NSG)(控制入站与出站规则)、加速网络(SR-IOV,降低延迟、提升吞吐)。

多网卡 VM 可以分别接入不同子网,实现管理流量与业务流量分离。IP 配置分为动态和静态:动态 IP 在 VM 停止(解除分配)后可能变化;静态 IP 保持不变,适合 DNS 记录、防火墙白名单和数据库连接。公共 IP 可以是基本 SKU 或标准 SKU,标准 SKU 默认关闭入站流量,必须通过 NSG 显式放行。

订阅 Subscription(计费 / 配额 / 访问控制) 区域 Region(如:中国东部) 可用区 1 独立电力 / 冷却 / 网络 可用区 2 独立电力 / 冷却 / 网络 可用区 3 独立电力 / 冷却 / 网络 资源组 rg-web-prod 资源组 rg-web-prod 资源组 rg-web-prod VM 实例 Standard_D4s_v5 4 vCPU / 16 GiB Linux / Windows 可用性集或单实例 SLA 99.95% 磁盘 OS 盘:Premium SSD 128 GiB 数据盘:Premium SSD 256 GiB 临时盘:本地 SSD(易失) 网络接口 NIC 私有 IP:10.0.1.4(静态) 公共 IP:标准 SKU + NSG VM 实例 Standard_E4s_v5 4 vCPU / 32 GiB 内存优化型 可用性集或单实例 SLA 99.95% 磁盘 OS 盘:Premium SSD 128 GiB 数据盘:Premium SSD 512 GiB 临时盘:本地 SSD(易失) 网络接口 NIC 私有 IP:10.0.2.4(静态) 公共 IP:无(仅内网) VM 实例 Standard_F4s_v2 4 vCPU / 8 GiB 计算优化型 可用性集或单实例 SLA 99.95% 磁盘 OS 盘:Standard SSD 64 GiB 数据盘:Standard SSD 128 GiB 临时盘:本地 SSD(易失) 网络接口 NIC 私有 IP:10.0.3.4(动态) 公共 IP:基本 SKU 同一订阅下,资源组按应用与环境划分;可用区之间物理隔离,跨可用区部署可获得更高 SLA

六、把五个概念串起来:一次典型部署的判断顺序

假设要为“面向中国东部用户的 Web 应用”部署后端 VM,可以按以下顺序决策:

  1. 订阅:选择生产订阅,确保配额足够、账单可追踪。
  2. 区域:选择“中国东部”,靠近用户并满足数据驻留要求。
  3. 可用区:至少部署 2 台 VM 到不同可用区,获得 99.99% SLA;若预算有限,使用可用性集获得 99.95%。
  4. 资源组:新建 rg-web-prod,把 VM、NIC、磁盘、NSG、公共 IP 全部放入同一资源组,便于统一管理和删除。
  5. 规格:Web 前端选择 Standard_D2s_v5(2 vCPU / 8 GiB),数据库选择 Standard_E4s_v5(4 vCPU / 32 GiB)。
  6. 磁盘:OS 盘使用 Premium SSD 128 GiB;数据盘使用 Premium SSD 256 GiB;临时盘仅用于页面文件和临时缓存。
  7. 网络:每台 VM 一块 NIC,私有 IP 设为静态;公共 IP 仅分配给需要对外暴露的 VM,并通过 NSG 限制来源 IP 和端口。
实用判断口诀:规格看负载,区域看用户与合规,可用区看容灾等级,资源组看生命周期,订阅看计费与权限,磁盘看持久性与 IOPS,网卡与 IP 看连通性与安全边界。七项确认完毕,再执行创建,可以避免大部分返工。
常见误区:把临时磁盘当数据盘使用,导致 VM 重启或重新部署后数据丢失;把公共 IP 直接绑定到所有 VM 而不加 NSG,造成暴露面过大;把所有资源放在一个资源组,导致权限和账单无法按应用拆分。这些都是在理解上述核心概念后可以提前规避的问题。

掌握这五组概念后,后续的可用性集、规模集、负载均衡、备份与灾备,都是在这些基础对象之上组合出来的能力。先建立清晰的对象模型,再动手创建资源,是 Azure 虚拟化工程中最稳妥的起点。