So let me start off by saying yes this likely sounds a bit obscure basically I need a robust free solution to replace our aging synology.

(all of about 100 users are using cloud station as a means of backing up and syncing their files) I very much dislike cloudstation and would much rather have a windows box hosting file shares and give everyone access threw pertino (our vpn solution)

I have a very low budget (less than 3k) and need somewhere around 10tb of storage space. I would like to use a OS like FreeNAS and then virtualize the actual storage appliance (perhaps a windows VM) on top of it to host the shares out of.

my main question here is "does this sound crazy?" I like the idea of taking snapshots of the file system seeing as how that's a feature of ZFS it seems like a good choice. I also really like the things it can do with de duplication and its ability to host a share as a time machine backup for our mac users so it seems like a solid choice there. Unfortunately no pertino integration for freenas currently exists so hosting a vm threw the virtual box to handle that seems like an OK option is there something I'm missing? Have you tried anything like this and if so what issues did you run up against?

Although I'm not a freenas expert i have read with interest here the opinions of several storage experts who feel it is buggy and difficult to recover in an emergency and I'm inclined to believe them. They say in addition to having bugs, the menu restricts what you can do in emergency recovery situations. They claim therefore you're better off choosing a base operating system and loading an OS ( linux or freebsd) system up yourself. Naturally, these folks forget that some of us aren't Unix experts and that part of the appeal of freenas is that they've done all this for us and made it menu easy.

Speaking for myself as much of this sounds like my recommendations, it is actually ﻿because﻿ people use FreeNAS thinking that it makes UNIX easier for them that I am so scared of it. If you give me a hard core FreeBSD specialist and he has a reason why he's willing to accept the extra risk around FreeNAS because he knows the ins and outs so well, sure, I'd let him do that. But using FreeNAS when you are not a hard core FreeBSD guy is the worst scenario and here is why....

FreeNAS makes it easy to get things up and running and into production - but hard to fix when things go wrong. That's dangerous and exactly what you don't want. You want all the effort and risk to be BEFORE going to production and as little risk as possible once you are up and running.

FreeBSD makes things harder to get up and running and into production - but easier (not easy) to fix when things go wrong. You know your configuration better, easier to get support, fewer things to break, etc.

So it is precisely because we assume that FreeNAS is being used by non-UNIX experts that FreeNAS is warned to strongly against. FreeBSD is not a good choice either, generally, both because it is not strong on storage (nor is FreeNAS) as well as being little known and difficult to learn. But comparing FreeBSD to FreeNAS, FreeBSD wins even when you dont' know UNIX well.

ZFS will allow you to create filesystems (on a per user basis, if that is what you want) and then export each of them via NFS. Here's a sample of what your filesystem would look like.

/zdata/users/user1

/zdata/users/user2 ...

etc.

Now, if you have different snapshotting/storage policies for each user, you could do a snapshot for each of the users independently. Given that each is NFS exported, you could restrict access to it for a specific set of IP addresses, and the entire storage mechanism could be abstracted by another VM that NFS mounts these filesystems.

No not quite, I would like to virtualize the entire storage appliance as a VM on top of freenas so that I have the ability to take snapshots of the FreeNAS ZFS pool the reason for virtualizing the storage appliance as a VM on top of freenas is so that I can create a compatibility﻿ later with our VPN solution they currently don't have any freebsd based solutions.

ZFS is only a utility that is common to multiple OSes - Ubuntu, FreeBSD, freeNAS, etc. Whether either of these instances is run as a VM or bare metal shouldn't have any bearing on ZFS itself. If you're using freeNAS as a VM, what hypervisor are you planning to use? In XenServer, there's pcipassthrough, that'll allow the VM to have native access to the disks. This is particularly good, as you'd want to use the ZFS RAID functionality, instead of the hardware RAID? once ZFS on freeNAS is exported (via SMB/CIFS), you plan to use a Windows VM to access/mount it, right?

I think you misunderstand me I am going to be using freenas as a hypervisor hosting a windows VM to use as the network storage appliance. you can use ZFS on linux as you mentioned (ubuntu) but its not widely supported and is more of a port than anything els I would much rather run FreeNAS seeing how it has native support and is freebsd based. I will be doing the file shares threw the windows VM so I can integrate them with Pertino and distribute that setup over WAN to all my users.

I have a very low budget (less than 3k) and need somewhere around 10tb of storage space. I would like to use a OS like FreeNAS and then virtualize the actual storage appliance (perhaps a windows VM) on top of it to host the shares out of.

Oh man, another FreeNAS case. I keep answering these instead of getting this article out about why you should never even consider FreeNAS so I keep typing the same stuff up every few hours. Basically.... FreeNAS should never be on the table. There is literally no upsides to it and lots of downsides. Article will be forthcoming.

ZFS doesn't apply to your tiny storage situation so even that doesn't seem to make sense.

Also, you never, ever virtualize on FreeNAS. Who suggested this to you?

