ZFS: Difference between revisions
mNo edit summary |
|||
Line 116: | Line 116: | ||
== Tuning arc settings == | == Tuning arc settings == | ||
See [https://openzfs.github.io/openzfs-docs/Performance%20and%20Tuning/Module%20Parameters.html Tuning ZFS modules parameters] | See [https://openzfs.github.io/openzfs-docs/Performance%20and%20Tuning/Module%20Parameters.html Tuning ZFS modules parameters] | ||
===zfs_arc_max=== | |||
Linux defaults to giving 50% of RAM to arc, this is when: | |||
cat /sys/module/zfs/parameters/zfs_arc_max | |||
0 | |||
grep c_max /proc/spl/kstat/zfs/arcstats | grep c_max /proc/spl/kstat/zfs/arcstats | ||
To change this: | |||
echo 5368709120 > /sys/module/zfs/parameters/zfs_arc_max | echo 5368709120 > /sys/module/zfs/parameters/zfs_arc_max | ||
and add to /etc/modprobe.d/zfs.conf | |||
zfs zfs_arc_max=5368709120 | |||
maybe you need | maybe you need | ||
Line 132: | Line 138: | ||
echo 20 > /sys/module/zfs/parameters/zfs_arc_dnode_limit_percent | echo 20 > /sys/module/zfs/parameters/zfs_arc_dnode_limit_percent | ||
In / | In /etc/modprobe.d/zfs.conf: | ||
options zfs zfs_arc_dnode_limit_percent=20 | options zfs zfs_arc_dnode_limit_percent=20 |
Revision as of 08:53, 9 August 2023
Links
- http://open-zfs.org
- http://www.edplese.com/samba-with-zfs.html
- ZFS calculator
- ZFS clustering
- https://jrs-s.net/2015/02/03/will-zfs-and-non-ecc-ram-kill-your-data/ ZFS and ECC]
- ZFS troubleshooting/disk replacement
- Creating a ZFS HA Cluster using shared or shared-nothing storage
- ZFS 101
- Raidz expansion
- Basic guide to working with zfs
Documentation
- zfs manpage
- ZFS on Linux
- openzfs wiki
- https://wiki.gentoo.org/wiki/ZFS
- ZFS cheatsheet
- http://wiki.freebsd.org/ZFSQuickStartGuide
- Opensolaris ZFS intro
- Using and tuning ARC
- raidz types reference
Caching
Commands
arc_summary
cat /proc/spl/kstat/zfs/arcstats
Terms and acronyms
vdev
Virtual Device. ZFS Virtual disks
L2ARC
Level 2 Adaptive Replacement Cache
SSD cache
HOWTO
Create zfs filesystem
zfs create poolname/fsname
this also creates mountpoint
Add vdev to pool
zpool add mypool raidz1 sdg sdh sdi
Replace disk in zfs
Some links
Get information first:
Name of disk
zpool status
Find uid of disk to replace
take it offline
zpool offline poolname ata-WDC_WD20EFRX-68EUZN0_WD-WCC4M5RLZC6V
Get the disk guid:
zdb
guid: 15233236897831806877
Get list of disk by id:
ls -al /dev/disk/by-id
Save the id, shutdown, replace disk, boot:
Find the new disk:
ls -al /dev/disk/by-id
Run replace command. The id is the guid of the old disk, name is of the new disk
zpool replace tank /dev/disk/by-id/13450850036953119346 /dev/disk/by-id/ata-ST4000VN000-1H4168_Z302FQVZ
Showing information about ZFS pools and datasets
Show pools with sizes
zpool list
or
zpool list -H -o name,size
Show reservations on datasets
zfs list -o name,reservations
Swap on zfs
https://askubuntu.com/questions/228149/zfs-partition-as-swap
vdevs
multiple vdevs
Multiple vdevs in a zpool get striped. What about balance?
invalid vdev specification
Probably means you need -f
Tuning arc settings
See Tuning ZFS modules parameters
zfs_arc_max
Linux defaults to giving 50% of RAM to arc, this is when:
cat /sys/module/zfs/parameters/zfs_arc_max 0 grep c_max /proc/spl/kstat/zfs/arcstats
To change this:
echo 5368709120 > /sys/module/zfs/parameters/zfs_arc_max
and add to /etc/modprobe.d/zfs.conf
zfs zfs_arc_max=5368709120
maybe you need
echo 3 > /proc/sys/vm/drop_caches
Tune zfs_arc_dnode_limit_percent
Assuming zfs_arc_dnode_limit = 0:
echo 20 > /sys/module/zfs/parameters/zfs_arc_dnode_limit_percent
In /etc/modprobe.d/zfs.conf:
options zfs zfs_arc_dnode_limit_percent=20
FAQ
show status and disks
zpool status
show drives/pools
zfs list
check raid level
zfs list -a
Estimate raidz speeds
raidz1: N/(N-1) * IOPS raidz2: N/(N-2) * IOPS raidz3: N/(N-3) * IOPS