ZFS on top of GELI
Rafał Jackiewicz
freebsd at o2.pl
Tue Jan 12 20:28:13 UTC 2010
>Thanks, could you do the same, but using 2 .eli vdevs mirrorred
>together in a zfs mirror?
>
>- Sincerely,
>Dan Naumov
Hi,
Proc: Intell Atom 330 (2x1.6Ghz) - 1 package(s) x 2 core(s) x 2 HTT threads
Chipset: Intel 82945G
Sys: 8.0-RELEASE FreeBSD 8.0-RELEASE #0
empty file: /boot/loader.conf
Hdd:
ad4: 953869MB <Seagate ST31000533CS SC15> at ata2-master SATA150
ad6: 953869MB <Seagate ST31000533CS SC15> at ata3-master SATA150
Geli:
geli init -s 4096 -K /etc/keys/ad4s2.key /dev/ad4s2
geli init -s 4096 -K /etc/keys/ad6s2.key /dev/ad6s2
Results:
****************************************************
*** single drive write MB/s read MB/s
eli.journal.ufs2 23 14
eli.zfs 19 36
*** mirror write MB/s read MB/s
mirror.eli.journal.ufs2 23 16
eli.zfs 31 40
zfs 83 79
*** degraded mirror write MB/s read MB/s
mirror.eli.journal.ufs2 16 9
eli.zfs 56 40
zfs 86 71
****************************************************
***** Single drive: ******
Mount:
data01 on /data01 (zfs, local)
/dev/ad6s2.eli.journal on /data02 (ufs, local, gjournal)
*** (single hdd) UFS2, gjournal, eli.
srebrny# time dd if=/dev/zero of=/data02/test01 bs=1m count=2000
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 92.451346 secs (22683845 bytes/sec)
0.068u 10.386s 1:32.46 11.2% 26+1497k 63+16066io 0pf+0w
** umount / mount, and:
srebrny# time dd if=/data02/test01 of=/dev/null bs=1m
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 147.219379 secs (14245081 bytes/sec)
0.008u 4.456s 2:27.22 3.0% 23+1324k 16066+0io 0pf+0w
*** (single hdd) zfs:
srebrny# time dd if=/dev/zero of=/data01/test01 bs=1m count=2000
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 113.049629 secs (18550720 bytes/sec)
0.014u 5.480s 1:53.05 4.8% 26+1516k 0+0io 0pf+0w
** umount / mount, and:
srebrny# time dd if=/data01/test01 of=/dev/null bs=1m
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 59.012860 secs (35537203 bytes/sec)
0.000u 3.135s 0:59.01 5.3% 24+1397k 0+0io 0pf+0w
***** Mirror: *****
*** (mirror hdd) UFS2, gjournal, eli.
srebrny# gmirror list
Geom name: data02
State: COMPLETE
Components: 2
Balance: round-robin
Slice: 4096
Flags: NONE
GenID: 0
SyncID: 1
**
srebrny# time dd if=/dev/zero of=/data02/test01 bs=1m count=2000
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 89.441874 secs (23447094 bytes/sec)
0.022u 11.110s 1:29.45 12.4% 26+1515k 64+16066io 0pf+0w
** umount / mount, and:
srebrny# time dd if=/data02/test01 of=/dev/null bs=1m
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 134.567914 secs (15584339 bytes/sec)
0.007u 4.333s 2:14.62 3.2% 26+1498k 16067+0io 0pf+0w
*** (mirror hdd, eli) zfs:
srebrny# time dd if=/dev/zero of=/data01/test01 bs=1m count=2000
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 67.255574 secs (31181832 bytes/sec)
0.029u 6.422s 1:07.25 9.5% 26+1531k 0+0io 0pf+0w
** (eli) umount / mount, and:
srebrny# time dd if=/data01/test01 of=/dev/null bs=1m
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 52.307404 secs (40092833 bytes/sec)
0.036u 3.405s 0:52.31 6.5% 27+1543k 0+0io 0pf+0w
*** (mirror hdd, no eli!) zfs:
srebrny# time dd if=/dev/zero of=/data01/test01 bs=1m count=2000
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 25.185164 secs (83269341 bytes/sec)
0.000u 5.506s 0:25.18 21.8% 26+1513k 0+0io 0pf+0w
** (no eli!) umount / mount, and:
srebrny# time dd if=/data01/test01 of=/dev/null bs=1m
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 26.457374 secs (79265312 bytes/sec)
0.000u 3.011s 0:26.45 11.3% 24+1396k 0+0io 0pf+0w
*****
*** (mirror !!!degraded!!!, single drive ad4s2) UFS2, gjournal, eli.
df -h
/dev/mirror/data02.eli.journal 857G 8.0K 788G 0% /data02
**
srebrny# time dd if=/dev/zero of=/data02/test01 bs=1m count=2000
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 131.554958 secs (15941262 bytes/sec)
0.029u 10.057s 2:11.58 7.6% 26+1528k 64+16066io 0pf+0w
** (mirror !!!degraded!!!, single drive ad4s2) umount / mount, and:
srebrny# time dd if=/data02/test01 of=/dev/null bs=1m
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 226.056204 secs (9277127 bytes/sec)
0.029u 4.226s 3:46.08 1.8% 26+1529k 16066+0io 0pf+0w
*** (mirror !!!degraded!!!, single drive ad4s2; eli) zfs:
srebrny# time dd if=/dev/zero of=/data01/test011 bs=1m count=2000
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 37.548232 secs (55852217 bytes/sec)
0.007u 5.480s 0:37.55 14.5% 26+1513k 0+0io 0pf+0w
** (mirror !!!degraded!!!, single drive ad4s2; eli) umount / mount, and:
srebrny# time dd if=/data01/test011 of=/dev/null bs=1m
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 51.266119 secs (40907173 bytes/sec)
0.036u 3.238s 0:51.28 6.3% 28+1549k 0+0io 0pf+0w
*** (mirror !!!degraded!!!, single drive ad4s2; no eli!) zfs:
srebrny# time dd if=/dev/zero of=/data01/test011 bs=1m count=2000
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 24.296032 secs (86316646 bytes/sec)
0.000u 5.463s 0:24.29 22.4% 26+1512k 0+0io 0pf+0w
** (mirror !!!degraded!!!, single drive ad4s2; no eli!) umount / mount, and:
srebrny# time dd if=/data01/test011 of=/dev/null bs=1m
2000+0 records in
2000+0 records out
2097152000 bytes transferred in 29.512372 secs (71060096 bytes/sec)
0.036u 3.275s 0:29.51 11.1% 27+1563k 0+0io 0pf+0w
Best regards,
Rafal Jackiewicz
More information about the freebsd-stable
mailing list