No not quite, I would like to virtualize the entire storage appliance as a VM on top of freenas so that I have the ability to take snapshots of the FreeNAS ZFS pool the reason for virtualizing the storage appliance as a VM on top of freenas is so that I can create a compatibility﻿ later with our VPN solution they currently don't have any freebsd based solutions.

So you are planning on running VirtualBox on top of FreeNAS? This is layers on layers of bad decision making, I'm afraid.

ZFS is a good tool but doesn't apply to your needs.FreeNAS is a bad tool and should be off the table.VirtualBox, or any type 2 hypervisor, should never be used for production workloads.

And you are doing all of this because you don't want to run something that works with Pertino? That makes no sense. Just run the right thing from the beginning. There is no reason to have FreeNAS or ZFS here at all.

you can use ZFS on linux as you mentioned (ubuntu) but its not widely supported and is more of a port than anything els I would much rather run FreeNAS seeing how it has native support and is freebsd based.

That you want ZFS doesn't make sense. That you would do this crazy, unsupported stack makes even less. That ZFS is not well supported on Linux is way better than what you are attempting to do here.

This is what I would call "being weird." You are skipping simple, tried and true things to try to implement lots of lots of "it sounds cool" stuff that doesn't apply to the situation and trying to shoehorn them together in impossible ways.

FreeNAS is just a crippled version of FreeBSD. There are almost no situations where FreeBSD makes a good storage server and literally none where it should be used with virtualization. But FreeNAS should never be chosen because FreeBSD is always better for the same task. But 90% of the time when people want FreeBSD, they would be far better off with Linux as Linux is much stronger in storage.

If I wanted a solution that allowed me to snapshot the entire file system with VMs ontop of it what would you suggest? I also would like something that can do scrubbing by check-suming the files but btrfs makes me nervous I dont think its production ready yet. Keep in mind I need a 100% free solution for this as my budget is only for the hardware I was planning on getting a used or refurbished server.

Nobody suggested the idea to me it was something I saw was available in a plugin the other day on my freenas box when I updated it and virtualbox seems to be fairly stable on pc-bsd that's why I thought it might be viable.

I will be doing the file shares threw the windows VM so I can integrate them with Pertino and distribute that setup over WAN to all my users.

Just put a hypervisor on a box (HyperV, XenServer) and make a Windows VM. Done. Easy peasy.

OR....

Just use Linux instead of Windows. Pertino works just fine on Linux too.

We run Pertino on all kinds of stuff. We, too, wish it was on FreeBSD, but your desire for FreeBSD and ZFS here is, I think, causing you to miss the forest for the trees. Think at the goal level. Installing FreeBSD at any cost should not be a goal. If it doesn't support your goal, avoid it.

If I wanted a solution that allowed me to snapshot the entire file system with VMs ontop of it what would you suggest?

Every hypervisor on the market does this built in. This isn't a feature to look for, it's ubiquitous.

Every storage platform that you could consider does this too, but just like with ZFS, you should never do that because that's dangerous. It always has to be handled by the hypervisor for data integrity reasons.

I also would like something that can do scrubbing by check-suming the files but btrfs makes me nervous I dont think its production ready yet.

It's way more production ready than FreeNAS! FreeNAS is a hobby system. BtrFS is production in Suse and in use by Facebook. Doesn't get much more enterprise than that.

However, not a feature you should really be caring about, not much. And doesn't apply here because you would need to layers of extra stuff. You don't need this. It's nice, don't get me wrong, but it is a pretty minor feature that is leading you in some dangerous directions. Normal shops, including the world's biggest banks, governments, etc. don't need this.

And it doesn't apply here because once you virtualize you will only have one file on the entire system anyway!

Keep in mind I need a 100% free solution for this as my budget is only for the hardware I was planning on getting a used or refurbished server.

Can't think of any reason a penny would need to be spent here. That's not an issue. Just need to simplify what you are trying to do. This isn't a complex project, it's very simple in fact. This is a one to one deployment, easy peasy.

Step One: Pick HyperV or XenServer for the hypervisorStep Two: Pick Windows or Linux for the OSStep Three: Install Pertino, share the files.

That's it. Super simple, several choices. No need to even use a Windows license. Nothing here needs to cost anything.

Yes, I think supporting a 100 users backing up to a $3K box is highly unreasonable. I would go so far as to say trusting all that data to a cheap box might even be foolish but I realize the budget is the budget and name calling doesn't help. If I were going to attempt such an unreasonable thing I'd use qty 7 2TB drives, with 2 drive redundancy (i.e RAID6 or ZFS/Storagespaces equivalent). to create the 10TB volume. That leaves you about $2000 budget for the machine, OS, backup software, AV, RMM tools etc.

Although I'm not a freenas expert i have read with interest here the opinions of several storage experts who feel it is buggy and difficult to recover in an emergency and I'm inclined to believe them. They say in addition to having bugs, the menu restricts what you can do in emergency recovery situations. They claim therefore you're better off choosing a base operating system and loading an OS ( linux or freebsd) system up yourself. Naturally, these folks forget that some of us aren't Unix experts and that part of the appeal of freenas is that they've done all this for us and made it menu easy. My understanding is loading ZFS on Linux variants is tricky (it was originally designed for another OS).

