|
|
Subscribe / Log in / New account

Distributions

News and Editorials

DragonFly BSD 2.6: towards a free clustering operating system

April 21, 2010

This article was contributed by Koen Vervloesem

There aren't many BSDs compared to Linux distributions: most people only know FreeBSD, OpenBSD, and NetBSD. Of course there are more than just the "big three" BSD operating systems, but most of them are marginally used or (in the case of Mac OS X) proprietary. However, two operating systems are becoming more and more popular in the BSD world: one is PC-BSD, a KDE-based FreeBSD derivative that strives to be the Ubuntu of the BSDs, and the other is DragonFly BSD, a FreeBSD fork that aims to provide single-system image clustering in the long term.

[DragonFly screen shot]

In 2003, FreeBSD developer Matthew Dillon created DragonFly BSD as a fork of FreeBSD 4.8. He did this because he didn't agree with the direction FreeBSD 5 was going in the domains of threading and symmetric multiprocessing. Since then, the DragonFly BSD kernel diverged significantly from its mother kernel, for example by adding a Light Weight Kernel Threads (LWKT) implementation and a virtual kernel similar to User Mode Linux. However, there is still a close collaboration between DragonFly BSD and FreeBSD, and FreeBSD device drivers are regularly imported into DragonFly BSD. The operating system has also ported some functionality from NetBSD and OpenBSD.

The ultimate goal of DragonFly BSD is to allow programs to run across multiple machines as if they are running on one system. The operating system is still far from that goal, but Dillon has done a great deal of rewriting in nearly every subsystem of the kernel to lay the foundations for future work. Much of the rationale behind the design goals is explained on the project's web site. It's an interesting read, because it shows how they want to tackle an ambitious vision with a realistic plan:

First and foremost among all of our goals is a desire to be able to implement them in small bite-sized chunks, while at the same time maintaining good stability for the system as a whole.

HAMMER time

After some preliminary work in version 1.12, DragonFly BSD added a new clustering filesystem in version 2.0, which was finally considered production-ready in version 2.2: HAMMER. There are also ports of the filesystem to Linux and Mac OS X, both using FUSE. HAMMER is a modern filesystem with fine-grained snapshots, integrity checking, instant crash recovery, and networked mirroring. It's no coincidence that this sounds a lot like ZFS: Dillon investigated ZFS and for a while it looked like he would port it to DragonFly BSD, but in the end he wasn't satisfied with the design and wrote his own, more cluster-oriented filesystem. The main reason for this was simple: DragonFly BSD's goal is transparent clustering, which needs a multi-master replicated environment. In this type of environment, ZFS doesn't quite fit the bill, as Dillon explained on the DragonFly kernel mailing list:

The problem ZFS has is that it is TOO redundant. You just don't need that scale of redundancy if you intend to operate in a multi-master replicated environment because you not only have wholely independant (logical) copies of the filesystem, they can also all be live and online at the same time.

HAMMER's approach to redundancy is logical replication of the entire filesystem. That is, wholely independant copies operating on different machines in different locations.

HAMMER is the default filesystem now, but it's not recommended for storage media smaller than 50 G; DragonFly BSD uses UFS for small media. HAMMER supports filesystems up to 1 exabyte. Each HAMMER filesystem can span up to 256 disks, which can be added to an existing filesystem to let it grow. Users don't need to manually take snapshots: the system automatically writes historical data during each filesystem sync, which is every 30 to 60 seconds. Prior versions of files and directories are then accessible by appending @@ and a 64-bit hexadecimal transaction ID to the file name. In this way, users can even cd into a prior version of a directory. The system administrator can choose a history retention policy to prevent the filesystem from filling up too quickly, and explicit snapshots can also be made. Although HAMMER is considered production-ready by its developers, it's still a relatively young filesystem with the occasional serious bug. For example, soon after the 2.6 release a serious HAMMER corruption issue came up.

New features

