I have a bigger SSD that I plan on migrating to. Thankfully I have ZFS on the disk, is it as easy as exporting and importing pools? What if I want to increase the pool size?
Exporting and importing a pool is a different operation. Ideally you can have both disks accessible at the same time in your system and you would replace the disk inside of the pool. I did this the other week in my NAS and it allowed the system to keep data integrity, but I had the room to have all disks active so it could resilver the disks.
If this is your only drive and you are fully swapping it out, then you are backing up your data and restoring it. This can be done manually, or using zfs send and receive
Not sure about ZFS, but one of btrfs's strengths is that it allows you to add and remove any arbitrary-sized disk pretty easily.
Example: https://markmcb.com/linux/btrfs/five-years-of-btrfs/#my-disk-setup-over-the-years
Personally, I would setup the new disk, snapshot the old disk, then zfssend and zfsrecive to move the snapshot data. After the data is copied, then zfs import.
Edit: skip mbuffer. It is great over a network, but adds complexity you don't need.
Piping through mbuffer with as much ram as you can spare, but even a little is great.