Geht per NFS-Share oder iSCSI. Das ist innerhalb der Maschine ja ein virtuelles Netz und damit vom Durchsatz nur von der CPU limitiert, idealerweise nutzt man dafür in den VMs die VMXNET3-Nic, nicht die E1000. Dieses Setup ist für Homelabs performant genug; sequentiell geht bei mir so max. 2,2 bis 2,3 GiB/s drüber und auch die Latenzen sollten kein Problem darstellen, solange man keine großen Multiuser-Oracle-DBs drüber laufen lässt (dürfte daheim wohl kaum vorkommen
)
Sprich. ESXI aufs Metall installieren, eine Storage-VM einrichten für FreeNAS/Xigmanas einrichten, die vorgesehene Datenträger an einen LSI-/Broadcom SAS-Controller hängen und den Controller dann per vt-d Passthrough an die Storage-VM weiterreichen.
Die ZFS-Pools, Datasets und Volumens werden dann ausschliesslich in der VM bereitgestellt und auch administriert. Von dort dann NFS/iSCSI-Freigabe einrichten, die dann wieder im ESXI als Datastore eingehängt werden können.
Du brauchst dafür ein Bootmedium für ESXI (z.B. USB-Stick oder aber eine kleine SSD), eine kleine SSD als Datastore für die Storage-VM (zum Startzeitpunkt kennt ESXI ja die NFS-Shares noch nicht und irgendwo muss die Storage-VM ja drauf liegen) und als Goldstandard einen SAS-HBA mit SAS2008, SAS2308 oder SAS3008 Chipsatz mit Firmware im IT-Modus (=HBA only), damit ZFS die Speichermedien ohne Hard- oder Software-Zwischenschicht ansprechen kann. Hardware-Raid ist da ein "no no".
Die Storage-VM könnte man theoretisch auch auf die Boot-SSD mit dem ESXI legen, aber hat dann ggf. Stress, wenn man ESXI neu installieren muss; die Datastorage-Partitions sind nämlich da weg. Hat man da 2 Devices, bleibt der Datastore mit der Storage-VM erhalten und kann in eine potentielle spätere Neuinstallation einfach wieder eingehängt werden.
Btw, diese 2. SSD für den Basis-Datastore kann auch eine Intel Optane 900p sein. Die Storage-VM braucht nur sehr wenig Platz, den Rest kann man dann als Virtualdisk in die Storage-VM ggf. als ZFS-Slog oder L2Arc geben. Normal ist es absolut nicht empfohlen, VMDKs als ZFS-Device zu verwenden, aber die 900p ist schnell genug und da sie keinen Ram-Cache braucht auch relativ sicher.
Wichtig: NFS läuft über sychnrone Schreibzugriffe. Entweder verbietet man das dann auf dem ZFS-Dataset (set sync=disabled, damit hebelt man aber enorm viel Sicherheit von ZFS wieder aus), oder man braucht relativ schnell ein Slog-Device oder Datacenter-SSDs da es sonst schnell sehr langsam wird, wenn man ständig schreibt. Selbst gute Consumer-SSDs wie eine 850pro gehen da schnell ein bzgl. Durchsatz und Latenz.
Meine Meinung: Zum Lernen und Rumprobieren ist sync=disabled IMO ok, nutzt man die Kiste real mit Daten die man im Ernstfall nicht verlieren will, sollte man das nicht tun.
Was Du ab ESXI 6.7 vergessen kannst, sind Onboard-Satacontroller als Passthrough-Device in eine VM durchzureichen. Klappt nicht mehr, das geht derzeit nur bis ESXI 6.5. War glaub ich nie ein offizielles Feature von Vmware.