The Paxos algorithm for consensus in a message-passing system

“The algorithm runs in a message-passing model with asynchrony and less than n/2 crash failures (but not Byzantine failures, at least in the original algorithm). As always, we want to get agreement, validity, and termination. The Paxos algorithm itself is mostly concerned with guaranteeing agreement and validity while allowing for the possibility of termination if there is a long enough interval in which no process restarts the protocol…”

Why Should You Use FreeBSD? Here’s Some Reasons

“David Chisnall of the FreeBSD project is working on updating their advocacy material regarding this leading *BSD operating system. As such, he asked on the mailing list Why Are You Using FreeBSD?

For those wondering about the responses why different people are using FreeBSD, here’s some of the (controversial) responses: …”

Getting started with LXC using libvirt

“For quite a while now, libvirt has had an LXC driver that uses Linux’s namespace + cgroups features to provide container based virtualization. Before continuing I should point out that the libvirt LXC driver does not have any direct need for the userspace tools from the LXC project, since it directly leverages APIs the Linux kernel exposes to userspace. There are in fact many other potential users of the kernel’s namespace APIs which have their own userspace, such as OpenVZ, Linux-VServer, Parallels. This blog post will just concern itself solely with the native libvirt LXC support…”

Connecting containers on several hosts with Open vSwitch

“Lxc is great for starting up several containers on your laptop or on an ec2 host. But what if you want to fire up containers on multiple ec2 instances, and have them talk to each other?

An easy way to support that is using openvswitch. This script is a user-data-script which you can use to fire up instances ready to connect containers…”

Introduction to MongoDB for Java, PHP and Python Developers

“This article covers using MongoDB as a way to get started with NoSQL. It presents an introduction to considering NoSQL, why MongoDB is a good NoSQL implementation to get started with, MongoDB shortcommings and tradeoffs, key MongoDB developer concepts, MongoDB architectural concepts (sharding, replica sets), using the console to learn MongoDB, and getting started with MongoDB for Python, Java and PHP developers. The article uses MongoDB, but many concepts introduced are common in other NoSQL solutions. The article should be useful for new developers, ops and DevOps who are new to NoSQL…”