FreeBSD, Jails, and ZFS—a Perfect Trio

A modern, high-performance data center requires not only experience, expertise, and the right hardware, but also software that does what it’s supposed to. With FreeBSD, Jails, and ZFS, we’ve found a scalable, secure, and rapidly deployable open-source solution that we value highly. And because transparency is a top priority at punkt.de, we don’t want to keep from you how we use FreeBSD and what benefits it brings.

Hinterm Tellerrand geht´s weiter...

Wolfgang Zenker
schafft es mit einfachen Worten komplexe technische Prozesse & Programme zu erklären.

router bgp 16188

Patrick M. Hausen
Netzwerke und Infrastruktur sind sein Steckenpferd - damit Sie sich auf eine stabile Anwendung verlassen können.
Reading duration: approx. 3 Minutes

Why does punkt.de actually use FreeBSD for its servers? The answer is quite simple: Because it's good.

We in the IT department have worked with all kinds of systems—both feasible and not—over the past few years (and decades), but ultimately stuck with FreeBSD for the following reasons:

Everything from a Single Source

The base system (kernel, drivers, and standard system utilities) is maintained by the FreeBSD team and therefore follows a consistent structure in terms of installation location, configuration files, and documentation. This is described in the man page here(7). We are well connected within the FreeBSD community and greatly appreciate the consistently friendly atmosphere and the high level of helpfulness.

The Base System

The entire operating system, including all the components mentioned, is available in a central public SVN repository. The source code can be checked out, and the system can be built completely reproducibly and reliably with a single command: customized installation media, as well as virtual machines for Vagrant and similar environments. We now provision all our new dedicated servers fully automatically via PXE boot with a customized filesystem layout and the latest version of FreeBSD.

The Documentation

Documentation is available in the form of man pages for all components and programs of the operating system. These are man pages that don’t lie—that is, they accurately describe the program in question. This ensures that you always know where to find the information you need.

Ports

Unlike the common package repositories of Linux distributions, the FreeBSD Ports Collection does not contain pre-compiled binaries. Instead, it consists of “Makefiles” that fully describe the process from the original source distribution—including checking out or downloading the source, applying patches if necessary—all the way through compilation and installation. This allows every user to reliably generate the installation packages they need from more than 25,000 open-source products.

Poudriere

In line with the philosophy of providing tools rather than end products, FreeBSD includes the“Poudriere”tool, which allows you to set up your own package repository that is updated daily. We make extensive use of the ability to customize individual packages in the configuration as early as compile time. As a result, all the packages we need are available in binary form. FreeBSD thus combines the advantages of both approaches: installation on the server with the convenience familiar from tools like apt, combined with centralized and customized building directly from source. Continuous delivery for installation packages!

ZFS

ZFS, originally developed by Sun Microsystems to address the ever-growing storage requirements of modern servers, has—since its initial port to FreeBSD—matured into the most widely used file system in business-critical applications. It is characterized by virtually unlimited scalability with good performance and, above all, unmatched data security. Alongside BTRFS, ZFS is the only open-source file system that systematically safeguards all data with checksums to reliably detect individual errors even with today’s large disk sizes. Flexible volume management, snapshots, replication, and various redundancy methods for every use case are virtually a given.

Jails

With Jails—originally an extension of chroot(2)—FreeBSD provided us with a very lightweight virtualization solution more than 15 years ago, one that now isolates not only processes and files but also the entire network stack. As a result, it has long since been impossible to speak of “teething problems” with this technology in the context of Jails. In combination with ZFS snapshots and clones, Jails offer extremely fast provisioning of new instances. Jails are lightweight yet persistent and can contain everything an application needs—from a single program to a complete operating system environment. We use Jails with a full “root” environment as the basis for our new proServer. Of course, we’ve also tested Docker extensively—at one point, our company website was even running in containers—but everyone involved concluded that a jail is the better approach for such applications. That’s why our website now runs in a jail, of course.

Our Conclusion

We use this mature, reliable, and scalable technology to host our customers’ applications.

Share:

More articles

You had me at Hello, World!
Anita Hensler, Entwicklung at punkt.de
Working at punkt.de