New releases of the operating system occur approximately twice a year. The latest release is DragonFly BSD 2.6.1. Three of the most interesting new features are swapcache, tmpfs, and POSIX message queues. The former is a mechanism that allows the operating system to use a fast SSD to cache data and/or metadata for hard drive filesystems, which should improve disk performance dramatically. Swapcache works on all filesystems (e.g. HAMMER, UFS, or NFS) and is a simple turn-on-and-forget type of feature. The man page of swapcache has an extensive description of the new functionality and adds an analysis with some real-life examples.

The memory filesystem tmpfs is a port from NetBSD. After loading the tmpfs driver as a kernel module at boot time, the user can create tmpfs filesystems. The data is backed by swap space when there's not enough free memory, but the metadata is stored in kernel memory. The tmpfs man page recommends that a modern DragonFly BSD platform reserve a large amount of swap space to accommodate tmpfs and other subsystems. The DragonFly BSD developers also ported the POSIX message queues API from NetBSD 5, which allows processes to exchange data in the form of messages.

Live CD

DragonFly BSD is distributed as a live CD ISO or USB image that lets users check their system for hardware compatibility before installation. For now, there are only versions for i386 and x86_64 architectures. The web site also talks about a DVD ISO that is able to show a full live X environment, but in the 2.6 release this has been replaced by a GUI USB image that boots into the desktop. At the time of this writing, the GUI USB image was not available yet due to some problems.

DragonFly BSD uses BSD Installer, a console based system installation and configuration tool that is more user-friendly than FreeBSD's sysinstall. BSD Installer started its life as DragonFly BSD's installer, but it has since been ported to FreeSBIE and pfSense. The installation is straightforward, although for non-US users it's slightly annoying that the choice of keyboard layout is presented only after choosing the root password and adding a user. After installation and configuration, the system reboots into a minimal console-based BSD system.

Instead of FreeBSD ports, DragonFly BSD uses NetBSD's pkgsrc as its official package management system. This freed the DragonFly BSD developers from having to maintain a large number of third-party software, and pkgsrc is designed with portability in mind. Users can install over 9000 binary packages in DragonFly BSD (with the pkg_radd command) or build them from source. For users that want to run software that exists for Linux but not for BSD, DragonFly BSD has a Linux emulation layer: the Linuxulator in the 2.6 release even runs Java and Flash, at least on the i386 architecture.

Documentation

The project's web site has a lot of documentation, both for users and developers, including some specific howtos. There's also an extensive but slightly out-of-date handbook based on the FreeBSD handbook, and a less extensive but more up-to-date new handbook. The handbook guides the user through the installation, but it also has chapters about "UNIX Basics" (which is a mix of DragonFly BSD basics and general UNIX basics), the pkgsrc packaging system, configuring X, and more advanced topics like jails, security, the kernel, and virtual kernels.

Readers that want to keep an eye on the project but don't have the time to read the mailing lists can read The DragonFly BSD Digest by Justin Sherrill. Some Gource visualizations of the DragonFly BSD development nicely show what the small but active group of developers is doing. We looked at Gource and other visualization programs earlier this month.

Conclusion

For a relatively small (45 committers) and lesser-known BSD operating system, DragonFly BSD is surprisingly good and development of new features happens remarkably fast. Maybe this small scale is the reason why the project is so innovative. The fact that the BSD Certification Group has added knowledge about the operating system to the requirements of the BSD Associate certification is another sign that DragonFly BSD is here to stay. But ultimately, the road to its goal is still paved with a lot of work.

Comments (2 posted)

New Releases

RHEL 6 beta version available

Red Hat has announced the availability of a beta version of Red Hat Enterprise Linux 6. "Red Hat engineers have played key roles in the upstream development of a wide range of kernel performance enhancements that we plan to feature in Red Hat Enterprise Linux 6. This includes a complete rewrite of the process scheduler so that it more fairly shares compute cycles among processes and provides more determinism by enabling higher-priority processes to run with minimal interference from lower-priority processes." (Thanks to Greg Bailey).

Comments (67 posted)

PCLinuxOS 2010 Edition arrives in six variants (The H)

The H covers the release of PCLinuxOS 2010. "The PCLinuxOS developers have announced the availability of the final version of the 2010 edition of their Linux distribution. The distribution's goal is to be "radically simple" and easy to use. The latest stable release includes a number of updates, new features and a choice of six desktop environments."

