vdev is logical. Purpose: Disk grouping and redundancy. Composition: One or more disks.
zpool is logical. Purpose: Higher-level management of one or more vdevs. Composition: It acts like a JBOD.
---
zpools can be thought of as "stripes of vdevs". This, in the narrow sense that the failure of any vdev in a zpool is a permanent loss of the entire zpool. All your redundancy in the ZFS ecosystem is via mirrored or RAID'ed vdevs.
---
The setup I have heard of that balances performance, redundancy and space is to do what you say: Have a zpool of multiple mirror-type vdevs.
You can also stripe at the vdev level, which I would assume has higher performance than having multiple single-disk vdevs in a pool - I'm unaware of the differences at a low level.
The hierarchy is disk < vdev < zpool.
Disk is physical.
vdev is logical. Purpose: Disk grouping and redundancy. Composition: One or more disks.
zpool is logical. Purpose: Higher-level management of one or more vdevs. Composition: It acts like a JBOD.
---
zpools can be thought of as "stripes of vdevs". This, in the narrow sense that the failure of any vdev in a zpool is a permanent loss of the entire zpool. All your redundancy in the ZFS ecosystem is via mirrored or RAID'ed vdevs.
---
The setup I have heard of that balances performance, redundancy and space is to do what you say: Have a zpool of multiple mirror-type vdevs.
You can also stripe at the vdev level, which I would assume has higher performance than having multiple single-disk vdevs in a pool - I'm unaware of the differences at a low level.