Get a Quote     (408) 943-4100               TrueNAS Discord      VendOp_Icon_15x15px   Commercial Support Toggle between Light and Dark mode

Creating Storage Pools

  6 minute read.

Last Modified 2022-12-09 09:08 -0500

TrueNAS uses ZFS data storage pools to efficiently store and protect data.

Storage pools attach drives organized into virtual devices called VDEVs. ZFS and TrueNAS periodically review and heal when discovering a bad block in a pool. Drives arranged inside VDEVs provide varying amounts of redundancy and performance. ZFS and VDEVs combined create high-performance pools that maximize data lifetime.

Review Storage Needs

We strongly recommend that you review your available system resources and plan your storage use case before creating a storage pool.

  • Allocating more drives to a pool increases redundancy when storing critical information.
  • Maximizing total available storage at the expense of redundancy or performance entails allocating large-volume disks and configuring a pool for minimal redundancy.
  • Maximizing pool performance entails installing and allocating high-speed SSD drives to a pool.

Determining your specific storage requirements is a critical step before creating a pool.

Creating a Pool

To create a pool using the Pool Manager you:

  1. Enter a name.
  2. Move disks to a data VDEV.
  3. Add any other VDEV to the pool you want to include and then add disks to them.
  4. Click Create

You access the Pool Manager from the Storage Dashboard. Click Storage on the main navigation panel on the left of the screen.
Click Create Pool to open the Pool Manager screen for new pools.

CreatePoolPoolManagerScreen

If you already have a pool created on your system you can use either the Create Pool button at the top right of the screen or click the Add To Pool button on the Unassigned Disks widget to create a new pool.

AddToPoolWindow

Naming the Pool

First, enter a name for the pool using up to 50 lower case alpha-numeric and permitted special characters that conform to ZFS naming conventions. The pool name contributes to the maximum character length for datasets so it is limited to 50 characters.

You cannot change the name of the pool after you click Create!

Encrypting the Pool

Next, decide if you want to encrypt this pool. Datasets inherit encryption from the pool.

TrueNAS offers several encryption algorithms to maximize security. However, encryption also complicates data retrieval and risks permanent data loss! Refer to the Encryption article for more details and decide if encryption is necessary for your use case before setting any Encryption option.

Adding Disks to the VDEVs

Next, add disks to your primary data VDEV. A data VDEV is the standard VDEV for primary storage operations. A data VDEV configuration typically affects how the other types of VDEVs get configured.

All pools must have a data VDEV. You can add as many VDEV types (cache, log, spare, etc.) as you want to the pool for your use case but it must have a data VDEV.

The Available Disks table lists all available disks detected on the system including disks for exported pools.

Warning: USB-connected disks might report their serial numbers inaccurately, making them indistinguishable from each other.

Disks with non-unique serial numbers do not populate the Available Disks section until you select Show disk with non-unique serial numbers.
TrueNAS SCALE does not support adding multiple data VDEV layouts (or types) in one pool, for example a mirror data VDEV and a RAID data VDEV in the same pool. Create a new pool when a different data VDEV layout is required. For example, pool1 has a data VDEV in a mirror layout, so create pool2 for any raid-z VDEVs.

We do not recommend mixing disks of different sizes in a VDEV. If you do, you must Force the action and override the One or more data vdevs has disks of different sizes error.

CreatePoolWithMixedSizeDisks

You must then confirm you understand the warning before you can continue.

CreatePoolWithMixedSizeDisksWarning

You can add disks to the data VDEV manually or click the Suggest Layout button and allow TrueNAS to review all available disks and populate the primary Data VDevs with identically sized drives in a configuration balanced between storage capacity and data redundancy. If you don’t want to use the suggested layout, click Reset Layout to clear the data VDEV layout and move the disks back to the Available Disks list.

To manually add disks, select the checkboxes to the left of each disk you want to add and then click the   to the left of the data VDEV to move the disks over. See About Data VDEV Layouts or the Pool Manager Screen or more information on data VDEV layouts.

Next, if you want to add another type of VDEV, click Add Vdev and select the VDEV type from the options. Each VDEV type stores data or enables unique features for the pool. For more details on VDEV types and data VDEV layouts see the Pool Manager Screen article.

If you have enough disks of the same size available, you can duplicate the data VDEV.

Click Create to add the pool.

Duplicating a Data vdev

To duplicate a data VDEV, click Repeat First Vdev. If disks of equal size are available, the Repeat First VDEV button opens a window pre-populated or where you enter the number of additional data VDEVs to create.

The dialog displays information on the data VDEV layout, the storage size of the VDEV, and the number of disks used and remaining for the VDEV you are repeating.

RepeatDataVDEVWindow

Click Repeat Vdev to create and populate a duplicated data VDEV. Another VDEV with an identical configuration is called a mirror of VDEVs.

If you add more disks of the same size to your system, you can add another duplicate data VDEV.

Don’t have multiple data vdevs with different numbers of disks in each VDEV. This complicates and limits the pool capabilities.

About Data VDEV Layouts

You can add a data VDEV to a pool in one of several layouts.

A Stripe VDEV has each disk storing data. A stripe requires at least one disk and has no data redundancy. To create a stipe VDEV you must select Force to activate the Create button on the Pool Manager screen.

Never use a Stripe VDEV to store critical data! A single disk failure results in losing all data in the vdev.
A Mirror VDEV stores on both disks, data is identical in each disk. A mirror VDEV requires at least two disks, has the most redundancy, and the least capacity.
A RAIDZ1 uses one disk for parity while all other disks store data. A RAIDZ1 requires at least three disks.
A RAIDZ2 uses two disks for parity while all other disks store data. A RAIDZ2 requires at least four disks.
A RAIDZ3 uses three disks for parity while all other disks store data. A RAIDZ3 requires at least five disks.

The Pool Manager screen suggests a VDEV layout from the number of disks added to the VDEV. For example, if you add two disks, TrueNAS automatically configures the VDEV as a mirror. The total available storage is the size of one added disk while the other disk provides redundancy.

Related Content

Related VDEV Articles

Related Storage Articles