Comments (none posted)

Distribution News

Debian GNU/Linux

Debian Project Leader Election 2010 Results

Debian Project Secretary, Kurt Roeckx, has announced the results of this year's Debian Project Leader elections. Stefano Zacchiroli is winner. His term begins April 17, 2010.

Full Story (comments: 15)

bits from the (newbie) DPL

Stefano Zacchiroli presents his first bits as the newly elected Debian Project Leader. "48 hours into this new DPL term, here are my first ever "bits from the DPL" with kudos, directions, and some practical information."

Full Story (comments: none)

Fedora

Request for Comments: Fedora Project Contributor Agreement Draft

Tom "spot" Callaway has announced that a draft version of the Fedora Project Contributor Agreement (FPCA) is available for comments. "Please, take a moment and read the FPCA and the FAQ. It is not a long, or overly complicated document, as legal documents go, but it is important that all Fedora Contributors read it over and make sure they understand it and like it (or can at least agree to it)."

Full Story (comments: none)

F14 Naming: Constaine -> Goddard -> ???

Fedora 13 will be released soon, so it's time to start finding a name for Fedora 14. Click below for instructions and guidelines. Suggestions will be collected until Tuesday, April 27, 2010.

Full Story (comments: none)

Fedora Board Recap 2010-04-15

Click below for a recap of the April 15, 2010 meeting of the Fedora Advisory Board. Topics include SWG close out and Beta Release.

Full Story (comments: none)

Ubuntu family

Shuttleworth: Ubuntu's Indicator Menus

For those who are interested in where Ubuntu plans to go with its user interface innovations: Mark Shuttleworth has posted a writeup on indicator menus, which will provide persistent state information to users. "We will place all indicators at the top right of the screen. We'll place them in a particular order, too, with the 'most fundamental' indicator, which controls the overall session, in the top right. The order will not be random, but predictable between sessions and screen sizes. There will be no GUI support for users to reorder the indicators." The current plan is to do (and ship) the work, then try to get GNOME and KDE to accept it.

Comments (36 posted)

Jonathan Carter: What's been happening with Edubuntu?

Jonathan Carter looks at Edubuntu 10.04 and beyond. "Edubuntu 9.10 was our first release that returned from being an add-on CD to a full installation disc. It had a big problem though, it was almost double the size what it needed to be. The alternate installation that shipped with the disc required for LTSP installation meant that every program and its files were shipped twice on the image, resulting in a very bloated disc. It was unavoidable at the time though but for Lucid we have managed to integrate everything that's required for a full Edubuntu setup into the desktop LiveCD, so no more alternate installation is required."

Comments (none posted)

New Distributions

Peppermint: A New Linux OS for the Cloud (ReadWriteWeb)

ReadWriteWeb introduces Peppermint. "Peppermint, a new Linux-based operating system with a focus on cloud computing and Web applications, is launching into a private beta this week to a limited number of participants, and will open up later next month to even more. The OS is a fork of Lubuntu and uses some of Linux Mint's configuration files, hence the name "Peppermint." Unlike desktop-focused Linux distributions, running applications on Peppermint won't require "installing countless numbers of software packages and reading wikis all Saturday afternoon," reads the product homepage. Instead, users will run Web apps in their own windows via Mozilla's Prism technology."

Comments (none posted)

Distribution Newsletters

DistroWatch Weekly, Issue 350

The DistroWatch Weekly for April 19, 2010 is out. "Operating systems come in many different shapes and sizes - some are enormous and created by huge multinational software companies, others are tiny and represent the result of a few curious individuals. HelenOS belongs to the latter camp. Although it was started as a research project and is presently still just a tool to learn about system internals, the project has ambition to become a usable, general-purpose operating system. Read on for our interview with founder Jakub Jermar and a first-look review of the latest version. In the news section, Fedora continues its march towards its next stable release, Debian developers elect a new project leader and MOPSLinux faces uncertain future following a sponsor's departure. Also not to be missed: a link to an excellent article on migrating to GRUB 2, and our questions and answers feature which explains the intricacies of the "nice" and "renice" commands. Happy reading!"

