Skip to main content

Access control in Bottle (by IP)

If you haven’t heard of Bottle, it’s a lightweight web framework for Python. It is perfect if you have a small project that requires a web interface, but you don’t want to go all in with a complex framework like Django. Since Bottle is so lightweight, it doesn’t always have all the features you need built-in. One thing that I was missing was access control. …

Read More

Munin-plugin for Zendesk

In recent time, I’ve really started to appreciate Munin. I’ve deployed Munin in multiple architectures already, and I still get impressed every time by how easy it is to setup. I also really like how easy it is to write plugins. For a crash-course in writing plugins for Munin, take a look at this page. Since I first deployed Munin to monitor YippieMove‘s …

Read More

New project: csconnect.py

In the last few years, we‘ve spent a lot of time migrating away from all our physical servers and into the cloud. This has been a very interesting task, that presented its own set of challenges, but it has certainly been worth it. One of the issues though with working in a public cloud environment is that you don’t necessarily have the same static IP …

Read More

Deploying FreeBSD's Ports to a large number of nodes

Some time ago, I posted a question on Serverfault about how people managed and deployed ports in a large environment. Despite a fair number of comment, nobody seemed to really have the anser to this (or at least that suited my needs). It simply appears to be the case that the built-in tools in FreeBSD (primarily portsnap and portupgrade) are not built for a …

Read More

Monitor Memcached with Munin (on Ubuntu)

Let me first admit that I am new to Munin. I’ve played around with most monitoring tool, but never Munin for some reason. I really don’t know why, since it appears to be a great tool. As a result, this might be obvious to seasoned Munin-users, but it wasn’t to me at least. It appear as most stock-plugins are configured in /etc/munin/plugin-conf.d/munin-node. …

Read More

I'm interviewed by City Network

This week I was interviewed (Swedish) by the Swedish hosting provider City Network for their blog. In the article I talk about the background of WireLoad and a bit about our network architecture and philosophy.

Read More

How to quickly slice wallpapers for a dual-screen setup

In this day and age, many people use multi screens in their setup. I’m one of those people. One thing that really bugs me in OS X however, is that you cannot set one wallpaper to expand beyond one screen. Let’s say you have two screens with 1920×1080 resolution and you have found a wallpaper of the appropriate dimension (ie. 3840×1080). Interfacelift got …

Read More

The 'pg_ha' project has moved to Github

I recently posted a rather lengthy article titled “High availability with PostgreSQL, PGPool-II and FreeBSD.” The article was a bi-product of setting this up and the blog-post was simply my own notes with some polish. Little did I know when I started this that I would end up having to write this much code to make the system behave the way I wanted. While …

Read More

Comparing MongoDB write-performance on CentOS, FreeBSD and Ubuntu

Recently I wrote a post titled ‘Notes on MongoDB, GridFS, sharding and deploying in the cloud.’ I talked about various aspects of running MongoDB and how to scale it. One thing we really didn’t take into consideration was if MongoDB performed differently on different operating systems. I naively assumed that it would perform relatively similar. That was a …

Read More

FreeBSD failover in the cloud -- UCARP to the rescue

I’m a big fan of FreeBSD. However, as painful it is to admit, it isn’t always the best OS to run in the cloud. Compared to Linux, you will get worse network and disk performance even with Virtio installed. There are also other issues. For instance, it is likely that you won’t get CARP to fully work (while this works perfectly fine with OpenBSD’s CARP, and …

Read More