Just a note that as of build 88, zfs booting is integrated into Solaris Nevada . While OpenSolaris (Project Indiana), has had zfs booting for a while, It was previously only available in Nevada by setting up a jumpstart server and doing a netinstall.
As it stands, you will have to use the text mode installer to configure a zfs root pool, neither the old nor the new graphical installers support it. If you have multiple disks the installer will automatically configure them as mirrors. Both swap and dump space are configured as zvols, which are basically incredibly flexible block containers. Ben Rockwood has two excellent writeups on working with zvols. There are currently some limitations however, as you can’t setup RAID-Z stripe sets yet and
I’m unclear on the state of liveupgrade integration. (updated below) Also note that if you are moving from an older build, luactivate will require you to upgrade to the new findroot enabled version of GRUB.
Update 8/24: ZFS root was the topic of Thursday’s DFW OpenSolaris User Group meeting. It turns out that liveupgrade is fully aware of zfs and will use zfs specific features like cloning during the upgrade process, which makes things like
lucopy MUCH faster. Indeed, creating a new boot environment with zfs is as simple as
lucreate -n be-name, and the current environment is cloned in the existing pool. The other neat thing about using a zfs clone is that only changes from the original are recorded, which means a huge space savings during upgrades. The
lucreate in the image on the right took all of 10 seconds which is mind blowing.