COURSE of the MONTH

Windows Server 2012 R2 Shared Storage Basics

I have a new server running a copy of Windows Server 2012 R2 on a new 3TB RAID 5 Config. Server is a Hyper-V Host with a Virtual ADDC
I also have a 2nd new server about to go online with a new copy of Windows Server 2012 R2 on a new 1TB RAID 10 Config.
Server will also be a Hyper-V Host with a Virtual backup ADDC.
I have never done anything with SANS or shared storage.
I would like to know what the typical scenario would be and how to set it up. Also, do I dedicate a VM for these roles and it I want to throw up an FTP site should I do anything special with that?
I don't have a 10Gbe fiber channel but I'm building it.
Truthfully I don't have much need to move large amounts of data but I would like to incorporate storage features anyway

Who is Participating?

I can only assume by "storage pools" that you are talking about the Storage Spaces feature within Windows 2012 and 2012 R2.

Storage Spaces can be used with shared storage or dedicated storage. But it won't magically turn dedicated storage into shared storage. It is more akin to a RAID replacement. And, in fact, should not be used with RAID at all. If you are going to use Storage Spaces, it should be on raw disks that the OS has direct access to. Some RAID controllers allow this, others do not. In production deployments, you usually won't even see a RAID controller when Storage Spaces is being deployed. You instead see non-RAID HBAs used to make disk connections.

Work folders is wholly unrelated to any of the above. It requires neither shared storage nor Storage Spaces. Work Folders is a way to allow non-domain machines to sync a user's personal documents with that device. Think of it as a way that a company could set up private (non-cloud) version of dropbox where a user can sync their documents with the "Work Folders" host server. It could certainly be run on a VM within your current infrastructure. I would not, however, run it on a DC. From a security standpoint, running *any* other roles or services on a DC should be strongly discouraged, and in the age of virtualization, there is no good justification to do so. Simply spin up another VM to run other workloads.

There is no such thing as a "typical" shared storage solution. When shared storage is deployed, it is done to meet a specific need.

With that said, given your description, you don't have anything in place to provide a shared storage solution anyways. Shared storage is most often provided in one of several ways:

1) A dedicated SAN. Which you don't have. This then serves up the shared storage via FC, iSCSI, etc.

2) An external drive device that can support multiple controllers (hence making it shared.) Which you don't have. Such as shared SAS

3) Some low end deployments may take a single server and dedicate it to iSCSI tasks. This can provide shared storage to other servers, but is itself a single point of failure, negating most of the benefits of shared storage, thus making it non-applicable to most scenarios. And with only two servers, you still can't roll out this solution. You could make one of your servers an iSCSI server, but then there'd be no reason to have the storage shared, as you only have one server left to connect to it.

It is worth mentioning at this point that just about every other solution discussing shared storage, such as a scale-out file server or SMB3, still builds on one of the above formulas and adds to it. It doesn't replace or recreate it.

So given your current configuration, I'm not sure what you want to do here. You currently aren't outfitted to do what you want regarding "shared storage" when everything you've listed is direct-attached storage.

The od question of "dedicating a VM to these roles" and then mentioning FTP tells me you perhaps don't fully understand how shared storage works and therefore there is some missing basic knowledge here. It is tough to answer that question if we aren't speaking the same language.

It makes total sense to keep DC dedicated and I have done so. Hyper-V and only Hyper-V on each machine with 1st VM on each being DC-1 and 2 respectively. DC also dedicated.
andyalder (my name's andy too) thanks. I will look into it but it seems like the feature will cost more than disk space in my case and I'm guessing Cliff will agree.
If I'm runing server 1 at <5% potential with a RAID 5 and Server 2 at <1% potential then I'm probably just wasting hardware, electricity, bandwidth etc to spread storage across 2 servers on the same rack.
Work Folders does seem like something I may be able to use though. I guess I would create a VM just for that?
Note:
I fired up server #2 for the 1st time last night and with the Gigabyte Z97X-SLIboard / Intel I5 and a RAID 10 the Server 2012 install completed in under 1.5 min including the reboot. I couldn't believe it!
But just like Cliff said, although all drivers are installed there appears to be absolutely no performance benefit to using the new Radeon R7260X GPU.
That said I'm thinking of trying 8.1 with its limited Hyper-V role to run just 1 backup DC and using the 8.1 host as my desktop if I can get Intel NIC drivers to install on my cards to use their version of NIC teaming

Client Hyper-V isn't meant for production workloads. You'll needlessly be killing the performance of the host and the VM if you do that. I'd recommend against it.

0

A_AmericanELectricAuthor Commented: 2014-10-27

OK. Would it be a bad move to use the copy of 2012 Hyper-v Host #2 as my desktop? Because all hardware is running great after applying the Gigabyte utilities.
This way I can still implement the backup DC on a VM and maybe a Windows Server Essentials VM.

Because the hypervisor inserts itself between the management OS and the hardware, yes using the system as a desktop can *really* mangle things. Nothing is more infuriating than installing a minor patch and watching your entire virtualization platform collapse.

As I've said before, workstations are workstations and servers are servers. NEVER try to use a single machine as both. You'll never be happy with the results, and you can't even justify it as "learning" because you aren't learning how the thing would ever be used in a real environment. You are only learning bad habits.