Swimming in Hard Drives? Get your feet wet with Storage Pools

@Carl Boisson
Tech Jobs Academy
Published in
7 min readFeb 25, 2016

--

Image Credit: Carl Boisson

In SysAdmin, a critical concept worth keeping in mind is scalability. This is simply the effectiveness of a process or tool, when considering the bigger picture. Your favorite Bluetooth speakers may produce deep bass and rich sound when set on max volume in your bedroom, but how would they sound in a packed reception hall? Could you count on them to rock a sold-out arena during a concert? At some point, you might need to replace them with something more scalable, that is, something that can handle the larger scope and demands of a greater task.This is especially crucial when it comes to data storage.

How is storage handled?

HDDs (Hard Disk Drives) are the primary means of day-to-day computer storage. These devices have evolved rapidly over the past few decades, with advancements in capacity, speed, and reliability. There are a variety of HDD types, with different benefits depending on your storage needs. There are three common types of HDDs: SATA (Serial ATA), SCSI (Small Computer System Interface), and SSD (Solid State Drive).

Types of HDDs

Image Credit: Carl Boisson

SATA drives are the most common and are widely used in desktop computers. They’re relatively inexpensive, offer tremendous capacity (they can store a lot of information), and generally meet the performance requirements of most desktop applications. SCSI drives are less common, more expensive than SATA, but are faster, and offer better performance in high IOP (reading and writing data) environments. SSD drives are the fastest of the three, are not susceptible to mechanical failure (they don’t contain moving parts), but are far more expensive (far less storage capacity for the dollar compared to SATA).

Desktop Storage

Windows 10 desktop PCs are usually configured with one large SATA drive. The average user places all of their files on this drive and all of their applications use the same volume. Generally speaking, this drive is accessed for only a few hours a day, one user at a time. This is a suitable setup for this particular environment, but is it scalable for the demands of a server?

Server Storage

A server is used to administer a wide range of services to clients (usually other computers). This can be just a few or thousands of computers! In this environment, many different users need to access (read and write) data to HDDs at the same time! What may have been an ideal solution for a desktop environment, hasn’t proven to be scalable to a server environment. For this reason, servers are usually equipped with many HDDs of different types. This ensures that files and services are accessible for all the clients as needed.

In the desktop scenario, not much administration is needed to maintain access. Administration on this scale is usually just monitoring available disk space. A great deal more is required to make certain all clients have simultaneous access to data on a server. Additionally, servers must follow specific security protocols, which also affect how storage is managed. In this environment, prevention of data-loss is crucial and shapes how storage is implemented.

What’s the solution?

The amount of planning, preparation, and administration needed to maintain just the storage aspect of servers, is staggering. For this reason, Microsoft has packaged a new set of tools in Server 2012 called Storage Pools. Storage Pools give system administrators ultimate flexibility when it comes to sorting out the storage needs of their unique environment. Simply put, Storage Pools combine the physical HDDs the server has available into generic “lumps” of storage space. From there, an administrator uses virtualization tools to carve out different types of simulated HDDs on-the-fly. These virtual drives are seen as “real” volumes to clients and applications.

This pooling of resources not only reduces administrative headaches, but also leverages the different types of HDDs to dynamically appropriate speed, performance, and capacity. This feature is called Storage Tiers. It can be configured to automatically move frequently accessed data to faster drives (SSD) while placing that which is infrequently used on slower ones. Special features can also be activated to prevent data-loss. Multiple copies of files can be mirrored on different disks within the pool. To the client, this process is seamless. For administrators, the setup is minimal.

Animation Credit: Carl Boisson

Setting up Storage Pools

If you’re running Windows Server 2012 R2, it’s as simple as adding a role, which describes a collection of related services a server can provide. Roles are usually installed alongside the pertinent tools to implement, manage, and monitor those services. To set up Storage Pools, we will need to add the File and Storage Services role:

1. Add necessary Role and Features:

  • Manage > Add Roles and Features.
This is the usual method of installing the services your server will offer.
  • From the Roles and Features Wizard, select File and Storage Services.
  • Complete the wizard.
The newly added services will now have their own node on the dashboard
The dashboard is a fast an easy way to manage the various services your server provides.

2. Prepare unused space for pooling

You’ll now want to assess and prepare the physical storage you have at your disposal. In other words, to prevent disturbing any disks that are already in use, you have to tell Server 2012 which disks you want to make available for pooling. For this step we will use Disk Manager, which is a program on most Windows computers that allows you to manage your disks.

You want to ensure the disks you plan to pool are currently unallocated, in other words, make sure they are not already being used by your computer to store data.

  • Right-click on Disks to re-size partitions, or delete volumes as needed
    *Note: Make sure your data is backed up before performing this step.
Disk Management is handy for creating and adjusting partitions (logical sections of HDDs). Notice the unallocated space has no volume name or file system.

3. Create Storage Pools

At this point, you’ve installed the necessary roles and services required for making a Storage Pool. You have also successfully converted one (or more) disk into unallocated space. You’re all set to make your first pool!

  • From the Server Manager Dashboard, File and Storage Services > Storage Pools
  • Right-click and choose “New Storage Pool…”.
You can have one storage pool, or many. This feature is very flexible.

Splash!

HDDs are intricate mechanisms of spinning platters, screws, and wires. Even SSDs, though they lack moving parts, are a complex arrangement of circuit boards, flash memory modules, and controller chips. For the sake of this guide, let’s simply imagine the storage types we’ve covered as pieces of “storage clay,” encased in boxes. Storage Pools have allowed us to remove these separate pieces from their cases and merge them into massive “storage lumps.” The end-goal is being able to mold and divide our clay as needed.

4. Create Disks

Once we’ve split-up our “storage lump,” we can place the pieces into new “virtual cases” to form virtual disks. This is how we will make our disks:

  • From the Server Manager Dashboard, right-click on your existing Storage Pool.
  • Select “New Virtual Disk…”.
  • Run the steps in the New Virtual Disk Wizard.

6. Create Volumes

Now that our “lumps” have been encased, this last process will allow us to create drives so that computers can see them.

  • Run the steps in the New Volume Wizard.
  • If you skipped past this step, or to make additional volumes:
    Right-click your existing virtual disks and and select “New Volume”.
  • Choose which disk (from your pool) you’re creating the new volume in.
  • Assign it a drive letter and name
Confirmation and results
  • Success, your computer sees your new drives!

Scalable Solutions

The Storage Pools feature is rich with options and settings to create, modify, and manage a variety of custom disk/drive types. The “hows” and “whys” of your implementation will depend largely on the needs of your particular environment. Microsoft has leveraged the benefits of different disk-types (SATA, SSD, SCSI), as well as the virtualization capabilities of its Server Operating Systems to create a uniquely flexible solution for storage. This feature can greatly reduce administrative effort without sacrificing the unique security and performance requirements of servers.

Additional Resources

We’ve only tipped the scales when it comes to storage pools. There are a variety of configuration options and implementation methods you can tailor to your needs. Below are a few links if you’d like to dive in deeper!

Links: Technical Storage Pools Guide| Technical virtualization guide |

Key Terms:
Capacity
Data loss
Disk Manager
Disk Speed
File and Storage Services
Flash memory
HDD
IOPS
OS
Partitions
Roles and Features
SATA
Scalability
SCSI
Server
SSD
Storage Pools
Storage Tiers
Virtualization
Windows 10
Windows Server 2012 R2

--

--