Volumes and Shares
We ran our performance tests on the FreeNAS Mini Plus with four Western Digital Red 3 TB disks (WD3000FYYZ.) However, those disks had an appointment with another NAS, so I removed them and replaced them with three Seagate Barracuda 500 GB disks and created a 1 TB ZFS RAIDZ1 array. Since I had a fourth drive bay, I also threw in a Seagate Barracuda 120 GB disk and configured it as a ZFS Stripe.
Adding disks and making them functional was extremely quick—we're talking minutes. First a volume has to be created by selecting the disks to include in the volume and the volume options. After clicking Add Volume, there was a brief period of disk activity and the volume then appeared in the menu. The screenshot below is from adding the 120 GB disk as a ZFS Stripe.
Adding a volume
Once the volume is created, I found making it available to a Windows PC was simply a matter of creating a Windows Share and enabling the CIFS service. There are nice examples on adding an authenticated and anonymously accessible Windows share in the FreeNAS User Guide. I had no problem mapping a Windows 7 and Windows 8 PC to both the shares I created on the Mini Plus.
FreeNAS supports Apple (AFP), UNIX (NFS) and Windows (CIFS) shares. In addition to testing Windows shares, I also created an Apple share and was able to access it from an Apple MacBook. FreeNAS supports Apple Time Machine. Following the handy example in the FreeNAS User Guide, I was able to set up a Time Machine backup from an Apple MacBook to the Mini Plus. The screenshot below shows my MacBook as Time Machine is backing up about 100 GB of data to the FreeNAS.
Time Machine backup to FreeNAS mini
FreeNAS also support Snapshots for backing up multiple versions of files. Snapshots can be created on a one-time basis with a simple click or on a scheduled basis.
Deduplication is a FreeNAS feature that I found interesting. With deduplication enabled, duplicate data is removed and only unique data is stored and shared among files. Thus, it has the potential to free up disk space.
In reality, deduplication is quite memory intensive. FreeNAS recommends 5 GB of RAM for every 1 TB of data to be deduplicated. Obviously, this isn't all that practical on a Mini Plus with a max capacity of 16 GB RAM if it has more than 3 TB of storage. The FreeNAS user guide has many warnings about the memory requirements for deduplication and even goes so far to say that you can probably achieve similar results through file compression.
Out of curiosity, I tried testing deduplication and
couldn't get it to work initially thought it didn't work. I tested this feature by enabling deduplication and then copying over two copies of a folder with 10.7 GB of data onto the Mini Plus. I changed the name of one folder so the NAS would have to examine the folder contents to find the duplicate data. If deduplication worked, I would have expected the amount of used space on the NAS to go down by the amount of duplicate data removed. However, I never saw a change in the used space on my Mini Plus volumes with deduplication enabled.
Updated 7/22/2013 - Deduplication works
After the review posted, the folks at iXsystems provided some clarity on the deduplication feature. In fact, deduplication does work on the FreeNAS Mini Plus, as long as you take into account two things.
First, you must enable deduplication on the volume before you copy files to it. And second, the results of deduplication do not show up as reduced Used space on your drive. Instead, they show up as increased Capacity on your drive.
Take a look at the screenshots of before and after I copied 10.7 GB of duplicate data to a FreeNAS volume. The Before shot, on the left, shows the FreeNAS volume with 32.1 GB of Used space and 126 GB of Capacity. The After shot, on the right, shows the FreeNAS volume with 42.8 GB of Used space and 137 GB of Capacity. Free space is nearly the same before and after, which is the value of deduplication. However, your volume will appear to have more Used space and more Capacity.
You can further examine the value of deduplication on your drive with the command zpool list from the FreeNAS comand line shell. The output below shows the same volume as above, with ALLOC equal to actual used space, which is 12.3 GB in this case. (I copied the same 10.7 GB of data to my drive four times before I figured this thing out.) Note also the DEDUP value of 3.64x, indicating that deduplication had reduced used space on this drive by a factor by 3.64x!
iSCSI is supported by FreeNAS as well. Setting up iSCSI connections involves quite a few steps, on both the FreeNAS and the client. Following the FreeNAS User Guide, I successfully set up a 20 GB iSCSI drive on a Windows 7 Pro PC connected to the FreeNAS Mini Plus. Shown below is a screenshot from my PC. As you can see, the drive listed on the top is a FreeBSD iSCSI Disk.
Access to the FreeNAS Mini and Mini Plus GUI and files can be permitted anonymously, via guest accounts or via individual user accounts stored on the FreeNAS' local user database. Users can be assigned their own storage space, referred to as a ZFS dataset, or users can be combined into groups and assigned a ZFS dataset. User accounts can also be managed via an OpenLDAP or Active Directory server.
The FreeNAS Mini Plus, with its faster processor, is also capable of full disk encryption (AES-NI). Volumes created on the FreeNAS Mini Plus with encryption enabled can only be read by another FreeNAS system with the key you created for that volume. Another nice feature of disk encryption is disks can be disposed without erasing them as long as the key is no longer accessible.
Monitoring and Reporting
Set up the Mini with an SMTP account and it will send you daily emails with disk status and health updates. FreeNAS provides 15 different charts showing utilization graphs of CPU, memory, disk space, and network interfaces. Below is a an example report showing network traffic levels over the physical interface on the Mini Plus.
The motherboard on the Mini Plus has an onboard 10/100/1000 Intel NIC (Network Interface Card.) A second PCIe 2.0x16 NIC can be added, which can be utilized independently or teamed with the onboard NIC in a LAG, as the device supports Link Aggregation Control Protocol (LACP.)
802.1q VLANs are also supported. I created a VLAN interface on the Mini Plus and configured my network switch with an untagged and tagged VLAN on the Mini Plus' switch port. As you can see from the below, the VLAN interface on the Mini Plus (vlan3) was enabled and received an IP address from the DHCP server on vlan3, which is in a different VLAN and subnet than the physical interface (em0). As further validation of VLAN functionality, I was able to access the Mini Plus from both networks.