Comments (none posted)

Fedora Weekly News 221

The Fedora Weekly News for April 14, 2010 is out. "This week's issue starts off with announcements, including notice of an upcoming wiki freeze on April 19 for release notes, more detail on Fedora Summer of Code, and the release of Fedora 13 beta. News from the Fedora Planet is next, including tips on using NetworkManager for servers, an event report from FLOSS HCI Workshop at CHI 2010 Atlanta, and a discussion why DocBarX in Fedora would be a Good Thing. In news from the Marketing team, reports on recent work in helping Fedora Ambassadors, work on a new Fedora flyer, an update on activities with students at Alleghany College, and pointers to weekly meeting notes. Our irregular 'In the News' beat features several stories about Fedora 13 in the press since yesterday's release. Ambassadors this week features an event report from the Texas LinuxFest. In QA news, details from last week's test day on virtualization, and three upcoming test days around graphics drivers, as well as a wrap up report of Fedora 13 Beta validation testing, and several other items. Translation includes reports of activity around Fedora 13 release notes, upcoming tasks, new modules and new team members.In Design team news, an update on Fedora 13 wallpaper and a discussion around user experience (UX) groups and the design team. This issue wraps up with an overview of the security advisories issued this past week for Fedora 11, 12 and 13. Enjoy FWN 221!"

Full Story (comments: none)

openSUSE Weekly News/119

The openSUSE Weekly News for April 17, 2010 is out. "In this issue you can find a new exclusive Kernel Review with openSUSE Flavor, and the new Milestone 5 of openSUSE 11.3 is out. Feel free to test it. Now we wish you many joy by reading the new issue..."

Comments (none posted)

Ubuntu Weekly Newsletter #189

The Ubuntu Weekly Newsletter for April 17, 2010 is out. "In this issue we cover: Archive frozen for preparation of Ubuntu 10.04 LTS, Ubuntu Open Week, New Loco Council Members Announced, New operators appointed on #ubuntu, #ubuntu-offtopic and #kubuntu, Reminder: Regional Membership Boards - Restaffing, 1st Annual Ubuntu Women World Play Day Competition Announced, New Ubuntu Member, Lucid Parties, Hungarian Loco Team shares Release Party Badges, Lucid Release parties in Norway, Ubuntu-ni presentation at American College, Ubuntu Honduras Visited UNAH-VS, Minor Team Reporting Change, Feature Friday: project announcements, Links round-up 16th April, Facebook app for Lucid countdown banners, Free Software and Linux Days 2010 in Istanbul, Quickly 4.0 available in Lucid!, Out of beta: 40 Ubuntu-based TurnKey virtual appliances, Full Circle Podcast #4: It's Everyone Else's Fault, Ubuntu-UK podcast: Hear Em Rave and much, much more!"

Full Story (comments: none)

Distribution meetings

Mini DebConf in Berlin, Germany, June 10th/11th

There will be a mini DebConf during LinuxTag. "Every year the LinuxTag (Linux day) is a four-day event in Berlin, Germany, likely comparable to other OpenSource events. It provides talks, discussion and a lot of booths of various Free Software projects. This year's LinuxTag will be on June 9th till 12th. Since it's held on a huge fairground, we were able to get quite some piece of it for our own use. We will have two areas, one for talks, the other as a hack lab and use right the middle of the LinuxTag for the Mini DebConf: June 10th and 11th -- with the hack lab open all through the night of course."

Full Story (comments: none)

Newsletters and articles of interest

The lost world of the Xandros desktop (ITPro)

There is a lengthy article on the history and status of Xandros on ITPro. "Xandros tried to imprint a traditional software sales model on GNU/Linux, which hasn't really worked, despite the cost and efficiency advantages of GNU/Linux for commercial users, so the company has looked instead towards the mobile and netbook market, where it has found some success."

Comments (1 posted)

Page editor: Rebecca Sobol
Next page: Development>>


Copyright © 2010, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds