存储副本常见问题解答

本文包含存储副本常见问题的解答。

Azure 是否支持存储副本?

是的。 可以将以下方案与 Azure 配合使用:

  • Azure 中的服务器到服务器复制(在一个或两个数据中心容错域中的基础结构即服务(IaaS)虚拟机(VM 之间同步或异步),或在两个单独的区域之间异步复制。
  • Azure 与本地(使用虚拟专用网络(VPN)或 Azure ExpressRoute 之间的服务器到服务器异步复制。
  • Azure 中的群集到群集复制(在一个或两个数据中心容错域中的 IaaS VM 之间同步或异步进行,或在两个单独的区域之间异步进行)。
  • Azure 与本地之间的群集到群集异步复制(使用 VPN 或 Azure ExpressRoute)。
  • 使用 Azure 共享磁盘(在一个或两个数据中心容错域中的 IaaS VM 之间同步或异步方式)或在两个单独的区域之间异步扩展群集。

有关 Azure 中的来宾群集的详细信息,请参阅 在 Azure中部署 IaaS VM 来宾群集。

重要说明:

如何在初始同步期间查看复制进度?

目标服务器上的存储副本管理员事件日志中的事件 ID 1237 消息显示复制的字节数以及每 10 秒剩余的字节数。

另一个选项是在目标服务器上对一个或多个复制卷使用 \Storage Replica Statistics\Total Bytes Received 下的存储副本性能计数器。

还可以使用 Windows PowerShell 查询复制组。 例如,以下示例命令获取目标上的组的名称,然后每隔 10 秒查询一个名为 “复制 2”的组 以显示进度:

Get-SRGroup

do{
    $r=(Get-SRGroup -Name "Replication 2").replicas
    [System.Console]::Write("Number of remaining bytes {0}`n", $r.NumOfBytesRemaining)
    Start-Sleep 10
}until($r.ReplicationStatus -eq 'ContinuouslyReplicating')
Write-Output "Replica Status: "$r.replicationstatus

是否可以指定要用于复制的网络接口?

是的。 若要指定要用于复制的网络接口,请使用 Set-SRNetworkConstraint cmdlet。 此 cmdlet 在接口层运行。 可以在群集和非聚集方案中使用它。

例如,使用独立服务器(在每个节点上),运行以下命令:

Get-SRPartnership

Get-NetIPConfiguration

记下网关和接口信息(同时在服务器上)和合作关系方向。 然后运行:

Set-SRNetworkConstraint -SourceComputerName sr-srv06 -SourceRGName rg02 -
SourceNWInterface 2 -DestinationComputerName sr-srv05 -DestinationNWInterface 3 -DestinationRGName rg01

Get-SRNetworkConstraint

Update-SmbMultichannelConnection

若要在拉伸群集上配置网络约束,请运行:

Set-SRNetworkConstraint -SourceComputerName sr-cluster01 -SourceRGName group1 -SourceNWInterface "Cluster Network 1","Cluster Network 2" -DestinationComputerName sr-cluster02 -DestinationRGName group2 -DestinationNWInterface "Cluster Network 1","Cluster Network 2"

是否可以配置一对多复制或可传递复制(A 到 B 到 C) 复制?

否,存储副本仅支持服务器、群集或拉伸群集节点的一对一复制。 可以在任一方向上配置特定卷对的各种服务器之间的复制。 例如,服务器 1 可将 D 卷复制到服务器 2,以及服务器 3 的 E 卷。

是否可以增加或收缩存储副本复制的复制卷?

可以增大(扩展)卷,但不能收缩它们。 默认情况下,存储副本会阻止管理员扩展复制的卷。 在调整大小之前,请使用源组上的 Set-SRGroup -AllowVolumeResize $TRUE 选项。

例如:

  1. 针对源计算机运行以下命令:Set-SRGroup -Name YourRG -AllowVolumeResize $TRUE
  2. 使用你喜欢的技术扩展卷。
  3. 针对源计算机运行以下命令:Set-SRGroup -Name YourRG -AllowVolumeResize $FALSE

能否使目标卷联机以便进行只读访问?

Windows Server 2016:否。 在 Windows Server 2016 中开始复制时,存储副本会卸载目标卷。

Windows Server 2019:是的。 可以使用 测试故障转移 功能来装载目标存储。 若要执行测试故障转移,必须具有当前未在目标上复制的未使用的 NTFS 或 ReFS 格式化卷。 然后,临时装载复制存储的快照以进行测试或备份。

若要为目标服务器 RG2上的复制组 SRV2 创建测试故障转移,请使用 T: 作为未复制的临时驱动器,运行以下命令:

Mount-SRDestination -Name RG2 -Computername SRV2 -TemporaryPath T:\

复制的卷现在可在 SRV2上访问。 可以正常读取和写入文件,将其从中复制,或者运行保存在其他位置的联机备份进行安全保护。 T: 卷包含日志数据。

若要删除测试故障转移快照并放弃其更改,请运行:

Dismount-SRDestination -Name RG2 -Computername SRV2

应仅对短期临时作使用测试故障转移功能。 它不适合长期使用。 使用时,复制会继续复制到实际目标卷。

是否可以在拉伸群集中配置 Scale-Out 文件服务器 (SOFS) ?

尽管在技术上是可能的,但由于在与 SOFS 实例联系的计算节点中缺少站点感知,因此不建议使用此配置。 如果使用校园距离网络(延迟通常小于毫秒),则此配置通常不会出现问题。

在群集到群集复制中,存储副本完全支持 SOFS,包括在两个群集之间复制时使用存储空间直通。

在拉伸群集中或在群集之间复制是否需要群集共享卷?

不是。 可以使用群集共享卷或群集资源拥有的永久性磁盘预留(PDR),例如文件服务器角色进行复制。

在群集到群集复制中,存储副本在两个群集之间复制时完全支持 SOFS,包括使用存储空间直通。

是否可以使用存储副本在拉伸群集中配置存储空间直通?

不是。 Windows Server 不支持此配置。

在群集到群集复制中,存储副本完全支持 SOFS 和 Hyper-V 服务器,包括使用存储空间直通。

如何配置异步复制?

运行 New-SRPartnership -ReplicationMode 并提供参数 Asynchronous。 默认情况下,存储副本中的所有复制都是同步的。 还可以通过运行 Set-SRPartnership -ReplicationMode来更改模式。

如何防止拉伸群集的自动故障转移?

若要防止自动故障转移,可以使用 PowerShell 配置 Get-ClusterNode -Name "NodeName").NodeWeight=0。 此命令删除灾难恢复站点中每个节点上的投票。 然后,可以在主站点中的节点上运行 Start-ClusterNode -PreventQuorum,并在灾难站点中的节点上 Start-ClusterNode -ForceQuorum 强制故障转移。 防止自动故障转移不能用作 UI 配置选项,建议不要阻止自动故障转移。

如何禁用虚拟机复原?

若要防止新的 Hyper-V 虚拟机复原功能运行,而是暂停 VM,而不是将其故障转移到灾难恢复站点,请运行 (Get-Cluster).ResiliencyDefaultPeriod=0

如何缩短初始同步的时间?

可以使用精简预配的存储来加快初始同步时间。 存储副本查询和自动使用精简预配的存储,包括非聚集存储空间、Hyper-V 动态磁盘和存储区域网络(SAN)逻辑单元数(LUN)。 初始复制开始后,无法收缩或剪裁卷。

还可以使用种子设定的数据卷来减少带宽使用量,在某些情况下,同步时间也会减少。 在故障转移群集管理器中使用种子设定选项,或使用 New-SRPartnership cmdlet 来确保目标卷包含主站点的某些数据子集。 如果卷大部分为空,则使用种子同步可能会减少时间和带宽使用量。

若要设定数据种子,可以从提供不同效果的选项中进行选择:

  • 以前的复制。 在包含磁盘和卷的节点之间通过常规初始同步进行复制,删除复制,将目标磁盘寄送到其他位置,然后使用种子设定的选项添加复制。 此方法最有效,因为存储副本保证块复制镜像,唯一复制的是增量块。
  • 还原的快照或基于快照的备份。 通过将基于卷的快照还原到目标卷上,块布局中应存在最小的差异。 此方法是下一个最有效的方法。 块可能会匹配,因为卷快照是镜像映像。
  • 复制的文件。 在未使用的目标上创建新卷,然后执行数据的完整 robocopy /MIR 树副本。 可能存在块匹配项。 使用 Windows 文件资源管理器或复制树的某些部分不会创建许多块匹配项。 手动复制文件是种子设定效果最低的方法。

是否可以委托用户来管理复制?

是的。 使用 Grant-SRDelegation cmdlet 委托用户。 可以使用此命令在服务器到服务器、群集到群集和拉伸群集复制方案中设置特定用户。 该命令将委托创建、修改或删除复制的权限,而不作为本地管理员组的成员。

例如:

Grant-SRDelegation -UserName contoso\tonywang

该 cmdlet 提醒用户需要注销,然后登录到他们计划管理的服务器,以便更改生效。 可以使用 Get-SRDelegationRevoke-SRDelegation cmdlet 进一步控制委派。

复制卷的备份和还原选项是什么?

存储副本支持备份和还原源卷。 它还支持创建和还原源卷的快照。 在受存储副本保护时,无法备份或还原目标卷,因为它无法装载或访问。

如果遇到灾难并且源卷丢失,则可以使用 Set-SRPartnership cmdlet 将目标提升为新的源卷。 在新升级的源上,可以备份或还原该卷。 还可以使用 Remove-SRPartnershipRemove-SRGroup cmdlet 将卷重新装载为可读/写,从而删除复制。

若要创建定期应用程序一致性快照,可以通过在源服务器上运行 VSSAdmin.exe 来使用卷影复制服务(VSS)来快照复制的数据卷。

例如,如果要使用存储副本复制 F: 卷,请运行以下命令:

vssadmin create shadow /for=F:

然后,切换复制方向、删除复制或只是在同一源卷上之后,可以将任何快照还原到其时间点。

例如,仍在使用 F:,请运行:

vssadmin list shadows
vssadmin revert shadow /shadow={shadown copy ID GUID listed previously}

还可以使用计划任务计划此工具定期运行。 有关使用 VSS 的详细信息,请参阅 vssadmin。 VSS 会忽略日志卷,因此无需备份日志卷。

存储副本支持基于文件的备份。 存储副本不支持基于块的备份和还原。

存储副本需要哪些网络端口?

存储副本依赖于服务器消息块(SMB)和 Web 服务管理(WSMan)进行复制和管理,因此需要以下端口:

  • 445(SMB;复制传输协议、群集 RPC 管理协议)
  • 5445 (iWARP SMB;仅在使用 iWARP 远程直接内存访问(RDMA)网络时需要)
  • 5985 (WSManHTTP; Windows Management Instrumentation(WMI)/通用信息模型(CIM)/PowerShell 的管理协议)

注释

Test-SRTopology cmdlet 需要 ICMPv4/ICMPv6,但不需要进行复制或管理。

什么是日志卷最佳做法?

日志的最佳大小因环境和工作负荷而异,以及工作负荷执行的写入 I/O 量。

  • 较大的或较小的日志不会使复制更快或更慢。
  • 较大的或较小的日志对 10 GB 数据卷与 10 TB 的数据卷没有任何影响(例如)。

较大的日志只需收集并保留更多写入 I/O,然后再将其包装。较大的日志允许源计算机和目标计算机(例如网络中断或目标脱机)之间的服务中断时间更长。 例如,日志配置为最多保留 10 小时的写入,网络将关闭 2 小时。 当网络返回时,源只能播放未同步更改的增量回到目标。 如果日志保留 10 小时,中断时间为两天,则源现在必须从名为位图的其他日志播放,并且通常不会变慢才能重新同步。同步时,它将返回到使用日志。

存储副本依赖于日志来获得所有写入性能。 日志性能对于复制性能至关重要。 必须确保日志卷的性能优于数据卷,因为日志序列化并按顺序化所有写入 I/O。 应始终在日志卷上使用闪存媒体,例如固态硬盘(SSD)。 绝不允许任何其他工作负荷在日志卷上运行,就像不允许其他工作负荷在 SQL 数据库日志卷上运行一样。

重要

我们建议日志存储比数据存储更快,并且日志卷永远不会用于其他工作负荷。

可以通过运行 Test-SRTopology cmdlet 来获取日志大小调整建议。 或者,可以在现有服务器上使用性能计数器来做出日志大小判断。 公式很简单:监视工作负荷下的数据磁盘吞吐量(Avg Write Bytes/Sec),并用它来计算填充不同大小的日志所需的时间。 例如,数据磁盘吞吐量为 50 MB/秒,导致 120 GB 的日志包装在 120 GB 之间除以 50 MB/秒,即 2,400 秒或 40 分钟。 因此,在日志包装为 40 分钟之前,目标服务器无法访问的时间量。 如果日志包装但目标再次可访问,则源会通过位图日志而不是主日志重播块。 日志的大小对性能没有影响。

仅应备份源群集中的数据磁盘。 存储副本日志磁盘应 备份,因为备份可能会与存储副本作冲突。

应选择哪个拓扑:拉伸群集、群集到群集或服务器到服务器?

存储副本有三个主要配置:拉伸群集、群集到群集和服务器到服务器。 每个拓扑具有不同的优势。

如果工作负荷需要使用业务流程(例如在 Hyper-V 私有云群集或 SQL Server FCI 中)进行自动故障转移,则拉伸群集拓扑是理想的选择。 它还具有内置的图形界面故障转移群集管理器,方便使用。 它通过永久性预留使用存储空间、SAN、iSCSI 和 RAID 的经典非对称群集共享存储体系结构。 可以使用最少两个节点运行此拓扑。

群集到群集拓扑使用两个单独的群集。 如果需要手动故障转移,或者为灾难恢复预配第二个站点而不是日常使用,则此拓扑是理想的。 业务流程是手动的。 与拉伸群集拓扑不同,可以在此配置中使用存储空间直通(有关注意事项,请参阅存储副本常见问题解答和群集到群集文档)。 可以使用多达四个节点运行此拓扑。

如果运行的是无法群集的硬件,则服务器到服务器拓扑是理想的。 它需要手动故障转移和业务流程。 它非常适合分支机构和中心数据中心之间的廉价部署,尤其是在使用异步复制时。 此配置通常可以替换用于单主灾难恢复方案的分布式文件系统复制(DFS 复制)保护的文件服务器的实例。

在所有情况下,拓扑都支持在物理硬件上运行并在虚拟机上运行。 在虚拟机上,基础虚拟机监控程序不需要 Hyper-V。 例如,可以使用 VMware、KVM 或 Xen。

存储副本还具有服务器到自我模式,可将复制指向同一计算机上的两个不同的卷。

存储副本是否支持重复数据删除?

是的。 在源服务器上的卷上启用重复数据删除,并在复制期间,目标服务器接收卷的重复数据删除副本。

尽管应 在源服务器和目标服务器上安装 重复数据删除(请参阅 安装和启用重复数据删除),但请务必不要 在目标服务器上启用 重复数据删除。 存储副本仅允许在源服务器上写入。 由于重复数据删除对卷进行写入,因此它应仅在源服务器上运行。

是否可以在 Windows Server 2019 和 Windows Server 2016 之间复制?

遗憾的是,我们不支持 在 Windows Server 2019 和 Windows Server 2016 之间创建新的 合作关系。 你可以安全地将运行 Windows Server 2016 的服务器或群集升级到 Windows Server 2019,并且任何 现有 合作关系将继续工作。

若要提高 Windows Server 2019 的复制性能,合作关系的所有成员都必须运行 Windows Server 2019。 还必须删除现有的合作关系和关联的复制组,然后使用种子数据重新创建它们(在 Windows Admin Center 中创建合作关系或使用 New-SRPartnership cmdlet 时)。

如何报告存储副本或文档的问题?

有关存储副本的技术支持,可以在 Microsoft Q & A 发布,或联系 Microsoft业务支持

有关本文档的问题,请参阅此页面底部的“反馈”部分,然后选择 此页面

是否可以将存储副本配置为双向复制?

存储副本是单向复制技术。 它仅按卷从源复制到目标。 该方向随时可以反转,但仍仅以一个方向复制。

可以有一组卷(源和目标)在一个方向复制,另一组驱动器(源和目标)复制到相反的方向。

例如,你希望配置服务器到服务器的复制。 Server1 和 Server2 各有驱动器号 L:M:N:O:。 你想要将驱动器 M:Server1 复制到 Server2,并将驱动器 O:Server2 复制到 Server1。 只要每个组都有单独的日志驱动器,就可以使用此配置:

  • Server1 源驱动器 M: 源日志驱动器 L:Server2 复制到目标 drive M:,目标日志驱动器 L:
  • Server2 源驱动器 O: 源日志驱动器 N:Server1 复制到目标 drive O:,目标日志驱动器 N:

是否可以将群集磁盘置于维护模式?

存储副本阻止任何群集磁盘进入维护模式。 对于某些任务(例如启用或禁用 BitLocker),磁盘必须处于维护模式。 对于需要磁盘处于维护模式的任务,必须先断开合作关系,然后在任务完成时再次创建。

是否可以在不同的作系统版本之间配置存储副本?

如果复制日志版本不匹配,或者两个服务器不支持某个功能,则存储副本会阻止新的合作关系。 存储副本压缩是作系统版本之间不匹配的功能示例,因为它最初是在 Windows Server 2022 中添加的。 尝试配置与不支持功能的服务器的合作关系会返回错误“不支持请求的作”。

下表显示了当前的日志版本互作性矩阵:

从/到复制 Windows Server 2016 Windows Server 2019 Windows Server 2022
Windows Server 2016
Windows Server 2019
Windows Server 2022

相关内容