Storage Replica in Windows Server 2019 Features and Configuration
A capability that has been around for quite some time with Storage Area Network (SAN) devices is the ability to replicate the storage between one SAN device to another SAN device. SAN vendors have long had this capability. It provides an easy way to replicate all the data on a SAN device safely to a DR or other facility where you have another SAN device receiving the replicated data. Back in Windows Server 2016, Microsoft released an extremely interesting capability that allows you to essentially replicate volumes between Windows Servers. This feature is called Storage Replica. This holds out some very interesting and extremely beneficial use cases. With Windows Server 2019, these capabilities were further extended. In this post, we will take a look at Storage Replica in Windows Server 2019 Features and Configuration and see how to leverage this feature.
What is Storage Replica?
What is Storage Replica technology? Storage Replica is a new Windows Server technology that allows you to replicate the content of your volumes between servers or clusters for disaster recovery. In addition, it provides a means to create streteched failover clusters that span two sites and keeps the data between those two sites in sync.
This is a data replication technology that copies data between teh two Windows Servers at the block-level. The Windows Servers can be located at different physical locations and wasn’t an available technology in Windows Server versions prior to Windows Server 2016.
The technology is also important when thinking about architecting a multi-site failover cluster configuration. It allows keeping the the data in synce continuously between the cluster nodes at each site. This is the feature that allows successful failover between cluster configurations at various sites.
When you think about the benefits of this solution in terms of uniformity, simplicity, and functionality, it is a win-win across the board. Microsoft is the sole vendor of the solution and the solution does not depend on a specific type or brand of storage solution as it is taken care of in software. Much like the benefits of software-defined storage in general, this allows you to choose your own preference of hardware vendor backing the storage solution configured for your Windows Servers.
Types of Replication
In looking at Storage Replica in Windows Server 2019 Features and Configuration, there are two types of Storage Replica synchronization technologies:
Synchronous replication – As you would expect, this mirrors data within a low-latency network site with crash-consistent volumes to ensure you have no data loss of your data at a file-system level if and when a failure occurs.
Asynchronous replication – With Asynchronous replication, this mirrors the data across sites beyond metropolitan ranges over network links that may have much higher latencies. Using this type of replication, you don’t have a guarantee the data will be identical between both sites.
Storage Replica Features with Windows Server 2019
One of the limiting factors with Windows Server 2016 with Storage Replica was that you only had this feature with Windows Server Datacenter Edition. However, new with Storage Replica in Windows Server 2019 Features and Configuration, Storage Replica is now available with Standard Edition.
This unlocks the feature for many environments who may be limited to Standard Edition with their servers. However, there are limitations to note with Standard Edition including the following:
- You only have this feature between Standard Edition servers running Windows Server 2019
- You can only replicate a single volume instead of an unlimited number of volumes as with Windows Server 2019 Datacenter Edition
- Volumes can have a size of up to 2 TB instead of unlimited size
Also new is the ability to manage Storage Replica with Windows Admin Center which provides a really nice GUI to manage the solution.
Storage Replica Prerequisites
The prerequisites for Storage Replica include the following:
- Active Directory Domain Services
- Storage Spaces Direct, Fibre Channel SAN, iSCSI, or local SAS/SCI/SATA storage. SSDs are recommended for log drives and other similar workloads
- You want to dedicate a connection to synchronous replication and preferably an RDMA-enabled connection
- At least 2 GB RAM and 2 CPU cores per server
- An average of 5ms round trip latency or lower for synchronous replication. Asynchronous replication can deal with any amount of latency
- With Windows Server 2019, you can use Standard or Datacenter Editions for enabling Storage Replica
Storage Replica Considerations
Considerations to make with Storage Replica:
- Network bandwidth and storage are going to certainly come into play with synchronous replication. You must back sure you are using low latency, high-bandwidth connections and high-throughput disks
- With Windows Server 2016, the destination volume will not be made available for use. You won’t be able to access it through file explorer and other means even though the drive letter may show as available. With Windows Server 2019, there is a Test-Failoer cmdlet that allows you to temporarily mount a read-write snapshot of the destination volume for backups, testing, etc
- Microsoft uses their own version of asynchronous replication that actually allows better RPOs than traditional asynchronous replication. It does not use “snapshot-based replication” but rather uses the same technology that is used by synchronous replication and simply removes the requirement for serialized synchronous acknowledgement
- Storage Replica is a much better solution for replicating data than DFS replication
- Do not use Storage Replica as part of a “backup” solution
- It is not a replacement for Hyper-V Replicas or SSQL AlwaysOn Availability Groups
Configuring Storage Replica with Windows Server 2019
Installing Storage Replica couldn’t be easier. It is a simple matter of installing the Storage Replica feature in Server Manager or using Windows Admin Center.
Installing Storage Replica
Below, using Server Manager in Windows Server 2019, Check off the Storage Replica feature for installation.
Add the Additional features that are required for Storage Replica when prompted.
After adding the additional features, click Install on the Confirm installation selections screen in Server Manager.
The server will need to reboot after the installation of Storage Replica. After the reboot, I went back to take a look at the features present and found the Storage Replica feature had installed.
Configuring Storage Replica
Now that Storage Replica is installed, I have also installed Windows Admin Center 1910 for easily configuring the Storage Replica feature. Navigate in Windows Admin Center to Storage Replica and select the New under Storage Replica Partnerships.
This will launch a wizard in the side panel of Windows Admin Center called Replicate with another server. Here I am choosing Use an existing server or VM and click Next.
On the next screen, you will setup your Source and Destination.
When you scroll all the way down on this screen, you will find the More options section that provides additional settings and features of the synchronization that you can either enable or leave unchecked. These include:
- Use blocks already seeded on the target to speed up initial replication
- Encrypt replication traffic
- Enable consistency groups
After a couple of moments, the Storage Replica partnership is created.
On the replication partner that is the destination of the replication, as expected, I tried to browse the “D Drive” and am unable to.
Storage Replica PowerShell Cmdlets
Below is an example of a couple of the cmdlets that are available to get the details of your Storage Replica environment as you can glean a bit more detail than is provided in Windows Admin Center if needed.
- get-srpartnership
- get-srgroup
Also, if you want to see the details of replication during the initial synchronization, you can use the following PowerShell code:
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
A full listing of available PowerShell cmdlets are found on the official Microsoft KB here: https://docs.microsoft.com/en-us/powershell/module/storagereplica/?view=win10-ps
Wrapping Up
Storage Replica is a great new feature found starting in Windows Server 2016 and now looking at Storage Replica in Windows Server 2019 Features and Configuration, it offers further enhancements. Without the need for any third-party hardware solution or vendor-specific solution, Windows Server is now able to replicate your data synchronously or asynchronously as needed between two Windows Servers by means of Storage Replica. Stay tuned for further exploration of this cool technology.