It’s been about a month since I posted the initial overview and I thought it would be good to post an update of the progress. While I’ve not been able to devote 100% to this project over the last month there have been some significant improvements. The most visible ones are to the web interface. I’ve added a very flexible application level authorization system. I’ve also added an interface for managing one of the key inputs to the system with a protective 2 level approval process. I’ve also been tweaking the scoring system to better handle corner cases as I’ve seen them. Still plenty of work to be done but it’s starting to take shape. For the overview of this system check out my first post about it. Screen shots after the break.
Now and then I’m called on to help interview candidates for linux admin/engineer slots and as I’ve been doing some of that lately I thought I’d share the way I go about doing a technical interview. This approach seems to work equally well over the phone or in person.
I was called on to provide a method of alerting from within nagios that was more active and direct than the usual use of email or SMS messages. So I came up with a simple way to have a nagios notification place a phone call to our off hours tier3 support line to report certain very rare but serious problems.
One of the reasons I like and support the use of open source software is that you can avoid most of the drama that comes from relying on 3rd party vendors. By this I mean.. you must pay exorbitant sums for ongoing maintenance, you are locked into their product upgrade treadmill, you have little say in the direction of their products, you have a single source for support, and if your vendor gets acquired there is a very good chance the product you depend on will go away or change in ways that force you to abandon it with even more pain. I’ve seen this play out from both sides of the table having spent time in both enterprise environments and working for software companies.
I’m often ask what it is I do for a living… and being lazy I usually just say ‘computer stuff’. In an effort to provide a little more context to anyone who may be interested this is one in a series of postings where I’ll cover some aspect of what it is I do.
In my current role I spend part of the time doing development projects. (aka programming) I’m not a hard core developer though.. it’s not my full time occupation nor do I want it to be. I work mostly with perl and php when necessary, mysql and occasionally PostgreSQL or Oracle all under various flavors of linux. (debian is my favorite). Usually these development tasks are related to some sort of management automation for a global VoIP network but sometimes they involve making complex things easier to understand. Part of that involves automating the collection of large amounts of data and then presenting in a meaningful way so that problems and long term trends can be identified. What follows are some examples of the sorts of things I mean.
We have had a Power DNS recursing cacher deployed at one of our busiest sites for a few months now and I thought others might benefit from some real world performance info. This is running on some older hardware.. dual Xenon 2.8Ghz system with 4G of ram and the only job it’s doing is running this recursor. These three graphs tell the tale. The first shows that the system is handling peaks of about 3800 queries per second and that about 99% of those are being answered in a fraction of a millisecond. The second shows that cache hits are averaging about 70-75% and the third shows that it’s doing this work while using at most one quarter of the CPU. Add to those impressive performance levels that I’ve had zero issues since putting it in production six months ago.
I’ve been interested in small embedded hardware systems for a while. Until recently I was using OpenWRT on a reflashed Linksys box for my router. That worked.. but had limitations and since it isn’t an intel based system that means you have to cross compile anything you can’t find a package for. So recently I’ve been playing around with the new Alix boards from PC Engines. I ordered two model 2c3 boards which have 3 10⁄100 network ports, serial, USB, CF, and a mini-pci slot. In the case.. the boards are slightly bigger than a double thick CD case and only pull about 5w which is fantastic for any sort of solar/battery system (ie for outdoor wifi mesh network nodes). These boards are only about $130 and are ideal for all sorts of network related uses. Noticably absent are: vga port, pci or other expansion slots, power headers for disk drives.