Migrating from FreeNAS to Proxmox and need advice please.

Aug 17, 2020
23
1
8
89
I'd like to migrate from FreeNAS to Proxmox but I'm having a few problems with getting my head around the Proxmox way of doing things, having spent years using FreeNAS (most notably, I'm struggling with how various storage related things are handled). I'm also not entirely sure how best to utilize my hardware. Any advice in that regard would be appreciated.

My hardware is as follows:

Disks / Storage:
6x 10TB Seagate Ironwolf NAS​
  • These Ironwolf disks are my existing RAIDz2 pool from my FreeNAS server.
  • I'd like to be able to jusst import the pool and be done with it... I would rather not have to make any major changes to it in other words.
  • I'd like to maintain the ability to connect the pool to a FreeNAS box (feature flags permitting) should the need ever arise.
1x 250GB Samsung 830 SSD​
2x 2TB WD Red​
1x IBM M1015 HBA (flashed to IT mode)​
Server Hardware:
CPU: AMD 2700X​
Mobo: ASRock X470D4U​
RAM: 2x 32GB Samsung ECC RAM​
Hardware I will be getting soon:
Intel I350-T4 Quad Port NIC​
  • I'd like to pass the NIC through to a pfSense VM, that would be used exclusively as way of preventing familial pains in the neck... specifically, as a quick to get up an running (or even failover) backup for my primary pfSense box (that's running on bare metal), in the event that my pfSense box becomes and ex-Parrot dies.
2x 500GB ADATA XPG SX8200 Pro NVMe SSDs​
  • I know that I'm unlikely to see much benefit from NVMe vs a couple of 2.5" or M.2 Sata disks but bizarrely, the SX8200 Pro's are close enough price wise (on offer) to make them a no brainer. My mother board also has 2x M.2 slots, and I'd rather keep as many SATA slots available as I can.

One thing to note before I go any further is that I have a second server that is running FreeNAS. I use solely as a backup for the data on my primary server. I do not, and have no desire or intention to, migrate it to another OS or use it for any other purpose than as a backup target and, in the event that something goes wrong with my primary server, as an emergency stand-in for my soon to be Proxmox server. Which is why It's an important requirement for me that, ZFS feature flags allowing, I'm able to reconnect the existing RAIDz2 pool to the backup FreeNAS server, should the need arise.

Here's my current plan for the using disks on Proxmox:
250GB Samsung 830​
  • I'd use the 250GB 830 as my boot device and if possible, for running select Containers and VMs (that would benefit from the extra speed... or perhaps just as the location for storing application databases).
  • In the near future, I'd like to buy a couple of NVMe disks (such as the SX8200 Pro's), ZFS mirror them, and use them to replace the Samsung 830 disk as my boot device(s) / Container and VM disk(s).
2x 2TB WD Reds​
  • I'd format the disks to ZFS and mirror them. They'd be used for running less intensive Containers and VMs, for storing the library of ISO and template files, and for storing data that I doesn't need to be stored long term... incomplete torrents for example (before they are moved to my storage pool).
6x 10TB Seagate Ironwolf NAS​
  • Currently formatted as a ZFS RAIDz2 vdev called "tank". They are my existing FreeNAS pool and I want them to remain unchanged. They will be used for long term storage and, unlike the 2x 2TB disks, "tank" will be replicated/backed up to my secondary FreeNAS server.
The Questions:

  1. Does the above hardware setup/disk topography look okay?
  2. Am I correct in thinking that it is possible to use the boot disk for running Containers and VMs from?
  3. Further to question 2., if it is possible, is it considered bad practice?
  4. Should I create a Container for creating network shares (SMB, NFS and WebDAV possibly) or should I just do it on the host?
  5. A lot of tutorials, both text and video based, when talking about selecting the storage location for ISOs, Templates, VMs, Containers etc. Say something to the effect of "select such and such a disk". I also see talk of quotas. To me (and I know I'm probably wrong), it sounds like you dedicate an entire disk for individual storage purposes or each purpose has something akin to a ZFS dataset. A storage location that is essential a separate filesystem to the rest of the actual physical disk or pool of disks. Could someone please clarify this point?
  6. In FreeNAS, adding storage mount point to a Jail or Plugin, is as simple as going to the right page in the WebGUI, selecting the path to the dataset on your pool that you wish to share, and then selecting the path to where you want to mount it within the Jail. The Jail is then able to access the contents of the dataset, including and child datasets. You can mount the same dataset to multiple Jails and/or Plugins. Say I created an Plex Container on Proxmox... how would I mount my "tank/Media/Movies" dataset to "root/Plex Media Server/Media/Movies"?
    • The "root/Plex Media Server/Media/Movies" is a partial path to one of the possible mount point location within the FreeBSD / FreeNAS version of Plex. It may be different on a *nix based system.






 
Hi
Does the above hardware setup/disk topography look okay?
The HW itself looks ok. But in this scenario, you have to be careful where disks are connected.
If you like to use the tank in VM (FreeNAS) you should pass-through the HBA. But this also means that all disk on this controller belongs to the VM.

  1. Am I correct in thinking that it is possible to use the boot disk for running Containers and VMs from?
  2. Further to question 2., if it is possible, is it considered bad practice?
You can do this and it is OK.
Generally, I prefer to isolate the VM/CT data from the root disk, because it is easier to reinstall and the io of VM/CT and OS are separated,

Should I create a Container for creating network shares (SMB, NFS and WebDAV possibly) or should I just do it on the host?
I would use a container as long as you need no NFS. NFS is tricky when you use the NFS-Kernel server.


A lot of tutorials, both text and video based, when talking about selecting the storage location for ISOs, Templates, VMs, Containers etc. Say something to the effect of "select such and such a disk". I also see talk of quotas. To me (and I know I'm probably wrong), it sounds like you dedicate an entire disk for individual storage purposes or each purpose has something akin to a ZFS dataset. A storage location that is essential a separate filesystem to the rest of the actual physical disk or pool of disks. Could someone please clarify this point?
It is not necessary to separate the different types. In a home environment, it makes no sense and in Enterprise you have this anyway.
But the reason for this the different performance needs of the types.
So CT/VM need fast storage because the service should run fast.
Backup/ISO can be slow Storages.

In FreeNAS, adding storage mount point to a Jail or Plugin, is as simple as going to the right page in the WebGUI, selecting the path to the dataset on your pool that you wish to share, and then selecting the path to where you want to mount it within the Jail. The Jail is then able to access the contents of the dataset, including and child datasets. You can mount the same dataset to multiple Jails and/or Plugins. Say I created an Plex Container on Proxmox... how would I mount my "tank/Media/Movies" dataset to "root/Plex Media Server/Media/Movies"?
  • The "root/Plex Media Server/Media/Movies" is a partial path to one of the possible mount point location within the FreeBSD / FreeNAS version of Plex. It may be different on a *nix based system.
The Jails of BSD are in Linux Containers. And yes they can also have shared mountpoints.
see https://pve.proxmox.com/wiki/Linux_Container
 
  • Like
Reactions: The Corpse of Elvis

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!