Ubuntu FTW

Okay, I’m both tired and hoarse. I’m hoarse from teaching class all day, and I’m tired because I didn’t get to bed until 1am last night.

The last part was due to my inability to get Fedora to run on our classroom machines.

Usually, it is quite simple. I do a fresh install of Fedora, yum upgrade, add the repos for rpmfusion, install the drivers for the ATI cards and the Broadcom wireless interface and I’m good to go.

Starting at about 11am on Sunday, I downloaded Fedora 16 and installed it. This time it complained about the need of a 1-2 MB “BIOS” partition – something about how Fedora is handling GPT partitioned disks. Anyway, that didn’t seem to work since every time I tried to boot it ended up booting from the wrong partition (into Windows).

I decided to punt on Fedora 16 and went back to Fedora 15. That seemed to work okay, but after the couple of hours it took to install and upgrade, it turns out that the rpmfusion packages have, once again, not been updated to match the current kernel. It also seems impossible to set it up so that the correct kernel can be installed. As I mentioned above, usually the kmod packages “just work” so I was stuck trying the akmod packages which, in my experience, never work.

By now it’s time for supper, and when we got back I decided to try Ubuntu (I had five students showing up Monday morning and I needed something). I used to use Ubuntu years ago as the training distro, but Canonical made a questionable hiring decision and I ripped it out. That person flamed out pretty spectacularly, and since I’ve been using Ubuntu over the last nine months or so off and on I was curious as to how easy it would be to install.

Piece of pie. Easy as cake.

With the exception of having to add the “nomodeset” option to the initial kernel boot, it “just worked”, but it took us several hours to finish all six machines.


So, it’s another win for Ubuntu – my new default distro for training.

As far as the class goes, we have a great group. We have two people who are somewhat local coming up from Lumberton, NC. We also have one guy from Chicago who works for Sears (a commercial support customer) and two people all the way from Mellerud, Sweden – one of whom was a FIFA referee for five years. I keep threatening to hand out red cards.

It should be a fun week. Jeff is team teaching this with me, so I believe my voice will hold out.

I’m not sure if the class is rooting for that, however.

Back to Ubuntu

Just a quick update on my #noapple efforts. Except for one lapse I’ve not been regularly using OS X since last summer. For the last several months my desktop of choice has been Gnome 3 on Debian testing (wheezy).

Due to the tight integration with the rest of the desktop and its ability to integrate well with our middleware solution (SOGo) I was using Evolution mail. I had heard it could be buggy, but for weeks I had no problems, plus I liked the fact that it was easy to play sound files in-line without launching another app (which I have to do with Thunderbird). Our Asterisk PBX sends voicemails as attachments.

But something happened after the last update and Evolution kept crashing. It was sporadic at first, but then it happened so often I’d launch it via the Gnome debugger. Surprisingly, when I did that it was stable, but after awhile it would die even in the debugger. I did a search on the error and found out that it had been reported as a bug, but it didn’t seem to have any activity on a fix.

Since I can’t live without e-mail, I needed something else. I’d seen some interesting things about Ubuntu 12.04 so I thought I might give that a shot. Of course, there must be something wrong we me, as the businessman wants something stable that just works and the geek wants the new shiny, and here I was willing to run another testing desktop.

Lucky for the businessman, the 12.04 Alpha 2 installer kept dying on me.

The reason I left 11.10 was that SOGo did not have a frontend for the version of Thunderbird that came with it. However, that has now changed, so I went back.

I missed Ubuntu.

If you have been a longtime OS X user, Ubuntu with Unity is about the closest you can get to that experience (pre-Lion of course since Lion sucks). I had everything up and running in about an hour, and over the weekend I based my other two machines and put 11.10 on them (still didn’t fix my line-in audio problem on my iMac, however).

So I’m back to drinking the Ubuntu Kool-aid, which is cool. What I love about open source is the plethora of choices.

Chatham Park

I really do enjoy where I live here in Chatham County, just outside of Pittsboro, North Carolina. It’s a beautiful and beautifully rural area, but it is also very close to the Research Triangle Park. I’m able to live on a farm where I can’t see my neighbors, but I am an easy ride away from several cool cities as well as the airport.

This came in handy last night.

Back in 2006 we got an order for a Greenlight project from Brigham Young University. I was the lucky one to take the call, since the on-site work was scheduled for their Hawaii campus and I got first shot at the trip. I had an amazing time and still have fond memories of both Hawaii and the customer.

It turns out that the main person I worked with there has taken a job with IBM and happened to be in town. We were able to get together for dinner, and we spent a couple of hours catching up.

This morning I got a note from another friend, someone I’ve known for over 20 years but haven’t seen in almost ten, and she’s coming to the area soon as well. She lives in Australia, so it’s not just a “stopping by” kind of trip.

