Storage replication

This post is about Microsoft Storage Replica – a disaster recovery tool, introduced by Microsoft in Windows Server 2016. It is a part of series about this technology, which is all featured on this blog. Basically, the post is a practical guide for building a “Shared Nothing” Scale-Out File Server, prepared by StarWind engineers after they did it themselves. The “Shared Nothing” is an architecture, which implies that each node is self-sufficient and completely independent, which makes the system more reliable. It got its name because the nodes don’t have a shared storage at all, moving closer to eliminating the single point of failure. The architecture is almost infinitely scalable, becoming popular with use cases where unpredictable and explosive growth is typical.
2nd Test Scenario – This time we wanted to configure and run Storage Replica in Windows Server Technical Preview, but using SOFS role. Having encountered the same things we had with the 1st scenario, we formed this report – have a look…

Storage Replication Failover Cluster with Scale-out File Server Role


As soon as Microsoft introduced Storage Replica, we decided to check if it’s true that convenient (to get detailed info, try these links: and Microsoft claims it can create clusters without any shared storage or SAN. In order to test this interesting feature, we decided to try Storage Replica with Microsoft Failover Cluster. We chose the Scale-Out File Server role for this example.


A total of 4 servers are used in this configuration:

  1. First cluster node for Storage Replica
  2. Second cluster node for Storage Replica
  3. The server with the MS iSCSI Target, which provides iSCSI storage (not shared – for the sake of testing the capabilities of Storage Replica) for the cluster nodes. We also have to create SMB 3.0 share to use as a witness (because Storage Replica cannot fulfill this task).
  4. Server with the Hyper-V role.

Cluster nodes are first joined into the domain.

Note: Though the manual says that SSD and SAS disks are supported for Storage Replica, I couldn’t get them connected. As the same thing went with virtual SAS disks, emulated by Microsoft Hyper-V or VMware ESXi, I tried to connect the iSCSI devices created in the MS Target. It seems like the only option that managed to work somehow.
I’m starting MS iSCSI Target on a separate machine and create 2 disks for each node (4 disks total). As this is not a shared storage, the first and the second disks are connected to the first node, while the third and the fourth – to the second node. One disk from the first pair will be used as a replica source, while the other one – as a source log disk. On the second pair, the disks will be respectively – replica destination and destination log. The log disk must be at least 2 Gb or a minimum of 10% of the source disk.

The screenshot shows the two 35 Gb disks, created for source and destination, as well as two 10 Gb disks for the source log and destination log.

Now we’re all set.

Connecting the devices through the initiator on both the nodes, where I’m going to test Storage Replica. Initializing them, choosing GPT (this is important!) and formatting the disks. For both the nodes, I choose the same letters (this is important too!).

Using Add Roles and Features wizard, I’ll add Failover Clustering, Multipath I/O and Windows Volume Replication on the nodes.

Reboot. After it’s complete, I will create a cluster.

Going to the Storage->Disks in the cluster, adding disk by clicking Add Disk. Here’s what we see in the next window (2 disks on each node). If the replica destination node is set as the disks owner, change the owner to the replica source node.

Failover Cluster Manager disks

Adding source disk to Cluster Shared Volumes.

Failover Cluster Manager Add disks to Cluster Shared Volumes

Setting the owner of the destination disk as the disk owner here.

Failover Cluster Manager view

Now we can begin disk replication.

Failover Cluster Manager Enable Replication

Select the log source disk for our replica in the appearing wizard.

Configure Storage Replication Select Source log disk

The next step is selecting the replica destination disk.

Note: if you don’t see the disk, it means you didn’t set the right owner in the previous steps.

Configure Storage Replication select destination storage volume

Selecting the disk for log-disk replication as well.

Configure Storage Replication select destination log disk

Now we’ll synchronize the disks. As the data isn’t synced, we’re selecting the second option.

Configure Storage Replication Seeded disk

The next step will display our configuration – a good time to check it.

Configure Storage Replication Confirmation

Now we’re going to create the replica.

Configure Storage Replication

Done – replica is successfully created.

Configure Storage Replication summary

Now we’ve got our replica.

Failover Cluster Manager

Adding the Scale-Out File Server role.

Failover Cluster Manager Adding Scale-Out File Server role

Select File Server

High Availability Wizard Select File Server Role

Set the file server type as Scale-Out File Server for application data

High Availability Wizard File Server Type

High Availability Wizard Client Access Point

High Availability Wizard configuration confirmation

High Availability Wizard File Server configuration summary

Adding a share to our File Server.

Failover Cluster Manager Add File Share

Selecting SMB Share – Applications

New Share Wizard Select profile smb share application

Select the volume on the Storage Replica (NOT the log-disk).

New Share Wizard Share location

Name the share.

New share name

If required – go through additional settings.

New Share Wizard Enable continuous availability

Again, if required, you can manage permissions for access.

New share Wizard permissions

Having checked everything, click Create.

New Share Wizard settings confirmation

Wait through the share creation process and close the wizard.

New Share Wizard results

Hyper-V configuration.

Let’s take a Hyper-V server and create a virtual machine. Then we place the VM on the share created earlier in SOFS.

New Virtual Machine Wizard Specify Name and Location

Selecting the generation.

New Virtual Machine Wizard Specify Generation

Assigning the memory.

New Virtual Machine Wizard Assign Memory

Configuring the networking here.

New virtual machine wizard configure networking

Creating a new virtual disk for the VM, setting the share on SOFS as location.

New Virtual Machine Wizard connect virtual hard disk

Select the OS installation method.

New Virtual Machine Wizard installation options

Having checked everything, click Finish.

Completing the New Virtual Machine Wizard Summary

Now we’re starting the VM and installing the OS, improving the settings if needed.

Hyper-V manager view

If one of the cluster nodes involved in Storage Replica “disappears”, the VM won’t “feel a thing” and works normally.


Basically, everything worked well. Transparent failover occurred and the operation wasn’t disrupted.

Back to blog