Date: Thu, 1 Sep 2022 13:17:30 -0700 From: David Christensen <dpchrist@holgerdanske.com> To: freebsd-questions@freebsd.org Subject: SOHO storage server ZFS dedup vdev Message-ID: <8e5c8df8-07e8-978f-09f4-55aa63f07416@holgerdanske.com>
next in thread | raw e-mail | index | archive | help
freebsd-questions: I have a storage server for my SOHO network with Samba and SSH/CVS. I am the sole user: # freebsd-version ; uname -a 12.3-RELEASE-p6 FreeBSD f3.tracy.holgerdanske.com 12.3-RELEASE-p6 FreeBSD 12.3-RELEASE-p6 GENERIC amd64 # gpart show -p ada0 ada0s1 => 63 117231345 ada0 MBR (56G) 63 1985 - free - (993K) 2048 29360128 ada0s1 freebsd [active] (14G) 29362176 87869232 ada0s2 freebsd (42G) => 0 29360128 ada0s1 BSD (14G) 0 4194304 ada0s1a freebsd-zfs (2.0G) 4194304 4194304 ada0s1b freebsd-swap (2.0G) 8388608 20971520 ada0s1d freebsd-zfs (10G) # gpart show -l ada1 ada2 ada3 ada4 => 40 5860533088 ada1 GPT (2.7T) 40 2008 - free - (1.0M) 2048 5860530176 1 p3c (2.7T) 5860532224 904 - free - (452K) => 40 5860533088 ada2 GPT (2.7T) 40 5860533088 1 p3d (2.7T) => 34 5860533101 ada3 GPT (2.7T) 34 2014 - free - (1.0M) 2048 5860530176 1 p3f (2.7T) 5860532224 911 - free - (456K) => 34 5860533101 ada4 GPT (2.7T) 34 2014 - free - (1.0M) 2048 5860530176 1 p3g (2.7T) 5860532224 911 - free - (456K) # zpool status p3 pool: p3 state: ONLINE scan: resilvered 1.89T in 0 days 06:22:13 with 0 errors on Mon Aug 29 04:01:33 2022 config: NAME STATE READ WRITE CKSUM p3 ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 gpt/p3c.eli ONLINE 0 0 0 gpt/p3g.eli ONLINE 0 0 0 mirror-1 ONLINE 0 0 0 gpt/p3d.eli ONLINE 0 0 0 gpt/p3f.eli ONLINE 0 0 0 cache ada0s2.eli ONLINE 0 0 0 errors: No known data errors Some of the datasets use deduplication: # zfs get -d 1 all p3 | egrep 'dedup.+verify' p3/archive dedup verify local p3/backup dedup verify local I am thinking of adding a dedup vdev to the pool to improve performance of read/ write operations and outgoing replication. RTFM zpool(8): DESCRIPTION Virtual Devices (vdevs) dedup A device dedicated solely for allocating dedup data. The redundancy of this device should match the redundancy of the other normal devices in the pool. If more than one dedup device is specified, then allocations are load-balanced between devices. As the pool is a stripe of two mirrors of two HDD's each, AIUI the dedup vdev should be a mirror (RAID1) of two devices. I plan to use two SSD's: 2 @ https://ark.intel.com/content/www/us/en/ark/products/66249/intel-ssd-520-series-180gb-2-5in-sata-6gbs-25nm-mlc.html I am wondering what is the best way to create the dedup vdev? 1. The motherboard has Intel RSTe SW RAID and Intel Embedded Server RAID Technology II, but it looks like device drivers and UI software are required. I am unsure if FreeBSD 12.3-R provides such. https://www.intel.com/content/www/us/en/support/articles/000055798/server-products/sasraid.html 2. Use GEOM RAID. I am unsure if this provides integrity checking of block ontents, or only protects against one device failing (e.g. long time out). 3. Use a ZFS mirrored pool and a volume. Comments or suggestions? David
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8e5c8df8-07e8-978f-09f4-55aa63f07416>