The only suggestion that I have seen is partitioning the disk before creating the pool, creating one "pool" partition and one "slack" partition
Esta é a resposta correta.
but I've read the this will affect disk performance as the disk cache can not be used properly by zfs.
Isso é um mal-entendido. Usar uma partição em vez de um disco cheio afeta apenas o desempenho se a partição estiver desalinhada, o que normalmente requer alguma determinação real da parte do usuário, se você estiver usando editores de partição vagamente modernos. Linux e BSD fdisk, sfdisk e gparted todos entendem limites de partição e trabalham dentro deles, a menos que seja forçado a não fazê-lo.
Além disso, se você olhar de perto para um disco que foi alimentado inteiro para zfs, você notará que o zfs particionou ele mesmo. Exemplo:
root@banshee:~# zpool status data
pool: data
state: ONLINE
scan: scrub repaired 0 in 27h54m with 0 errors on Mon Mar 13 05:18:20 2017
config:
NAME STATE READ WRITE CKSUM
data ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
wwn-0x50014ee206fd9549 ONLINE 0 0 0
wwn-0x50014ee2afb368a9 ONLINE 0 0 0
mirror-1 ONLINE 0 0 0
wwn-0x50014ee25d2510d4 ONLINE 0 0 0
wwn-0x5001517bb29d5333 ONLINE 0 0 0
errors: No known data errors
root@banshee:~# ls -l /dev/disk/by-id | grep 510d4
lrwxrwxrwx 1 root root 9 Mar 22 15:57 wwn-0x50014ee25d2510d4 -> ../../sdd
lrwxrwxrwx 1 root root 10 Mar 22 15:57 wwn-0x50014ee25d2510d4-part1 -> ../../sdd1
lrwxrwxrwx 1 root root 10 Mar 22 15:57 wwn-0x50014ee25d2510d4-part9 -> ../../sdd9
Como você pode ver, o ZFS já particionou os discos brutos no pool. O pool usa a partição 1; a partição 9 está com folga.
root@banshee:~# sfdisk -d /dev/sdd
label: gpt
label-id: B2DED677-DB67-974C-80A6-070B72EB8CFB
device: /dev/sdd
unit: sectors
first-lba: 34
last-lba: 3907029134
/dev/sdd1 : start= 2048, size= 3907010560, type=6A898CC3-1DD2-11B2-99A6-080020736631, uuid=A570D0A4-EA32-F64F-80D8-7479D918924B, name="zfs"
/dev/sdd9 : start= 3907012608, size= 16384, type=6A945A3B-1DD2-11B2-99A6-080020736631, uuid=85D0957B-65AF-6B4A-9F1B-F902FE539170
sdd9
tem 16384 setores. Este é um disco 4K, de modo que sai para 64M, e qualquer disco que não seja mais do que 63M-ish menor que o disco existente deve estar bem como um substituto para este, caso ele falhe.