FreeBSD, Jails and ZFS - a perfect team

A modern high-performance data center requires not only experience, know-how and the right hardware, but also software that does what it is supposed to do. With FreeBSD, Jails and ZFS, we have found a scalable, secure and quickly provisionable open source solution that we greatly appreciate. And because transparency is very important to us at punkt.de, we don't want to withhold from you how we use FreeBSD and what advantages 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 the punkt.de actually use this FreeBSD for their servers? The answer is quite simple: because it's good.

We in engineering have worked with all possible and impossible systems over the last decade(s), but have ultimately stuck with FreeBSD for the following reasons:

Everything from a single source

The base system (kernel, drivers and standard system programs) is maintained by the FreeBSD team and therefore follows a standardized scheme in terms of installation location, configuration files and documentation. Described in the man-page here(7). We are well connected in the FreeBSD community and appreciate the always pleasant manners and the great willingness to help.

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 one command: Individualized installation disks, 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 file system layout and the latest FreeBSD version.

The documentation

There is documentation in the form of man-pages for all components and programs of the operating system. Man pages that do not lie, i.e. that actually represent the program described. This means that you always know where to find the information you need.

Ports

The FreeBSD Ports Collection, unlike the usual package repositories of Linux distributions, does not contain any fully compiled binaries. Rather, it consists of "Makefiles" that completely describe the process from the original source distribution, checkout or download, patches if necessary, to compilation and installation. This means that every user can generate the required installation packages themselves from more than 25,000 open source products in a reproducible manner.

Poudriere

In line with the philosophy of providing tools rather than end products, FreeBSD includes the "Poudriere" tool, with which you can set up your own up-to-date package repository. We make intensive use of the option to adapt individual packages in the configuration at compile time. The end result is that 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 known from tools such as apt, combined with centralized and individualized building directly from the source. Continuous delivery for installation packages!

ZFS

ZFS, originally developed by Sun Microsystems to meet the constantly growing storage requirements of modern servers, has since matured into the most widely used file system in business-critical applications following its original port to FreeBSD. It is characterized by practically unlimited scalability with good performance and, above all, unmatched data security. Alongside BTRFS, ZFS is the only open source file system that always backs up all data with checksums in order to detect individual errors with certainty, even with today's disk sizes. Flexible volume management, snapshots, replication and various redundancy procedures for every application are almost self-evident.

Jails

With Jails, originally an extension of chroot(2), FreeBSD provided us with a very lightweight virtualization solution more than 15 years ago, which now isolates not only processes and files but also the entire network stack. As a result, we can no longer speak of the technology's teething troubles in connection with jails. In combination with ZFS snapshots and clones, jails offer extremely fast provisioning of new instances. Jails are lightweight but persistent and can contain anything from a single program to a complete operating system environment that is needed for the application. We use jails with a complete "root" environment as the basis of our new proServer. Of course, we have also tried Docker extensively, at times even running our company website in containers, but everyone involved has realized 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