Top Picks for FreeNAS HBAs (Host Bus Adapters)

FreeNAS is a FreeBSD based storage platform that utilizes ZFS. The fact that it uses a popular enterprise file system and it is free means that it is extremely popular among IT professionals who are on constrained budgets. At STH we test hundreds of hardware combinations each year. From this experience, we are going to keep a running log of the best FreeNAS hardware components. We are going to focus this guide on FreeNAS servers with under 30 storage devices and will periodically update the listing.

With FreeNAS using ZFS as well as effective storage tiering using SSD and RAM caches, many users will seek to create a large capacity pool. We generally suggest using your motherboard’s chipset SAS and SATA controllers first as those are the least expensive ports and often among the best performing and lowest power. Some platforms have only 6, 8 or 10 chipset ports which are not enough for many storage applications. As a result, the number of hard drives and solid state drives often exceeds motherboard ports. At that point, it is time to look at add-in cards to increase the number of available ports in a system.

As a quick note, we are going to be updating this for TrueNAS Core in the near future.

Top Picks for FreeNAS HBAs

Our general guidance is to use the newest and highest port count HBAs you can find. Most HBAs on the market these days are SAS capable. Skip anything that is SAS1 only. That includes chassis with SAS1 expanders as well. When using SATA hard drives with SAS HBAs, you want at least a SAS2 generation part (e.g. the LSI SAS2008 controller.) Previous generations of cards also had issues with larger hard drives so stick to newer controllers. At STH, we note onboard HBAs including their controllers in our motherboard reviews.

LSI SAS HBA Chips to Look For

Here is a list of the LSI SAS HBA chips you should look out for in order of desirability:

  1. SAS 3200 (SAS 3224 and SAS 3216)
  2. SAS 3008
  3. SAS 2308
  4. SAS 2008

Anything older (e.g. 1068) skip at this point. They are not SAS 2 6.0Gbps cards and sometimes have issues with larger drives.

The SAS 2008 is an interesting case. It is by far the most recommended HBA for FreeNAS. Despite the SAS 2008’s age, it is still considered a top HBA. The primary issue with the SAS 2008 is speed. It was designed in a time where hard drives dominated. It simply does not have the I/O performance to handle arrays of even modern consumer SSDs.

The new SAS 3200 series controllers have the least testing time on them. For arrays of 4-8 drives getting SAS 3008 HBAs is likely more economical. For larger arrays or where PCIe slots are limited, the new HBAs make sense.

Microsemi / PMC-Sierra / Adaptec SAS HBAs

Generally, the recommendation for HBAs is to use the LSI series of HBAs as they are the most widely used. The newest generation of Adaptec 1000 series HBAs is now out but FreeBSD is not on the driver support page (last checked 2016-09-17). Given that pricing is comparable to LSI offerings, get LSI. We did test an Adaptec 1000-8i adapter in our lab’s ZFS test bed and it causes the server not to boot. Following recommendations from search results yielded no fix. Stick with LSI SAS controllers. Leave the Adaptec HBAs to Windows, VMware, Citrix, and ZFS-on-Linux servers.

Internal HBAs

Internal SAS HBAs for FreeNAS generally fall into two categories based on their connector types. SFF-8643 is the newer SAS3 connector on LSI’s 12.0gbps controller cards. SFF-8087 is the older connector found on SAS1 (3.0gbps) and SAS2 (6.0gbps) generation cards.

SFF-8643 Connector HBAs

For larger systems where you will need at least 16 HBA ports, get the SAS 3200 generation cards. If you only require 8 or fewer ports, get the SAS 9300 generation cards.

  1. Best: SAS 3200 generation – LSI SAS 9305-16i / 9305-24i
  2. Good: SAS 3000 generation – LSI SAS 9300-8i

SFF-8087 Connector HBAs

  1. Good: SAS 2308 generation – LSI SAS 9207-8i
  2. Good (older): SAS 2008 generation – LSI SAS 9211-8i

External HBAs

What happens when you need to have more than one chassis? Perhaps you have purchased a SAS expander disk shelf (please ensure it has a SAS2 or SAS3 expander) and need to connect it to the main controller. Another scenario is that you need more space but want to continue using a single head node. In those cases, you will want a HBA with external ports. As with internal ports, there is a 12.0gbps SAS3 connector (SFF-8644) and a  6.0gbps SAS2 connector (SFF-8088.) You can get adapter cables but we suggest using the appropriate HBA in the first place. If you are unsure what you will need in the future, get a 12.0gbps SAS3 external controller.

SFF-8644 Connector HBAs

For larger systems where you will need at least 16 HBA ports, get the SAS 3200 generation cards. If you only require 8 or fewer ports, get the SAS 9300 generation cards.

  1. Best: SAS 3200 generation – LSI SAS 9305-16e
  2. Good: SAS 3000 generation – LSI SAS 9300-8e

SFF-8088 Connector HBAs

  1. Good: SAS 2308 generation – LSI SAS 9207-8e
  2. Good (older): SAS 2008 generation – LSI SAS 9200-8e / SAS 9200-16i

Internal and External

Every so often there will arise a need to get cards that mix internal and external connectors. For example, if one wants the ability to use an external disk shelf but still requires four additional internal ports. We use one of these cards in a small FreeNAS system. In LSI naming convention you will see the last portion of the part number have both an i and an e with numbers preceding the letters. This tells us the port counts. For example, our test system uses a LSI SAS 9300-4i4e. That means it is a SAS 3008 based card that has four internal (4i) and four external (4e) ports. Four ports map to one physical connector so there will be one SFF-8643 (internal) and one SFF-8644 (external) port to use.

RAID Cards

Skip them.

No really, skip them.

For ZFS, you do not need a heavy RAID engine since parity is managed in software running on CPUs. They introduce another layer of complexity into the system that is unnecessary. They have onboard RAM that uses additional power. Finally, they can introduce additional steps to even get the drives recognized in FreeNAS. Simplify your experience and do not use RAID cards, you want HBAs. A key tip is to look for onboard RAM amounts. If you see a SAS card listed with 256MB, 512MB, 1GB or similar cache, you do not want it.

SAS HBAs from Other Vendors

At this point, the supply of LSI cards is enormous. Both in the primary and secondary markets. That makes it easy to purchase replacements quickly. Furthermore, most of the online FreeNAS documentation is using either chipset or LSI controllers. There is one small exception, the Marvell SE9230 and SE9172 SATA controllers. We were the first website to review the motherboard that the FreeNAS team ultimately uses in their desktop systems (see ASRock Rack C2750D4I Review.) We have heard that the FreeNAS team did make updates for those controllers so that they will work better in FreeNAS. Therefore cards based on those controllers should be potential options. In fact, our office FreeNAS system uses this motherboard. Other than that exception, we would strongly suggest sticking with LSI controllers listed above.

A Word on SAS Expanders

We know of quite a few readers who in 2018 are still looking to deploy FreeNAS systems with SAS-1 / SATA II based SAS expanders for SATA hard drives. The SAS2 and SAS3 expander infrastructure is significantly more mature to the point that we no longer recommend SAS-1 based expander products or even older generation SAS products. This is a case where you will be happy you spent an extra $100 on a better solution.

You can see more of our FreeNAS Buyer’s Guides here.

Last updated 2018/09/17