Can this be done with using something like NFS+ZFS?
Can this be done with using something like NFS+ZFS?
If the data they need shared access to is immutable (for example, the static files served by a webserver) I would much sooner bake them into a versioned container image and share that. It'll perform better by virtue of being on unshared local storage and eliminate the single point of failure/bottleneck.
Another option for eliminating the single point of failure and performance bottleneck is a distributed filesystem like cephfs or glusterfs.
I've been wondering the same for distributing storage arrays around multiple sites, with local caching. Ceph seems to be the way.
If you meant scaling ZFS itself such that the shared storage is resilient to a full host failure, I’m afraid ZFS is not your best bet. ZFS scales vertically very nicely. Heck, I have a single host with 2 X 100G NICs and 4 x 40G NICS fronting 1.2 PB of ZFS managed disks. If that host goes down, say from a motherboard failure, all 1.2 PB becomes inaccessible until I can hook up the JBODs to a different host physically.
You can share a filesystem (see the article for one way to configure that) or a volume (like a disk image, could be used for diskless hosts; iSCSI is a standard way of doing that).