However, given you then indicated you wanted to load a Windows VM to share the data I start thinking "why not use server 2012 storage spaces and eliminate the FreeNas ZFS layer and associated complexity? While it's true storage spaces doesn't have the install base or track record ZFS has, it allows you to have 2 drive (or n-drive) parity, along with most other ZFS features such as dedupe and even tiering if you had the budget for SSD to increase speed. And building the kluge you suggested indicates you aren't too concerned about performance anyway. Unfortunately a server version of 2012 wacks another $1000 of your budget, leaving only $1000 for the machine (But you had that expense anyway because Windows 7/8 are limited to 20 connections so I assume you weren't planning on loading a workstation OS on the VM anyway)

Nobody suggested the idea to me it was something I saw was available in a plugin the other day on my freenas box when I updated it and virtualbox seems to be fairly stable on pc-bsd that's why I thought it might be viable.

It would "work" but it's not a business process. This is a hobby system that they are talking about, for a desktop.

What you have here is a common issue in the SMB, an impedance mismatch.

On one hand, your desire for the checksumming on the filesystem is "overkill." You are looking for a feature designed for the world's largest, most demanding file servers. Not at all what you are building. It's a great feature and if it is free and comes with no caveats then sure, turn that on! But it is a trivial feature for a small host like this. Not important, not really even worth discussing. So, let's ignore that. I'm not saying it is bad, I'm saying it isn't important.

On the other hand, FreeNAS, VirtualBox, Type 2 hypervisor, layers of complexity for a simple project, not virtualizing your base, etc. are all non-business level approaches. Any one of these should have ruled out the solution. These all, in fact, fall below the home line. These are hobbyist tools or fun for a lab, but never something you would deploy seriously. So your have overkill on one hand and then look at your design as if the whole thing wasn't to be used in a business.

These things don't go together.

When you deploy FreeBSD commercially, it would always be virtualized for any production deployment which means that ZFS doesn't have that checksumming feature anyway. Which is part of what the FreeNAS crowd conveniently forget - in order for their killer features to even exist you have to treat FreeNAS like a toy and not take it seriously. Very self defeating.

"When you deploy FreeBSD commercially, it would always be virtualized for any production deployment﻿" if virtualizing negates the features of ZFS dosent that rule out FreeBSD as a good file storage solution all together is ZFS dead for production environments?

Although I'm not a freenas expert i have read with interest here the opinions of several storage experts who feel it is buggy and difficult to recover in an emergency and I'm inclined to believe them. They say in addition to having bugs, the menu restricts what you can do in emergency recovery situations. They claim therefore you're better off choosing a base operating system and loading an OS ( linux or freebsd) system up yourself. Naturally, these folks forget that some of us aren't Unix experts and that part of the appeal of freenas is that they've done all this for us and made it menu easy.

Speaking for myself as much of this sounds like my recommendations, it is actually ﻿because﻿ people use FreeNAS thinking that it makes UNIX easier for them that I am so scared of it. If you give me a hard core FreeBSD specialist and he has a reason why he's willing to accept the extra risk around FreeNAS because he knows the ins and outs so well, sure, I'd let him do that. But using FreeNAS when you are not a hard core FreeBSD guy is the worst scenario and here is why....

FreeNAS makes it easy to get things up and running and into production - but hard to fix when things go wrong. That's dangerous and exactly what you don't want. You want all the effort and risk to be BEFORE going to production and as little risk as possible once you are up and running.

FreeBSD makes things harder to get up and running and into production - but easier (not easy) to fix when things go wrong. You know your configuration better, easier to get support, fewer things to break, etc.

So it is precisely because we assume that FreeNAS is being used by non-UNIX experts that FreeNAS is warned to strongly against. FreeBSD is not a good choice either, generally, both because it is not strong on storage (nor is FreeNAS) as well as being little known and difficult to learn. But comparing FreeBSD to FreeNAS, FreeBSD wins even when you dont' know UNIX well.

"When you deploy FreeBSD commercially, it would always be virtualized for any production deployment﻿" if virtualizing negates the features of ZFS dosent that rule out FreeBSD as a good file storage solution all together is ZFS dead for production environments?

FreeBSD has never been a good file storage solution. That's always been a huge weakness of it. FreeBSD is very strong in networking, application hosting and other areas. I love FreeBSD. But storage is specifically a weak point and where you typically avoid it completely.

An old version of ZFS was used on ZFS because FreeBSD had languished with such ancient file system technology for so long. It was just a weak attempt to bring it up to 2007 standards, not to make it a storage powerhouse.

There are very specific, and rare, cases where you would still use FreeBSD for storage, but pretty much if you aren't both a UNIX and a storage specialists you would not be running it for those scenarios. It has a specific strength in really specific circumstances where you have no budget, little need for high performance, need extremely large filesystems (in excess of say 100TB) and have all the needed skills to support it. Then maybe.

And even for that use case, it is squeezed between Linux, Windows and Solaris who all cover that same ground to some degree too.