http://www.nersc.gov/assets/Uploads/W01-ZFS-and-Lustre-June-...
ZFS is meant for managing local drives, and to make it performant you need to configure SSD partitions to act as an L2 Arc cache. The online documentation is pretty good, so after going through the docs it should be pretty clear how to set ZFS up properly for your use cases.
But it sounds like you're using EBS drives? If so, not sure why you'd want to use ZFS. Last I checked, ext2 or xfs was the way to go with EBS drives on AWS. AWS has so much stuff going on in the background to ensure reliability/availability of EBS volumes that adding another layer isn't worth it IMO and I've seen similar kernel panics running other complicated volume managers on top of EBS.
"ZFS NFS" is "linux kernel NFS". Setting "sharenfs" options on ZFS on Linux dataset simply informs the normal kernel NFS service of those exports.