Re-doing Network with XCP-NG


I watch your youtube content constantly because of freenas and xcp-ng. Great Stuff! I have a couple of questions that I think your advice is very wanted and appreciated about.

I used to work for MSPs and now im adventuring off into my own Internal SysAdmin role for a client and I want to re-do their systems and use XCP-NG instead of hyper-v and Freenas as the backup solution for on-site and off-site. These VMs will host windows shares and programs.

One of my questions is:
What is the best way to setup XCP-NG VMS and their storage?

#1 - Use XCP-NG to host the VMs and their storage, and use XO to backup the VMs to freenas and (robocopy or syncthing) to sync windows shares for file level backups to freenas, then snapshot the VMs and Windows shares

#2 - Use XCP-NG to host the VMs, then Freenas to create the Windows Shares (or ISCSI drive), then use XO to backup the VMs (Initial and Deltas) to freenas and create the snapshots of both in freenas

#3 - Use Freenas the create ISCSI drives for XCP-NG for all the VMs and their storage as well as windows shares, and use freenas to create snapshots of them?

Freenas will be the on-prem backup and Im going to connect encrypted cloud backup service to Wasabi for off-site encrypted backups.

I just wanted to know your opinion or anyones opinions as well on the best setup. Im going to use NVMe SSDs for the storage drives as they have the smallest footprint and 5-year warranty. They will of course be setup with RAID-Z file systems so the writes are minimized as data is spread across the drives.

I just dont want to invest in one solutions when something else easier could be acheived for what I want.

I will be also be moving the AD to a linux based controller like Zentyal, and using RSAT to manage GPOs and things to avoid needing CALs and I will only need to use a windows 10 computer to host quickbooks.

1 Like

Option #2. Host the OS VM’s in XCP-NG and use FreeNAS for the shares. This way when you are backing up or resotring the whole VM it will be much faster as you are only dealing with the OS.

FreeNAS for file storage makes sense because you can use the ZFS snapshots to making keeping file revisions quick and efficient.



Would it be best to use SMB for the shares or ISCSI? Or ISCSI for program data and SMB for user shares?

If you don’t mind setting up FreeNAS with Active Directory, you can use it for the file shares. If you are using Windows and want all the features that Windows has to offer, present the storage as iSCSI to Windows.


Just curious – where are you backing up your ZFS snapshots?

I replicate them to another FreeNAS box

I actually plan on adding freenas to AD regardless for better usability. But im curious as to the features you talk about with ISCSI and windows compared to windows shares?

I have similar scenario where I need both VMs and file server, but on a single server.

I’m currently running this setup on a CentOS server using Samba + KVM but I’d like to move to a XCP-ng or FreeNAS solution.

Currently, PC and Mac files on the network are sync’d to the Samba shares and the shares are backed up offsite using Borg Backup running on a VM. Macs are also backed up via TimeMachine to Samba shares.

If I run XCP-ng on the server and create the Samba shares on a VM I may have problems with a very large VM.

On the other hand if I run FreeNAS I may have have problems running VMs since their VM management is less developed than Xen and KVM.


1 Like


FreeNas use bhyve. I have quite a few VMs running under bhyve and even a few with iohyve. I guess it would depend what you want to do with your VMs. I could imagine passthrough ports and some graphics likely to be limited. For running basic servers however that are not graphic intensive, FreeNAS VMs work great.

1 Like

Then it may actually work on bhyve. The VMs currently run the Unifi Controller, internal DNS, a backup client that needs GUI and the odd Windows 10 session.

Would Windows 10 work on bhyve for non-graphic intensive applications? (e.g. office, data analysis, etc)

It would probably be a cleaner solution than trying to create a Samba server on a VM running on XCP-ng. No sure how well XCP-ng would deal with a 6/8TB VM.

Perhaps others could answer your questions about working with Win10. I know Win10 will install on bhyve however I’ve never used a bhyve VM for doing any work graphically in Win10 or Linux. Bhyve by default comes with a VNC viewer which I sometimes use to log in and check a few configurations (when for some reason I’m lazy and dont ssh into box), however the lag on using this particular setup is noticeable and if I had to do any serious work using this, it would drive me crazy. Whether another protocol such as RDP or the one Lawrence uses (a desktop client/server program – totally forgot the name of it however he discusses it in his videos) would work better – I don’t know. Kind of off topic, but what are you using for your backup program?

I have a VM running Borg to an offsite server and SpiderOAK.