Tutorial: native ZFS on Ubuntu and Fedora Linux

ZFS is a great filesystem and making it available for Linux opens a bridge between Solaris, FreeBSD and Linux.

KQ Infotech has released the source of their ZFS port to the general public, using pool version 28.
You can get more information at their webpage: kqstor.com
Source code is available at github.com.

In this arcicle I am giving a tutorial how to build from source and install packages of native ZFS kernel modules for Ubuntu/Debian and Fedora Linux.

You need a x86_64 version (64-bit) of the Linux distributions.

NOTICE: tutorial is obsolete, please visit Native ZFS for Linux Homepage

Continue reading

ZFS introductory talk at the Slovak University of Technology in Bratislava

Another of my ZFS talks was an introductory talk at the Slovak University of Technology in Bratislava on December 8, 2010.
The talk was held in the slovak language with the translated title “ZFS from the viewpoint of a system administrator“.
Many thanks to the organizer – The HOW-KNOW Project [1] (joint project of the student organization YNET [2] and IAESTE Slovakia [3]).

Presentation slides (in slovak language)

Link to a video recording will follow. Continue reading

Talk at BSDDay 2010 in Budapest, Hungary

Last Saturday (20.11.2010) I attended the BSD Day 2010 at the Faculty of Informatics, Eötvös Loránd University in Budapest, Hungary. The event was sponsored by the Hungarian BSD Association and excellently organized by the hungarian FreeBSD developer Gábor Páli.

There have been several good talks including the talks of my friends Daniel Geržo (How the FreeBSD Project Works) and Roman Divácky (Clang/LLVM in the Base System).

My talk was “ZFS and FreeBSD“.
Presentation slides
Video recording from the presentation Continue reading

Viewing ZFS statistics with zfs-stats

The FreeBSD operating system collects statistical data from the ZFS subsystem using mechanisms originating from the OpenSolaris kstat framework.
This data is stored in sysctl variables (sysctl kstat.zfs). I have been recently working on improving a script named arc_summary.pl that was originally written by Ben Rockwood and modified by Jason J. Hellenthal. I have rewritten large parts of this script and renamed it to zfs-stats, as it’s output is not limited to ARC anymore. Continue reading

ZFS talk at the EuroBSDCon 2010 conference

ZFS talk at EuroBSDcon 2010

Last weekend (8.-10.10.2010) I held a talk at the EuroBSDCon 2010 conference in Karlsruhe, Germany.

It is probably the most popular european BSD conference and it is being attended by many developers of FreeBSD, NetBSD and OpenBSD. The talks covered innovations in the BSD operating systems and new projects have been presented, too.

I personally liked the Journaled Soft-updates talk by Marshall Kirk McKusick and the Contiki – The OS for the Internet of Things talk by Oliver Schmidt.

My talk was called Quo vadis ZFS and was about the ZFS filesystem with focus on the present state of the availability and development of ZFS.
Presentation slides for download: 2010-EuroBSDCon-Quo-vadis-ZFS.pdf Continue reading

Help testing ZFS v28 in FreeBSD

Pawel Jakub Dawidek has released a patch [1] to test ZFS version 28 in FreeBSD development version (9-CURRENT).
The patch is highly experimental and not guaranteed to work correctly. We want to correct any bugs and issues related to this patch.

What is new in v28 (compared to v15)?

  • data deduplication
  • triple parity RAIDZ
  • removal of log devices
  • zfs diff
  • zpool split
  • snapshot holds

You can read more about various ZFS pool versions in my previous article [2]. Continue reading

ZFS in various operating systems

As I stated in one of my previous articles [1], there will be no more OpenSolaris releases and the project will probably end. We can’t say that about ZFS which is one of its greatest advantages. In this article I am going to describe several operating systems that implement ZFS.

I want to list the following operating systems, distributions and projects covering ZFS (Zettabyte Filesystem):

  1. OpenSolaris
  2. Solaris
  3. FreeBSD
  4. Debian GNU/kFreeBSD
  5. Linux
  6. Nexenta
  7. IllumOS

Continue reading

Posted in ZFS

ZFS pool and filesystem versions

Many articles with ZFS-related topics mention ZFS versions, “ZFS pool versions” and “ZFS filesystem versions”.
What are these and what do the version numbers mean?

ZFS has three main structures exposed to the user – ZFS storage pools, ZFS datasets and ZFS volumes.
A ZFS storage pool consists of one or more block devices (“vdevs”, e.g. hard drives or partitions) that operate in various modes (JBOD, mirror, RAID-Z). ZFS storage pools are operated with the “zpool” command. Each ZFS storage pool can contain ZFS volumes and ZFS datasets. ZFS volumes are virtual block devices that can be used in the operating system like any other block device. ZFS datasets are the user visible ZFS filesystems that contain files and directories and are operated with the “zfs” command.

ZFS storage pools and filesystems have received many new features. Some of these features are not backwards compatible. Each incompatible change leads to storage pool or filesystem version bump. ZFS volumes have no version numbers. ZFS is designed to be backwards compatible – systems with newer versions can operate with pools and filesystems of older versions. Continue reading

Posted in ZFS

ZFS version 15 in FreeBSD

ZFS - The last word in file systemsAfter several weeks of testing and a discussion at the meetBSD 2010 conference I have successfully imported into the FreeBSD operating system (development branch 9-CURRENT) an update of the ZFS file system to version 15.

What is new in this version?

1. Stability – more mature ZFS code, comparable to Solaris 10 update 8 with latest bugfixes
2. Compatibility – Solaris 10 update 8 default ZFS pools can now be imported into FreeBSD
3. Features – user and group quotas (ZFS-internal) are very useful for intranet fileservers that want to use ZFS
4. Speed – my real-world benchmarks give a 15-20% RPS yield in PHP webserver workloads with codebase on ZFS

The new version will take 2 months of testing and if there are no serious issues I will import it on 2010-09-12 into the 8-STABLE branch. Continue reading