Storage Replication是Windows Server 2016中新增的一项功能,它是利用windows server自带的块存储复制技术

首先,我们简答粗暴的交代一下部署需求:

1、该功能目前只存在Windows Server 2016 Datacenter版本
2、需要安装Storage-Replica,FS-FileServer两项功能
3、复制过程中使用Kerberos进行验证,所以需要入域
4、复制节点至少需要两块磁盘,一块数据盘,一块日志盘,且必须为GPT格式
5、数据盘上限10TB,日志盘下限8GB
6、复制过程中用到的端口:445、5445、5895
7、网络要求:尽量高于1Gbps,最好10Gbps(同步复制)

下面我们说一下该技术的特点:

1、使用SMB3.1.1技术
2、支持同步复制与异步复制(默认)
3、复制时会需要日志磁盘与数据磁盘,数据先写入日志磁盘,再Commit数据磁盘
4、对存储底层无任何要求,可以是任意技术
5、复制过程中存在主备关系,主可读可写,备默认不可读写

针对上面提到的同步复制与异步复制,我们做一个简单的介绍

同步复制

你应该知道的Windows复制技术

异步复制

你应该知道的Windows复制技术

最后,开始我们的功能测试吧

服务器信息

server01
你应该知道的Windows复制技术



server02
你应该知道的Windows复制技术

启用复制
任意一台机器,执行以下命令
Invoke-Command -Computername SRV01,SRV02 -ScriptBlock{Install-WindowsFeature -Name Storage-Replica,FS-FileServer -IncludeManagementTools -restart}



New-SRPartnership -SourceComputerName SRV01 -SourceRGName RG01 -SourceVolumeName D: -SourceLogVolumeName E: -DestinationComputerName SRV02 -DestinationRGName RG02 -DestinationVolumeName D: -DestinationLogVolumeName E: -LogSizeInBytes 12GB -Verbose
你应该知道的Windows复制技术

通过powershell查看复制状态

Get-SRPartnership
你应该知道的Windows复制技术

Get-SRgroup
你应该知道的Windows复制技术
其中,我们要注意ReplicationStatus这个值,属性为Relicating说明正在复制,InitialBlockCopy说明还在初始复制,如果出现error字样说明当前出现无法执行复制



我们可以通过Windows性能计数器来查看存储复制(块复制,与磁盘空间有关,状态从InitialBlockCopy变成ContinuouslyReplicating)
你应该知道的Windows复制技术

我们也可以通过windows日志来分析存储复制的状态
你应该知道的Windows复制技术
注意:日志中出现1241的警告提醒是可以忽略的,在建立复制组关系前,要完成一次块复制,完成后RPO会变为可用状态


有一点需要注意,创建复制关系后,数据盘遵循该技术主节点可读写,辅节点不可读写的特性
你应该知道的Windows复制技术
我们需要执行:
你应该知道的Windows复制技术
通过切换切换复制方向,可以查看到,文件已正常被复制
你应该知道的Windows复制技术
如果,生产中,原主节点SRV01突然宕机,该命令会失效,一般做法是解除复制组关系:
Get-SRPartnership | Remove-SRPartnership -Force(可以在任意节点执行该命令)

有兴趣的同学可以实验起来了