For one of my testing environments I had to install a brand new clustered SQL 2014 instance and when thinking about the steps required to proceed with the installation I did remember about the shared drives between the nodes of the cluster. I was already mentally picturing this when at one point I was asking myself a simple question: what would I use to provide the SAN storage to my lab SQL cluster?

There are a few options out there like the Starwind  Virtual San, the built-in ISCSI Target (for Windows 2008 Servers) and plenty of *nix based distributions which can offer a lot more functionalities with a very small foot print. Two of them and probably the most popular ones come on top of my mind: FreeNas and Openfiler. Since I’m currently using  Hyper-V as a host I decided instead to go with NAS4Free which ironically gave birth to FreeNAS between 2009 and 2011! Both are excellent products. In my testing NAS4Free has still an excellent compatibility and performance with Hyper-V hence my preferred choice.

The purpose of this article is to show how to install NAS4Free and how to configure iSCSI drives. Please note that the configuration settings below are for testing only and should be “tweaked” for Production environments. Also make sure to read recommendations from NAS4Free website before committing changes to your production environment.

So here we go. First of all let’s create a new VM with the following:

  • 8GB RAM (4GB are enough to run iSCSI with good performances)

  • 40GB Drive (I call it System drive)

  • Generation 1 VM (Hyper-V Host)

  • Add desired SCSI drives  in the VM configuration (optional at this stage)

Once we are ready we can simply attach the NAS4Free ISO and start the VM

 

The VM will quickly boot and load the OS. If NAS4Free is installed on a different server please make sure the network card is recognised

 

Option 1 will configure the detected network interface

 

The default LAN IP Address is 192.168.1.x/24. From previous screen we can configure this to a different IP Address with option 2 along with DHCP, Static IP address, Network Mask, Gateway, DNS and IPv6 options

I would recommend trying to ping a host to make sure the IP settings are configured properly. Next step is to proceed with the local installation of the NAS4Free on the “system” disk. From the menu is option 9. At this point we can start installation with option 5. Depending on your local hardware different options can be selected. In this case since a VM is used the idea is to have a small server to provision storage for other VMs by configuring more virtual drives later on or by attaching the physical storage available on the Host

 

The installer will show the partitions will be created for OS, SWAP and DATA. Please note that DATA partition will actually NOT be used in this installation to configure storage for the VMs. Later on I will add dedicated drives (individual vhdx) that will be used to provision the iSCSI storage for the VMs. So really no need to start with a big “system” drive

Let’s accept the detected CD where the ISO file is mounted

Let’s accept the detected drive the OS installation

20GB for OS partition should be enough to also download and install future packages

16GB partition for the Swap file it is surely enough. I always use the x1.5 size minimum of Physical RAM on the VM. In this case I have used x2.0 as space is not an issue. Actually for iSCSI drives a minimum of 1GB RAM is required to run smoothly. Ideally you want to follow the rule of 1GB of RAM per TB of storage. Considering I won’t be using this much of storage in my testing VM I can still use the extra RAM for other operations like Deduplication and Compression

The installer will now proceed with the installation on the local drive

We now exit the installation and re-enter in the console mode

From the console mode let’s go for option 10 and allow any host (for now!) to access the Web GUI. This can be done by disabling the Host allow policy

At this point we can browse the Web GUI directly at the chosen IP address. By default user admin and password nas4free

NAS4Free homepage presents essential stats and info about resources

From System > General let’s configure the Hostname, Domain and secondary DNS

It is now time to start adding the drives we want to use a provisioned storage for the VMs by going into the Disks > Management page. As of yet no available disk can be used based on our installation. So for this purpose I will create additional SCSI disks attached to the VM using the virtual machine configuration editor

In the configuration settings for the NAS4Free VM I have now added 3 disks: Quorum, SQL Data and SQL Logs without shutting down the VM

By going back to the Disk > Management menu and adding a new disk I can now see my 3 disks listed

I will create 3 disks in NAS4Free by leaving the default settings. After each change it is necessary to click on the button Apply Changes to save the configuration

Next step is to format the drives. Best is to use the ZFS Storage Pool Device as File System 

After applying changes the screen shows 3 disks available to NAS4Free to use

Next step is to create a Virtual Device. A Virtual Device in NAS4Free can group several disks and offer several striping options. In my scenario I will create 1 VD per 1 Disk. So I will end up with 3 Virtual Devices

The table below shows the configure Virtual Devices in NAS4Free

Now from the Disk > ZFS > Pools > Management I need to create a VD Pool of disks that I will then use as a iSCSI targets. This completes the first part for the installation and configuration of NAS4Free

 

In the next article I will show the steps to configure the iSCSI with NAS4Free and how to install them on the SQL server member of the SQL cluster

Posted by Michele Domanico

Passionate about Virtualization, Storage, Data Availability and Software Defined Data Center technologies. The aim of Domalab.com is sharing with the Community the knowledge and experience gained with customers, industry leaders and like minded peers. Always open to constructive feedback and new challenges.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s