Suddenly, it seems like this area is a hotbed for business travel.

One of the anchors of tech in the area is SAS Institute in Cary. It’s founder, Jim Goodnight, is also real estate developer through his Preston company. For the last ten years he has been buying up land in Chatham County – lots of land. No one was really sure what his plans were.

Many years ago in another life I did a two week OpenView install at SAS. It’s a really cool place to work. I even had lunch with Goodnight. Well, I was on the balcony upstairs in the dining room and he was downstairs, but it was lunch time and we were both eating in the same room, so it counts (grin).

Yesterday, David sent me a link to this video which details the impressive goals of “Chatham Park”.

CHATHAM PARK from Preston Dev on Vimeo.

I have mixed feelings about this. While I’d love for Google to come and snatch up 800 acres for a new campus, I’m certain that would bring huge changes to the area. Plus, we as a community can barely provide services for the people here now – there would need to be major upgrades to the infrastructure, especially water and water treatment. I get my water out of the ground, and it is amazingly clean and tasty, and I would hate for development to stress the aquifer (or any of the proposed fracking projects to gain momentum).

Finally, my understanding of the developments done by Preston in the past they’ve been very focused on housing, golf courses and shopping – not business. I definitely do not want Chatham to become another bedroom community for RTP, and the focus on location in the video seems to imply that housing will be a larger selling point than trying to land a large technology campus.

But I’ll withhold judgment until I see how it plays out. In this economy things will move slowly enough, but I do care what happens here – more so than any other place I’ve lived – so I am hoping for the best.

Order of the Blue Polo: Bill Daniels

I just added a new person to The Order of the Blue Polo: Bill Daniels.

Bill works for Vision Net in Montana and is responsible for managing their Enhanced 911 infrastructure. For those of you outside the US, 911 is the emergency telephone number for police, fire and amublance, similar to 112, 999 and 000 in other countries.

It was cool to get his e-mail for a couple of reasons. First, we haven’t had an Order of the Blue Polo submission for awhile now. In exchange for his story, he got a really nice, limited edition, royal blue OpenNMS polo shirt, and this is open to anyone who is willing to tell us about why they like OpenNMS. The only caveat is that for these stories to be perceived as genuine as possible, we ask that we be able to publish your company name. With all the astroturfing going around these days, being able to actually name a company goes a long way.

Second, one of my jobs at Northern Telecom was working on E911 software, so when he wrote to me about his PSAP project, I knew exactly what he was talking about.

Finally, even though at 627 nodes his installation isn’t large by OpenNMS standards, those devices would add up if choosing a commercial solution. One vendor charges US$150/managed device which would be over US$94,000 per year whereas Bill is able to get all of that functionality for free.

I’m happy Bill took the time to share and I hope he enjoys his shirt. I’d love to be able to send out more, so please send in those stories.

OpenNMS Presentation by Dell India

Markus sent me a link to this cool presentation on OpenNMS given by Dell India at the Open Source India conference last November. It runs a little of a half hour long, and it’s a pretty good overview of the application.

Opennms & Network Management Interoperability_OSI-2011 from EFY on Vimeo.

I love stuff like this. When you work in open source software you never know where it is going to end up and how it will be used. It’s great to see someone adopt our work and to find it useful.


A couple of weeks ago I had breakfast with some venture capitalists. One of them was joking about how a lot of start-up companies tend to constantly change their marketing message to fit in with the fashions of the day while the underlying product is basically the same, and that sort of stuck in my head.

I decided it would be fun to track the taglines of a venture-backed commercial software company in the same space as OpenNMS. This is what I found:

  • 2006 Sep: Enterprise Monitoring (minus the cost and hassle)
  • 2006 Nov: Open Source Enterprise Monitoring
  • 2007 Jun: IT Monitoring & Management powered by Open Source
  • 2007 Jun: Open Source Network & Systems Monitoring
  • 2007 Jul: Open Source Network Monitoring and Systems Management
  • 2007 Aug: Open Source Network & Systems Monitoring
  • 2007 Sep: Open Source Application, Server and Network Management
  • 2008 Jul: Commercial Open Source Network, Systems and Application Monitoring
  • 2008 Oct: Commercial Open Source Application, Systems and Network Monitoring
  • 2009 Oct: Commercial Open Source Monitoring and Systems Management Software
  • 2010 Jan: Open Enterprise Management
  • 2011 Mar: The Cloud Management Company
  • 2012 Jan: Transforming IT Operations

OpenNMS Version 1.10 Released

I am happy to announce that we have officially released OpenNMS 1.10 – the first new stable release since June of 2010. A lot of work went into this release, and although the web user interface has not changed much, this version of OpenNMS should be more stable and better performing than any version before it.

