Hyper-V副本是Windows Server内置免费灾备功能,通过异步块级复制实现跨站点灾难恢复,支持测试、计划内及计划外三种故障转移模式,无需共享存储,适用于中小规模环境。
hyper-v 副本(replica)是 windows server 自带的免费灾备功能,不依赖共享存储,适合中小规模环境构建跨站点灾难恢复能力。它不能自动切换,但能通过明确的故障转移操作快速启用备用虚拟机,关键在于提前配置、定期验证和流程可控。
基础配置要点
主站点与副本站点需均为 Windows Server(非 Windows 客户端版)且启用 Hyper-V 角色。两者无需在同一个域中——工作组环境可用 HTTPS+证书通信;域环境可选 Kerberos(HTTP)或证书认证。防火墙必须放行 Hyper-V 副本端口(默认 80 或 443),并确保复制流量可达。
- 在两台主机上均启用“复制配置”:打开 Hyper-V 管理器 → 右键服务器名 → “Hyper-V 设置” → “复制配置”,勾选启用,并按环境选择身份验证方式
- 被复制的虚拟机无需关机即可启用复制(Windows Server 2012 R2 起支持运行中启用),但首次初始复制期间性能可能略有影响
- 复制频率可设为 30 秒、5 分钟或 15 分钟;RPO(恢复点目标)即为此间隔,例如选 5 分钟,最多可能丢失最近 5 分钟的数据
三种故障转移模式怎么用
故障转移不是一键启动,而是分场景选择对应操作,每种用途清晰、不可替代:
- 测试故障转移:在副本主机上执行,生成一个隔离网络的临时副本 VM,用于验证恢复流程是否正常,不影响主 VM 运行,也不中断复制流
- 计划内故障转移:主站点仍可用时主动切换(如升级维护)。先在主主机触发,系统会停主 VM、同步剩余日志、启动副本 VM,并自动反转复制方向(原副本变新主)
- 非计划故障转移:主站点已宕机或不可达时,在副本主机手动启动。此时无法保证最后几轮日志是否传完,可能存在少量数据丢失
保持复制健康与再同步
复制状态并非一劳永逸。网络中断超 1 小时(默认日志保留时限)、副本磁盘空间不足、Hyper-V 版本不一致等情况,都会导致复制暂停并进入“需要再同步”状态。
- 用 PowerShell 快速检查:
Get-VMReplication | Where-Object {$_.Health -ne "Normal"} - 再同步不是重新初始复制,而是比对主/副本 VHD 差异后只传输缺失块,速度较快;但若差异过大(如副本停运数天),可能建议删副本重配
- 日常建议每周至少一次测试故障转移,每月一次计划内切换演练,确保流程熟悉、网络连通、应用服务可响应
进阶:让灾备更可控
纯手动逐台操作效率低,尤其涉及多 VM 依赖顺序(如先 DB 后 App)。虽无原生自动故障转移,但可通过轻量编排提升可靠性:
- 用 PowerShell 脚本按优先级顺序触发多台 VM 的计划内故障转移,加入等待、状态校验和邮件通知
- 利用 Windows Task Scheduler 或第三方工具调用脚本,实现“一键启动预定义灾备流程”
- 若已有 System Center Orchestrator(适用于较老环境)或 Azure Automation(对接混合云),可构建带审批、日志审计和回滚步骤的完整 DR Runbook











