ZFS's defaults give you a self-healing, checksummed pool in minutes, then hand you a set of cliff-edges that most teams only discover during an incident.
The defaults work. Until the pool drifts past 80% full, the metaslab allocator quietly switches from first-fit to best-fit, and write latency falls off a cliff that was invisible a percent earlier. Until zfs_arc_max is left unset on Linux and the ARC consumes the RAM your database needed, so the OOM killer picks a victim. Until a disk fails, the pool goes DEGRADED, and it runs there for weeks one failure away from data loss. Until a scrub you never scheduled would have caught the bit rot that zpool status -v now reports as permanent errors in the following files. Until a SLOG dies, the pool stays ONLINE, and every synchronous write is suddenly a hundred times slower.
These guides are written for engineers who already run ZFS, not for people deciding whether to. The goal is the mental model of how the pool actually behaves under load — copy-on-write, transaction groups, the ARC, the ZIL, the metaslab allocator — the failure patterns that keep recurring, the monitoring story that catches them before they page anyone, and the runbooks you wish someone had handed you before your last incident.