We delayed the release by 10 days in order to improve the documentation on the wiki, where you can also get the full release notes

What’s New in OpenNMS 1/10

Architectural Changes

IPv6 Support

The OpenNMS core was completely refactored in 1.10 to deal with IP addresses in a consistent manner, including adding complete IPv6 support. You should now be able to use IPv6 addresses anywhere you would use IPv4 addresses in 1.8. Additionally, Provisiond can scan the newer IPv6-capable IP-MIB to detect IPv6 interfaces on provisioned nodes.

IPv4 and IPv6 ICMP (ping) support can be configured in the “opennms.properties” file in $OPENNMS_HOME/etc.

Database Schema Management Improvements

The Liquibase database management introduced in 1.8 has been improved, and thanks to a newer Liquibase core, is much faster.

XML Serialization Updates

A number of configuration classes which used Castor for serializing configuration files have been updated to use JAXB instead, which gives us a lot more flexibility in how the configuration objects are dealt with.

Web UI Infrastructure Updates

A number of changes have happened in the Web UI core, including more GWT-based components, and removing our old Ext-JS-based UI elements.

Logging Updates

Logging has been cleaned up significantly in a number of places since 1.8, which should make it easier to debug problems.


Each compile of OpenNMS 1.10.x contains 20% more love than 1.8.

Updated Features


While there has previously been support for Drools for doing complex business logic based on OpenNMS events, it was non-functional in 1.8 because of some incompatibilities in a number of OpenNMS’s dependencies. The Drools engine has been cleaned up and is working properly. An overview of using Drools in a modern OpenNMS install is available in the March 14th, 2011 TWiO.

Major Reporting Engine Updates

The Jasper reports introduced in OpenNMS 1.8 have gone through a number of significant updates, including adding support for report parameters, as well as retrieving RRD data in reports.

Instrumentation Log Reader Updates

The instrumentation log reader (used for evaluating collection performance) has been updated to include a web UI. It also supports a number of options for filtering and sorting collection times.

Link Daemon Refactoring

Linkd, the OpenNMS link daemon, has gone through a huge refactoring. While the existing Linkd in 1.8 worked for some people, there were a large number of use cases that should have worked that just plain failed. Linkd went through a lot of cleanup, and should work to detect links for a lot more devices, especially with force-ip-route-discovery-on-ethernet set to true.

Provisiond Overhaul

Provisiond has been through a ton of cleanups and fixes. Besides IPv6 support, a lot of corner cases in provisiond behavior have been resolved.

Also, detectors have been implemented for every service that Capsd supports.

Asset Management

Asset management data has been expanded to include a number of new attributes, and the asset management UI has been updated.

Syslogd Overhaul

Syslogd has been refactored to improve performance and add support for better parsing of known formats including SyslogNG and RFC 5424 messages. See the comments in “syslogd-configuration.xml” for details.

HTTP API Updates

Our HTTP code has been updated to use Apache HTTP Components rather than the older HTTPClient API. In addition, we support relaxed standards for SSL certificates when making HTTPS connections.

Data Collection Updates

In addition to the configuration file changes, support for the new “PersistRegexSelectorStrategy” gives you more control over what data is persisted when doing data collection. And example would be the Net-SNMP configuration for disk IO, in “$OPENNMS_HOME/etc/datacollection/netsnmp.xml”, which lets you ignore “ram” and loopback devices when persisting.

Configuration File Updates

Split Configuration Files

A number of configuration files now support being split up into multiple files for ease of maintenance, to continue work done to the event configuration in 1.8:

  • datacollection-config.xml
  • snmp-graph.properties
  • syslogd-configuration.xml

Many Updates to Device Configuration

Many new additions and fixes have been made to event configurations, data collection, thresholding, and more.

New Features


While ICMP (ping) still relies on some native code, we have added an alternate ICMP strategy which uses JNA. It supports both IPv4 and IPv6, and can be run straight from Java code without installing a corresponding native component. While it is not enabled by default (the JNI implementation of ping is still more performant), it can be used by remote pollers for doing ICMP availability.

New Plugins and Monitors

  • DNS resolution monitor, for testing V4 or V6 DNS resolution
  • LDAPS plugin and monitor, for monitoring LDAP-over-SSL
  • Selenium monitor, for doing complex scripted web site monitoring using Selenium

ReST Service Additions

A number of new ReST services have been added:

  • /rest/stats/alarms – retrieve statistics on alarms (newest, oldest, acknowledged and unacknowleged)
  • /rest/remotelocations – retrieve remote poller availability information
  • /rest/sched-outages – retrieve scheduled outage information