FreeNAS noob questions

jimphreak

[H]ard|Gawd
Joined
Nov 27, 2012
Messages
1,714
Ok so this is my first time using FreeNAS. I have a 6-drive server with FreeNAS installed on a USB drive.

First off I need some clarification on the difference between zpools, vdevs, and volumes. Within the Storage setting is the Volume Manager. Here I'd like to create a 6-drive RAIDz2 volume. Is the word volume here referring to a zpool or a vdev? I'm confused because what I've read on FreeNAS' forum is that a zpool is referred to as a volume but if this is creating a zpool how do you create vdevs within that zpool?

Ok with that noob question out of the way...

I have 6x3TB drives installed on my server. I'd say at least 60-70% of that space I'd like to dedicate to my media storage as I already have 2.5TB of media ready to copied over and this amount will grow quickly over the next 1-2 years. I also would like to have at least 1-2TB of space for VM snapshots. My most important VM (Media server) will need multiple shares (one for access to all my media and one for snapshot backup). I will also want to store my personal files (H Drive redirection) from 2-3 Windows PCs and was thinking I could either create a separate dataset for that or store those files in the same dataset as my media. All systems that will be accessing my FreeNAS box are Windows operating systems.

So to summarize I'll be using FreeNAS for the following:

1. Media storage access to VMs (Media Server VM, Torrent VM)
2. Personal documents storage (folder redirection of H Drives from 2-3 Windows PCs)
3. VM snapshot backups
4. Windows Image backups


I'm open to suggests for how best to setup my datasets and shares as this is the first time I'll be using VMware in a production type setup and I'm not 100% sure as to how to set this all up in the most efficient way.
 
A pool (or ZFS pool or zpool) is a storage volume that shares space with all filesystems contained. A pool contains at least one 'vdev' which is a virtual device.

It is not that complicated. Let's try an example:

You have one pool named 'tank' and it contains two vdevs. Both vdevs are like 'RAID-arrays' and can be: single, mirror, raid-z1/2/3. In my example you can have two vdevs each consisting of 2 disks in a mirror (RAID1) configuration. That means 4 disks with 2 disks of usable storage space.

Since the pool contains both vdevs, the free space of both vdevs is available under one unit. You can have 20 vdevs and all free space is shared under one umbrella. So the pool is like where you store your data and can consist of multiple disks in various configuration. The vdev is one part, one 'array' if you will. A vdev can just be a single disk without any RAID or redundancy.

A RAID0 in ZFS is actually multiple vdevs all consisting of one disk.

Some examples:

Simplest ZFS pool:
- vdev1 = single disk

Simple mirror pool:
- vdev1 = mirror of 2 disks

Standard pool:
- vdev1 = raid-z of 5 disks

Large pool
- vdev1 = raid-z2 of 6 disks
- vdev2 = raid-z2 of 6 disks

Mirrored pool (RAID0+1)
- vdev1 = mirror of 2 disks
- vdev2 = mirror of 2 disks
- vdev3 = mirror of 2 disks
- vdev4 = mirror of 2 disks

Striped (RAID0) pool with 3 disks:
- vdev1 = single disk
- vdev2 = single disk
- vdev3 = single disk

Hope those examples are useful.

So a pool is what combines all free space into one unit, consisting of at least one vdev and each vdev consists of at least one disk in a certain configuration. Pool -> vdev -> disk.
 
A pool (or ZFS pool or zpool) is a storage volume that shares space with all filesystems contained. A pool contains at least one 'vdev' which is a virtual device.

It is not that complicated. Let's try an example:

You have one pool named 'tank' and it contains two vdevs. Both vdevs are like 'RAID-arrays' and can be: single, mirror, raid-z1/2/3. In my example you can have two vdevs each consisting of 2 disks in a mirror (RAID1) configuration. That means 4 disks with 2 disks of usable storage space.

Since the pool contains both vdevs, the free space of both vdevs is available under one unit. You can have 20 vdevs and all free space is shared under one umbrella. So the pool is like where you store your data and can consist of multiple disks in various configuration. The vdev is one part, one 'array' if you will. A vdev can just be a single disk without any RAID or redundancy.

A RAID0 in ZFS is actually multiple vdevs all consisting of one disk.

Some examples:

Simplest ZFS pool:
- vdev1 = single disk

Simple mirror pool:
- vdev1 = mirror of 2 disks

Standard pool:
- vdev1 = raid-z of 5 disks

Large pool
- vdev1 = raid-z2 of 6 disks
- vdev2 = raid-z2 of 6 disks

Mirrored pool (RAID0+1)
- vdev1 = mirror of 2 disks
- vdev2 = mirror of 2 disks
- vdev3 = mirror of 2 disks
- vdev4 = mirror of 2 disks

Striped (RAID0) pool with 3 disks:
- vdev1 = single disk
- vdev2 = single disk
- vdev3 = single disk

Hope those examples are useful.

So a pool is what combines all free space into one unit, consisting of at least one vdev and each vdev consists of at least one disk in a certain configuration. Pool -> vdev -> disk.

Thanks for taking the time to explain all that. However that is not where I was confused. It was really just the settings in the FreeNAS console itself. Since you are creating "volumes" in the Volume Manger and not creating "vdevs" (even though in reality you are) I got a little confused. Since I have 6 disks in a RAIDz2 configuration that means I have a zpool consisting of one RAIDz2 vdev correct?
 
Correct. It is rare to explicitly create a vdev only unless you are expanding the pool by adding disks. I wish they called it a pool and not a volume :(
 
Ah, how nice to distort the names which ZFS uses by itself. :-(

You must be among many others who were confused about this, jimphreak. But at least you know it's not your fault. :)
 
Back
Top