Hyper-V 副本通过在运行 Windows Server 的 Hyper-V 主机之间复制虚拟机(VM)来帮助保护工作负荷。 本文介绍如何在故障转移群集上启用 Hyper-V 副本。
可以在群集、单个主机或两者的组合之间进行复制。 如果使用证书进行身份验证,则主机之间没有 Active Directory 依赖项。 单个主机可以属于域成员或工作组。
若要了解如何在单个主机上启用 Hyper-V 副本,请参阅在 单个主机上启用 Hyper-V 副本。 有关 Hyper-V 副本及其工作原理的详细信息,请参阅 Hyper-V 副本概述。
先决条件
在开始之前,请确保满足以下先决条件:
有一个 Hyper-V 群集来接收复制的 VM。 你还有另一个用于复制 VM 的群集或单个主机。
确定身份验证方法:
如果群集和主机已加入同一个或受信任的 Active Directory 域,则可以使用 Kerberos (HTTP) 身份验证。
如果群集和主机未加入域或处于不受信任的域中,或者还想要使用加密,则必须使用基于证书的 (HTTPS) 身份验证。 需要在每台主机上安装有效的证书,同时发送和接收。 证书必须满足以下要求:
- 未过期
- 同时具有客户端和服务器身份验证增强型密钥用法(EKU)属性和关联的私钥。
- 在有效的根证书处终止。
- 使用者公用名(CN)或使用者可选名称(SAN)必须与为接收群集提供的 Hyper-V 副本代理角色的完全限定域名(FQDN)匹配。 如果要从群集发送 VM,则还需要每个主主机上 Hyper-V 副本代理角色 FQDN 的证书。
群集和主机之间的网络连接。 默认情况下,如果使用 Kerberos 身份验证,则复制使用端口 80 上的 HTTP。 如果使用基于证书的身份验证,复制会通过端口 443 使用 HTTPS。
接收群集上的存储位置,可供所有节点用来存储复制的 VM。
Hyper-V 副本代理角色需要 IP 地址。 确保对于用于管理的群集网络,子网中提供静态 IP 地址,或者在子网上提供 DHCP。
对主群集或副本群集或主机具有管理权限的用户帐户。
使用作为域管理员的用户帐户,或者在 Active Directory 中为接收群集的 Hyper-V 副本代理角色预先设置计算机帐户。 有关详细信息,请参阅 为群集服务或应用程序预配置帐户。
启用 Hyper-V 副本代理角色
在将 VM 复制到 Hyper-V 群集之前,需要启用 Hyper-V 副本代理角色。 配置接收群集,而不是主群集或主机。
Hyper-V Replica Broker 是一个用作复制流量目标的群集角色。 即使副本 VM 在群集中的节点之间移动,它也能为主服务器提供连接到的单一联系点。
若要确保在发生故障转移事件后,虚拟机可以恢复到原始主群集或主机,请配置主群集和副本群集以及主机进行复制。
使用故障转移群集管理器或 PowerShell 启用和配置 Hyper-V 副本代理角色。 选择相关选项卡以获取说明。
若要使用故障转移群集管理器启用和配置 Hyper-V 副本代理群集角色:
在用于管理群集以进行复制的设备或群集节点之一上,打开 故障转移群集管理器。
在左窗格中,展开要复制到的群集的名称,然后选择“ 角色”。
在右侧“操作”窗格中,选择“配置角色”。 在 高可用性向导中,如果看到 开始之前,请选择下一步。
对于 “选择角色”,请选择 Hyper-V 副本代理,然后选择“ 下一步”。
对于 客户端访问点,输入要用于 Hyper-V 副本代理的名称,然后选择“ 下一步”。 该名称用作角色的 NetBIOS 名称,限制为 15 个字符。 此名称在 Active Directory 域中必须是唯一的。
对于 “确认”,请查看信息,然后选择“ 下一步”。 Hyper-V 副本代理角色已配置。 最初,角色会尝试从 DHCP 获取 IP 地址。 如果想要使用静态 IP 地址,可以稍后更改此设置。 如果子网上没有 DHCP,则在分配静态 IP 地址之前,角色不会联机。
查看 摘要,然后选择“ 完成”。 还可以通过选择在浏览器窗口中打开的 “查看报表”来查看所执行的作的日志。
返回“角色”窗格,右键单击新的 Hyper-V 副本代理角色,然后选择“复制设置”。
在 “Hyper-V 副本代理配置 ”对话框中,进行以下更改:
选中“ 将此群集启用为副本服务器”复选框。
请在 使用 Kerberos(HTTP) 或 使用基于证书的身份验证(HTTPS) 中选中您要使用的身份验证方法的框。 如果不想使用默认端口,请更改端口。 如果使用基于证书的身份验证,请选择 “选择证书”,系统会提示选择符合要求的证书。
对于 授权和存储,请选择 “允许从任何经过身份验证的服务器进行复制 ”,以允许副本服务器接受来自任何成功身份验证的主服务器的 VM 复制流量,或者 允许从指定服务器复制 仅接受你专门选择的主服务器的流量。 对于这两个选项,需要指定复制的 VHD 应存储在副本 Hyper-V 群集上的位置。 对于群集,群集中的所有节点都需要访问此位置,例如群集共享卷 (CSV) 位置
C:\ClusterStorage\Volume1\Replica。如果选择 “允许从指定服务器复制”,请选择“ 添加”。 在 “添加授权条目”中,指定主主机的 FQDN、用于存储副本文件和信任组的位置。 信任组是一个自由格式的文本字段,可用于对主服务器进行分组。 选择“确定”。
选择确定保存设置。
为 Hyper-V 副本启用 Windows 防火墙规则
若要允许主要群集和副本群集和主机之间的复制,流量必须通过 Windows 防火墙(或任何其他第三方防火墙)获取。 在每个主机上安装 Hyper-V 角色时,Windows 防火墙会为 HTTP (80) 和 HTTPS (443) 创建例外,但默认情况下不会启用它们。 需要为所有接收主机启用相应的规则。
可以使用您首选的方法来管理 Windows 防火墙,例如通过组策略进行集中管理,或在每个节点上使用高级安全性控制台或 PowerShell 在本地启用 Windows 防火墙的规则。 有关管理 Windows 防火墙和操作指南的详细信息,请参阅 Windows 防火墙工具。
需要启用的规则取决于配置 Hyper-V 副本代理角色时选择的身份验证方法:
- 启用
Hyper-V Replica HTTP Listener (TCP-In)Kerberos (HTTP) 身份验证。 - 启用
Hyper-V Replica HTTPS Listener (TCP-In)基于证书的 (HTTPS) 身份验证。
测试复制配置
启用和配置 Hyper-V 副本并启用相应的 Windows 防火墙规则后,测试配置以确保主群集或主机可以按预期连接到副本主机。
可以使用 PowerShell cmdlet Test-VMReplicationConnection 测试连接,如以下示例所示。 请务必将占位符 <values> 替换为你自己的。
在要从中复制的某个主机上以管理员身份打开 PowerShell 会话,或使用用于管理群集或主机的设备上的 Enter-PSSession cmdlet 进行远程连接。
使用以下示例命令之一:
若要使用 Kerberos 身份验证测试与副本群集的连接,请运行以下命令:
Test-VMReplicationConnection -ReplicaServerName '<Hyper-V Broker role FQDN>' -ReplicaServerPort 80 -AuthenticationType Kerberos若要使用基于证书的身份验证测试与副本群集的连接,请运行以下命令。 需要主主机或群集上 Hyper-V 副本的有效证书指纹。
Test-VMReplicationConnection -ReplicaServerName '<Hyper-V Broker role FQDN>' -ReplicaServerPort 443 -AuthenticationType Certificate -CertificateThumbprint AA11BB22CC33DD44EE55FF66AA77BB88CC99DD00
对于上述任一示例命令,应会看到以下输出以确认测试成功:
The connection to the specified Replica server with the specified parameters was successful.