Correct Network protocol, for virtualization

el_pedriyo

Explorer
Joined
Jun 24, 2018
Messages
65
Hello,

I was planning to get freenas, for managing my disks, but also planning to get in under an hypervidor, like KVM (with proxmox) or esxi (with vmware), and I was wondering, what protocols do you use in here, in case I want to share data between other virtualized VMs? Like for example a plex, nextcloud, or other of the plugins that freenas has on it.
Just to clarify, I do not want to work with those freenas plugins, inside of freenas, but prefer to do it outside of it, as VMs, so just asking the better way to setup the network, to get as much speed. Do you think NFS will be enough, or do you have any other in mind?

Kind regards
 

kdragon75

Wizard
Joined
Aug 7, 2016
Messages
2,457
NFS is my first choice with bsd/nix systems. Even with Windows you can use NFS but for end clients I still use SMB. Just don't use both on one share as you will have corruption.
 

kdragon75

Wizard
Joined
Aug 7, 2016
Messages
2,457
Also be sure to use pci passthrough for your HBA!
 

el_pedriyo

Explorer
Joined
Jun 24, 2018
Messages
65
NFS is my first choice with bsd/nix systems. Even with Windows you can use NFS but for end clients I still use SMB. Just don't use both on one share as you will have corruption.

LOL, why should data corruption happen? :/

For example a have a file dataset where my linux VMs access, for example to bring up a nextcloud/plex service, but at the same time, I like also to access that data locally through my browser if I need to from windows, so I have also SMB :/

Also be sure to use pci passthrough for your HBA!

I have at the moment no HBA, just using the local sata controller from the motherboard, but I should say I will be able to passthrough the drives also, don't I?
 

anmnz

Patron
Joined
Feb 17, 2018
Messages
286
LOL, why should data corruption happen?
Because on FreeBSD NFS and SMB are separate user-space servers, each doing a pretty complicated job, and if one of them changes files the other one is writing to, or is reading from, or is treating as locked, etc., then you can get various kinds of data corruption.
 

el_pedriyo

Explorer
Joined
Jun 24, 2018
Messages
65
Because on FreeBSD NFS and SMB are separate user-space servers, each doing a pretty complicated job, and if one of them changes files the other one is writing to, or is reading from, or is treating as locked, etc., then you can get various kinds of data corruption.
LOL, I was guessing so, but never thought deep into it. Any recommendation so that I can use the datasets on my windows and linux machines?
To be honest thats really a bad point :(
 

danb35

Hall of Famer
Joined
Aug 16, 2011
Messages
15,504
Any recommendation so that I can use the datasets on my windows and linux machines?
Sure, use SMB for the Linux clients as well.

The risk with multiple protocols is that two different clients will try to write/modify the same file at the same time via different protocols, and if that happens, bad things will result--SMB has no way of knowing what NFS is doing, and vice versa. If you can assure that won't happen, go for it. Otherwise, only share a given dataset using one protocol.
 

kdragon75

Wizard
Joined
Aug 7, 2016
Messages
2,457
Yeah I guess I do use SMB anywhere there would be overlap. All the NFS is strictly nix/BSD though I do have one overlap with SMB set to read only. YMMV
 
Top