ZFS is an open source file system and volume manager that provides features like unlimited capacity, data integrity checking, snapshots and clones. The presentation discusses N+1 ways to better use ZFS including designing storage pools with redundancy, testing pool performance, tuning the filesystem, and maintaining the system through scrubs and resilvering. Reasons for using ZFS in DevOps environments are also provided, such as performance, scalability, replication abilities, and using snapshots for deployments and backups.
4. What is ZFS?
• “Zettabyte File System”
• Sun, now Oracle
• Thank Sun for OpenSolaris and releasing ZFS
5. ZFS Features
•
•
•
•
•
•
•
•
Yes, it is a file system
It is also volume manager
Virtually unlimited capacity
Transactional
Multiple types of redundancy
Virtually unlimited snapshots, clones
Smart caching
Versioned on-disk format
11. N+1 ways
• Designing your pool
• Testing your pool
• Tuning the filesystem
• Maintenance
12. N=1: Designing your pool
• Your performance and redundancy needs
determine your pool design
• You can change it, only slightly, afterwards
• Consider a system with 4 HDDs
• Now what do I do?
13. Redundancy types
• A vdev is the building block of the zpool
• Everything is striped over vdevs
• Options:
–
–
–
–
Leaf (1)
Mirror (2..n)
RAID-Z1 (n+1)
RAID-Z2 (n+2)
26. Future work on ZFS
• Feature flags enables development of features
seperately
• Persistent L2ARC
• Larger block support
• Dedupe tables on SSD
27. Why use it in DevOps
• ZFS performs
• ZFS scales
– From your laptop to your workstation to your cloud
• ZFS replicates
– Using zfs send/receive you can deploy copies of your
VMs to other hosts
– Keep simple backups of your repos and machines
• Use snapshots to boot into new versions of your
operating system
28. Where to get it?
•
•
•
•
•
•
FreeBSD
Mac
ZFS on Linux
Illumos (EraStor OS)
NexentaStor (based on OpenSolaris/Illumos)
OpenZFS - http://open-zfs.org
29. Links
• Open ZFS Project
http://open-zfs.org
• ARC Paper
http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.1
3.5210
• NOSIG
http://www.nosig.nl/
• Erastor
http://www.erastor.eu