在Windows Server 2015上配置存储副本
Windows Server 2015中出现了一个非常有趣的功能 存储副本(SR),它允许将本地磁盘卷复制到远程服务器以进行灾难恢复。卷数据通过网络自动同步到辅助服务器,在该服务器上,卷的相同副本始终可用。在存储副本中,数据通过SMB v3.1协议在块级别进行复制,与所使用的文件系统类型(NTFS、CSVFS、ReFS)无关。
Windows Server 2015中的存储复制以主动/被动模式工作。这意味着数据只在源服务器上可用。有两种复制模式:
同步复制–数据同时写入两台服务器。在写入数据之前,主服务器正在等待来自远程服务器的写入确认(在低延迟网络中,在发生故障期间,文件系统不会丢失任何数据) ****
异步复制–数据写入主服务器,然后复制到备用服务器(可用于在高延迟网络上复制数据,但在发生故障时不保证数据的相同副本) ****
存储复制副本支持以下情形:
服务器本地卷之间的复制;
服务器到服务器的存储复制;
弹性集群中的存储复制;
群集到群集存储复制。
存储副本前提条件
要使用存储复制副本,基础结构必须满足以下要求:
Windows Server 2015/2019数据中心版;
两台服务器都必须加入Active Directory域;
每台服务器必须有两个添加驱动器:一个用于数据,另一个用于日志。日志驱动器必须比数据驱动器快,理想情况下,它是一个SSD。数据驱动器大小必须相同;
物理磁盘上的GUID分区表(GPT)布局(MBR is不支持);
支持SAS JBOD上的本地驱动器(SAS/SCSI/SATA)、iSCSI、SAN、共享VHD集、存储空间(S2D);
服务器上至少2GB的可用RAM;
服务器之间的网络吞吐量必须至少为 1gbit/s,两种方式的延迟都小于 5ms。(通常,这会将复制伙伴之间的距离限制为20-50公里。)建议网络适配器支持RDMA;
打开服务器之间的TCP端口445、5985和5445.
在Windows Server 2015上安装存储副本功能
我们可以从Server Manager控制台或者使用PowerShell在Windows Server 2015/2019上安装 存储副本功能:
Install-WindowsFeature Storage-Replica –IncludeManagementTools -Restart
在两台服务器上安装存储复制副本功能。准备就绪后,重新启动服务器。
如何在Windows Server 2015上配置卷复制?
没有集成的存储管理控制台。要配置存储复制,可以使用PowerShell、Windows管理中心或者故障转移群集控制台(如果正在使用群集)。
我们可以在StorageReplica模块中显示可用PowerShell cmdlet的列表,如下所示:
Get-Command -Module storagereplica
使用 Test SRTopology命令,可以确定服务器和网络是否满足存储副本要求。我们可以估计当前的I/O操作数、网络吞吐量、日志大小。Test-SRTopology cmdlet生成包含当前负载和建议的HTML报告。
在两个独立的服务器Server1和Server2之间启用D:drive的复制(磁盘L:用于日志,日志大小为1GB.):
New-SRPartnership -SourceComputerName Server1 -SourceRGName Server1ReplGr01 -SourceVolumeName E: -SourceLogVolumeName L: -DestinationComputerName Server2 -DestinationRGName Server2ReplGr01 -DestinationVolumeName D: -DestinationLogVolumeName E: -LogSizeInBytes 1GB
在辅助服务器上启用复制后,数据磁盘将无法直接访问(原始格式)。
我们可以使用PerfMon或者PowerShell中的其他性能计数器获取更多卷复制信息:
Get-Counter -Counter "\Storage Replica Statistics(*)Э
我们可以使用事件查看器(应用程序和服务日志->Microsoft->Windows->StorageReplica)或者从PowerShell监视卷复制事件:
Get-WinEvent -ProviderName Microsoft-Windows-StorageReplica -max 20
我们可以使用以下命令将复制模式切换到异步模式:
Set-SRPartnership -ReplicationMode Asynchronous