Man gehe davon aus, wir haben mehrere 16TB HDDs für einen Backupserver.

Dieser soll durch schnelle NVMEs beschleunigt werden.

Wir erzeugen ein ZFS-Raid für die HDDs:

zpool create -f -o ashift=12 pool mirror /dev/sda /dev/sdb mirror /dev/sdc /dev/sdd mirror /dev/sde /dev/sdf mirror /dev/sdg /dev/sdh mirror /dev/sdi /dev/sdj mirror /dev/sdk /dev/sdl mirror /dev/sdm /dev/sdn

(erzeugt Pool aus 16 x HDDs)

Wir messen anschließend die Schreibperformance des neuen Pools:

fio --name=/pool/schreibtest --rw=write --ioengine=libaio --iodepth=32 --runtime=60 --group_reporting --size=5G --sync=1

Performance ernüchtern:

write: IOPS=43, BW=176KiB/s

Wir beschleunigen den Pool mit einem Paar NVMEs jeweils für Log + ARC:

Dazu mit parted jeweils zwei gleichgroße Partitionen auf beiden NVMEs anlegen.

Einmal bei uns 50G und einmal 1000G

Zuletzt fügen wir Cache+Log dem bestehenden Pool hinzu:

zpool add -f pool log /dev/nvme0n1p4 /dev/nvme1n1p4 cache /dev/nvme0n1p5 /dev/nvme1n1p5

Ergebnis sieht wie folgt aus:

# zpool status

pool: pool
state: ONLINE
config:

NAME         STATE     READ WRITE CKSUM
pool         ONLINE       0     0     0
  mirror-0   ONLINE       0     0     0
    sda      ONLINE       0     0     0
    sdb      ONLINE       0     0     0
  mirror-1   ONLINE       0     0     0
    sdc      ONLINE       0     0     0
    sdd      ONLINE       0     0     0
  mirror-2   ONLINE       0     0     0
    sde      ONLINE       0     0     0
    sdf      ONLINE       0     0     0
  mirror-3   ONLINE       0     0     0
    sdg      ONLINE       0     0     0
    sdh      ONLINE       0     0     0
  mirror-4   ONLINE       0     0     0
    sdi      ONLINE       0     0     0
    sdj      ONLINE       0     0     0
  mirror-5   ONLINE       0     0     0
    sdk      ONLINE       0     0     0
    sdl      ONLINE       0     0     0
  mirror-6   ONLINE       0     0     0
    sdm      ONLINE       0     0     0
    sdn      ONLINE       0     0     0
logs    
  nvme0n1p4  ONLINE       0     0     0
  nvme1n1p4  ONLINE       0     0     0
cache
  nvme0n1p5  ONLINE       0     0     0
  nvme1n1p5  ONLINE       0     0     0

errors: No known data errors

Und der erneute Schreibtest sieht auch anders aus:

write: IOPS=23.9k, BW=93.3MiB/s

Categories: Blog