3

We have a Windows 2012 R2 Hyper-V VM that has multiple drives attached via iSCSI directly to a SAN. These drives are accessed through multiple other 2012 R2 VM's using UNC paths to add and fetch files (very rare to update/delete). The files are created by an internal process and viewed later by users.

If the VM connected to the iSCSI storage goes offline then all of our file processing has to stop - we can't generate and save new files and users can't view them. This is a single point of failure.

Is there a technology that we can implement that would connect the iSCSI drives to another VM if the first VM goes offline (planned or unplanned)?

Our SAN doesn't have the capability of presenting the drive as a NAS (this would make our life easier). Is it possible to use Windows Failover Clustering to provide some redundancy by connecting the iSCSI drives to wherever the primary is? All I could find was iSCSI Target failover, but I don't think this is what I need.

Any ideas?

Greg
  • 463
  • 2
  • 12
  • 23

3 Answers3

2

There is a technology called Multipath I/O that basically handles what you have described: https://technet.microsoft.com/en-us/library/cc725907(v=ws.11).aspx

In order to achieve Hypervisor-level redundancy you will need to create the Failover Cluster. After this you will be able to configure HA VMs, SOFS or "failover File Server" roles that seems to be the goal you are trying to achieve.

Nevertheless, high availability with all above mentioned can be only achieved using the shared storage. You may need 2 physical NAS servers or 2 hosts with some "virtual SAN" software installed.

Take a look at StarWind Virtual SAN or HPE VSA. As far as I know, they both have free versions available with some limitations.

StarWind: https://www.starwindsoftware.com/

HPE VSA: http://www8.hp.com/us/en/products/storage-software/product-detail.html?oid=5306917

Strepsils
  • 5,000
  • 10
  • 14
0

In your case ,you may build SOFS (file server cluster):

http://www.aidanfinn.com/?p=13176

https://garvis.ca/2015/04/16/step-by-step-building-a-scale-out-file-server-sofs-on-windows-server-2012-r2/

Elton Ji - MSFT
  • 281
  • 1
  • 3
  • does SOFS mean I have 2 copies of the data on different storage devices? I.e. just creating a mirror of the drive? What I'm trying to do is have the 1 iSCSI target attach to a different VM in the cluster if the 1st goes down. – Greg Sep 08 '16 at 00:25
  • From the AidanFinn link: "If you had SAS, iSCSI or Fibre Channel SANs then I’d ask why you’re bothering to create a SOFS for production; you’d only be adding another layer and more management. Just connect the Hyper-V hosts or SQL servers directly to the SAN using the appropriate HBAs." – Greg Sep 08 '16 at 00:34
  • [**SOFS mean I have 2 copies of the data on different storage devices?**] Not 'on different storage devices' , that iSCSI disks are connected to two or more cluster nodes at a time (Same iSCSI LUNs are all connecting to each cluster nodes ). While one node failed , other computers/users still can access file share service provided by failover cluster . [** iSCSI target attach to a different VM in the cluster if the 1st goes down**] Using Failover Cluster may avoid this operation . – Elton Ji - MSFT Sep 08 '16 at 07:42
  • 1
    SOFS makes sense with an iSCSI backend for a good reason: you have RDMA SMB3 connections from your client to your storage, and not TCP / CPU bond iSCSI or whatever. You can have "shared nothing" SOFS literally for free! https://www.starwindsoftware.com/blog/part-2-smb-3-0-file-server-on-free-microsoft-hyper-v-server-2012-r2-clustered – BaronSamedi1958 Sep 10 '16 at 20:39
0

Still working through this, but it looks like we can do this with Windows Failover Clustering. This blog gave us a good guide: http://www.1e.com/blogs/2014/08/11/creating-a-windows-cluster-using-iscsi-to-connect-to-shared-storage/

Basically:

  1. Create a Failover Cluster and add all of the nodes to it. Connect the iSCSI drive to all VM's but keep them in the offline mode (using disk management).
  2. Bring it online on one of the servers, format the drive and present it to the OS.
  3. In the Failover Cluster manager, expand Storage folder, right click disks and Add Disk. Follow the wizard. This means that the drive will failover to other nodes in the cluster and will be brought online on that drive.
  4. Add a File Share Role to the cluster and select the disk.
  5. Create a share on the File Share Role - that then gives you a UNC path that can fail over to any node in the Failover Cluster
Greg
  • 463
  • 2
  • 12
  • 23