Archive

Posts Tagged ‘OpenNMS’

AUUG talk notes: Centralized logging and syslog-ng

October 6th, 2009
Comments Off

Last night Bobby, Jason, and I returned to our old habit of attending a monthly meeting of the Atlanta UNIX Users Group. Returning speaker Ryan Matteson gave a rather informative presentation on the topic of Centralized Logging with syslog-ng. I’ve used syslog-ng on and off over the years, and we recommend the GPLv2 version to our services and support customers for use in conjunction with the syslog listener built into OpenNMS. Despite all this, I had never had a proper introduction to syslog-ng, so this meeting was one not to be missed.

Taking a cue from DJ’s recent post, I’m putting my notes from the talk online. Ryan has also put his slides online, so there’s not much marginal value in the following except for a couple of verbal comments that I rolled in.

Read more…

Geeky , , , , ,

Atlanta Linux Fest 2009

September 23rd, 2009
Comments Off

The second annual Atlanta Linux Fest took place this past Saturday, the 19th September 2009. IBM was gracious enough to provide the facility, and Canonical and eApps also provided major sponsorship. The show was a success by all measures, well exceeding the organizers’ expectations. The official attendance numbers have not been published, but I have heard numbers between 600 and 700 — not bad for a show only in its second year and that fell on a very rainy day!

At Nick’s request, I had convinced Tarus to give a talk, and I pretty much unilaterally decided that OpenNMS would also be an exhibitor. We scored an absolutely prime spot in the exhibit area and drew in lots of traffic. Our good friends Mita and Robbie at Presentation Rentals (which sponsors ANSMTUG monthly) got us a great deal on a big monitor on which we ran our loop. My amazing wife volunteered to help out with the booth, her first time ever “wearing the shirt” though she’d hung out with us last October at a show in London. We always like to have as many community members representing as we have OpenNMS Group employees, so I recruited local friends Bobby and Robert to help man the booth. I’m confident that each of them fully earned a 100% commission on the free software he sold that day.

A plethora of Papa John's pizza pies, constituting lunch at Atlanta Linux Fest 2009

A plethora of Papa John's pizza pies, constituting lunch at Atlanta Linux Fest 2009

This show was the project’s first in Atlanta, and as happens in every new city, people came out of the woodwork who use OpenNMS to keep the IT infrastructure running smoothly at local companies that we previously had no idea were part of our user community. It turns out that Georgia Tech, which hosted last year’s Dev-Jam, is a user, as is Georgia Power. Less widely known users that we learned about include the company that provides the data underlying Google Maps‘ and other providers’ integrated roadway traffic services. I hope that some of these people will join the Order of the Blue Polo, especially since both my wife and Bobby were modeling the shirt in question. It’s fitting, and a testament to the show organizers’ excellent taste, that lunch came from a company represented in the OBP.

It was such a busy day for us that nobody had time to snap any pictures of our booth! We were fortunate enough to have, in the booth adjacent to ours, shutterbug Jane Ullah, who captured three of us loafing during a lull in the show traffic. If some images emerge that paint us in a less idle light, I’ll update this post to include them :)

Food, Geeky, OpenNMS , , , , , , , , , ,

Nominations Open for SourceForge.net Community Choice Awards 2009

May 14th, 2009
Comments Off

Last week, SourceForge opened nominations for the 2009 Community Choice Awards. These annual awards provide a chance for the larger open source community to recognize the projects that they get the most out of. The OpenNMS project has made a strong showing in past years in the “Best Project for the Enterprise” category: a crowded field to be sure, but we think the most appropriate for a product that spans so many of the other categories.

If you use and love OpenNMS, you can help by nominating the project yourself — just click either of the logos below, then select “Best Project for the Enterprise” from the drop-down list. Thanks in advance!


If you’d like to pass along the word, here’s some HTML that you can paste into your own blog or other web page:


<a href="http://sourceforge.net/community/cca09/nominate/?project_name=OpenNMS&project_url=http://sourceforge.net/projects/opennms/">
<img src="http://sourceforge.net/images/cca/cca_nominate.png" border="0"/></a>

OpenNMS, Software , , ,

How I configured OpenNMS to monitor Twitter

May 13th, 2009
Comments Off

Shortly after Tarus published this post, I received a Twitter DM from Esmir Alemic asking if I would mind sharing the configuration for the Twitter service monitor. I tried to post this as a comment to Tarus’ post, but my pre-formatted HTML got stripped out. So here it is. I used the Provisioning Groups feature to create the twitter.com node and Twitter service, which in OpenNMS 1.6 requires the addition of a dummy protocol plugin to the capsd-configuration.xml file (in 1.8 you’ll be able to do this using Provisiond instead):


<protocol-plugin protocol="Twitter" class-name="org.opennms.netmgt.capsd.plugins.LoopPlugin" scan="off" />

The real magic lives in the poller-configuration.xml file. Define the Twitter service in the appropriate package (beware the default-empty “strafer” package):

<service name="Twitter" interval="600000" user-defined="false" status="on">
<parameter key="retry" value="1" />
<parameter key="timeout" value="5000" />
<parameter key="page-sequence">
<page-sequence>
<page path="/twitter" port="80" successMatch="(?s).*<title>Twitter \(twitter\) on Twitter.*"
virtual-host="twitter.com"
user-agent="OpenNMS/1.6 (JVM; I; Most Any Platform; en-us)" />
</page-sequence>
</parameter>
</service>

Finally, don’t forget to tell the poller which monitor class to use for the Twitter service:


<monitor service="Twitter" class-name="org.opennms.netmgt.poller.monitors.PageSequenceMonitor" />

I used the PageSequenceMonitor rather than the more basic HttpMonitor because I plan on coming back later and making the page sequence include logging in to a Twitter account, verifying that some more sophisticated tests pass, and logging out again.

OpenNMS , ,

Feeding the Ecosystem vs. Feeding the Trolls

March 9th, 2009
Comments Off

One of the lists that I read, and occasionally post to, is asterisk-dev. I usually don’t have time to follow the discussion closely, but this morning Russell posted (and blogged) about the possibility of the Asterisk project getting involved with Google’s Summer of Code this year. Russell solicited input from the list on projects that people would be interested to see worked on and, more importantly, willing to mentor. The OpenNMS project (which my employer sponsors and helps maintain) was a mentoring organization in the 2008 GSoC, so I sat up and paid attention.
Read more…

Geeky, OpenNMS, Software, VoIP , , , , , , , , ,

Regarding “The Most Free(tm) Way to Make Money from Open Source”

February 28th, 2009
Comments Off

I was going to hold off until Tarus had a chance to respond to Luke’s post, but I’m guessing Tarus is away from the intarwebs today. After having trouble posting my comment (probably just too long to be accepted) on Luke’s blog, I’m doing it as a post here on my own.

Without presuming to speak for Tarus (Ben and I both work with Tarus and so are quite familiar with his philosophies) I’d like to lay out a few places where I think Luke’s post missed the mark. These thoughts are ones that I really wanted to get across in person during our brief conversation in January after Luke’s talk at CloudCampATL, but I didn’t want to hog his time.

My points follow.

  1. Open-core is not invalid as a business model, it’s just not the same as open-source
  2. Tarus’ campaign is not against the open-core business model itself. It’s against open-core companies that want to have it both ways by playing the necessary-feature-withholding game but still calling themselves “open source companies”. It’s not about hate but about calling something what it is.

  3. Joint ownership of copyright and why we as a project sponsor pursued it
  4. As the maintainers of OpenNMS, we do require all contributors to execute an agreement that concerns copyright. It’s not about attribution or assignment, though, as assignment in particular is essentially impossible under current U.S. copyright law. It’s actually about declaring a shared or joint copyright. A contributor who executes the OpenNMS Contributor Agreement (which Tarus blogged about here) forfeits exactly zero rights while simultaneously granting us the same set of rights that the contributor has. The contributor is still free to do anything he wishes with his contribution — license it commercially, give it away under a non-GPL-compatible license, print it out and roll a joint with it, or (gasp) also contribute it to Hyperic. That point was key in our selecting this agreement, which as Ben pointed out earlier is literally the Sun Contributor Agreement with e-mail and fax information added and “Sun Microsystems”, “OpenSolaris”, and “California” changed to “The OpenNMS Group”, “OpenNMS”, and “North Carolina” respectively. We were incredibly hesitant to add this kind of requirement, and we didn’t do so unilaterally. When we went shopping for an agreement, we created a committee of non-employees from the Order of the Green Polo (the secret society of core OpenNMS contributors) to do the research and waited months for them to make a recommendation — they all have day jobs, after all. We knew that we ran the risk of pissing off and maybe even running off valuable community members, something that thankfully did not happen. Even with OCAs on file for all our contributors, we still don’t hold all the copyright since we inherited the code from the original creator, Oculan (formerly PlatformWorks, then Atipa, now part of Raritan through subsequent acquisitions). Raritan doesn’t want to sell us the intellectual property for one dollar, so we couldn’t do anything evil with the code today even if we had the desire to do so.

    At the end of the day, our motivation for adding the OCA was about protecting the community, not about enriching ourselves. Having all the rights conferred under U.S. copyright law is the only way that we as a company can take legal action to protect the community from having its work (allegedly!) ripped off by people whose primary interest actually is self-enrichment. it’s incredibly tricky to pursue a GPL-violation lawsuit when you don’t hold copyright on your entire code base. Having an OCA for each contributor means that if the project ever has to appear in court, we don’t have to go broke flying everybody who’s ever contributed code to the venue. One other thing that a folder full of OCAs allows us to consider doing is offering patent indemnification to our support customers.

  5. Making money selling software, and pragmatism
  6. As far as development costing money, The OpenNMS Group is in exactly the same boat as Reductive Labs. We’re not running a charity either, and we’ve all got heads full of ideas that we just don’t have the resources to translate into code. It takes real discipline when you love the project as much as I do to put off work on an amazingly cool feature until we find somebody willing to fund it, and go work on weatherizing the damn house instead (which I should be doing right now). Would we ever sell some software? We’ve talked about it, but we would never sell OpenNMS to end users. If we held all the copyright would we maybe license the code commercially to, hypothetically, HP as the foundation of a completely redone OpenView Network Node Manager? Only if the community were on board, and the version HP got would be exactly the same as the GPL version, and we’d plow almost every penny of profit back into the project the same as we do today. This all in keeping with our promise that “OpenNMS will never suck, and it will always be free.”

  7. Supported binaries and what we’re willing to support
  8. Luke refers to a model of producing supported binaries — which we do, but we also are just as happy to support a customer who builds everything from source. There’s no shrink-wrapped version of OpenNMS is what I’m getting at here, and if there ever is, it won’t affect our willingness to support people who roll their own. We even support customers who make substantial changes to the code provided they purchase a Developer Support agreement in addition to Basic or Enterprise support. Digium is going through a transition to a similar model right now — they’re about to start offering support contracts for GPL Asterisk where they previously offered support only as part of the cost of the shrink-wrapped Asterisk Business Edition. While I wish we had something like Digium’s hardware revenue stream to draw from, I do think that their move is something of a validation of our model.

  9. The greater sin is (C), both of the above
  10. Last item, and this one’s actually way more than just the semantic distinction that I thought it would be when I wrote this paragraph the first time. Luke asks, “Is it a greater sin to only accept patches to your product if the contributor is willing to assign copyright to your commercial company, or to produce some closed-source code?” I would like to point out that the open-core guys, in our sector at least, are doing both. See Zenoss‘ and Hyperic’s terms. In so doing, these guys are accepting code from the community and reserving the right to roll it into their closed-source code.

Geeky, OpenNMS, Software , , , , , , , ,

Network Health (reprise)

January 16th, 2009

A certain kind of person will recognize the title of this post as the name of the software suite originally known as TRAKKER, and subsequently as eHealth. That kind of person will have worked in the network management sector during the late 1990s and early 2000s and been exposed to this product line from Concord Communications. That’s no mistake – I spent five formative years working at Concord deploying, customizing, and developing various products within the suite before CA acquired the company in 2005 and I got chosen for the first round of layoffs.

Despite the title, this post is not about looking back at a piece of software that helped define an important part of my past career. It’s about looking forward to the amazing ways that OpenNMS is continuing to define both my own future and the future of organizations that are staffed by people smart enough to choose it as their primary IT management platform.

I just got off the phone with a customer who works for a non-profit regional health system in metro Atlanta. Now you understand the post title! This organization has been using OpenNMS for years as an adjunct to an expensive commercial management platform whose name rhymes with “FrogLight”. Recently the IT department hired a particularly smart and good-looking bunch of people who decided to migrate the management of all internal networks, systems, and applications to OpenNMS. These folks recognized that such an effort is best accomplished with expert help, so they engaged my employer to provide professional services and technical support.

The subject at hand for the phone call just completed was to help configure OpenNMS to monitor a pair of metrics, namely the number of files and the age of the newest file in a particular directory on a Windows file server. That directory serves as an incoming queue for job processing. If the file count exceeds some maximum number, or if the newest file is older than some maximum age, then the application consuming the queue is known to be headed for trouble, so the application administrator wants to know about it. While this problem is fairly mundane, solving it without installing extra software is hard! The SNMP agent that ships with Windows is not extensible via simple scripts, so there’s no easy solution analogous to extending the Net-SNMP agent’s MIB.

We thought at first that OpenNMS’ support for the NSClient++ quasi-agent would do the trick as a one-off, but it turns out that this approach would require extensive configuration on the managed side, and the customer wanted to avoid the change management impact of installing a package that existed nowhere else in the environment. In the end, we conscripted IIS, which was already installed and running on the managed server, into service as a stand-in agent by whipping up an ASP that prints the two metrics’ values as a simple web page. We configured OpenNMS’ HTTP Collector to pull in the values as first-class node-level performance data. From there it was a simple matter of configuring two high thresholds to compare the collected values in real time against the acceptable maximums.

Apart from knowing that physicians get cranky when they don’t get serviced quickly, I have no idea what kind of jobs pass through the queue that we’re now helping our customer better manage. All that matters from our perspective as a company is that our efforts are helping a bunch of physicians work more efficiently. That fact could come home to me someday since the nearest hospital to my house is part of the customer’s system, and I want any physician who’s working on my body to be happy with the tools at his or her disposal.

This story is just the latest coup in a series that started when the customer’s IT department decided to consolidate management and monitoring onto OpenNMS. After we ironed out the last configuration details of the support ticket at hand, my contact let me know that he would be opening several additional tickets over the coming week. It’s not that he’s having problems with OpenNMS, but that his colleagues are lining up to discuss problems that they think OpenNMS could help them solve. We’ll be here to help him stay on top of that queue as well, which means that our contact will stay happy with both OpenNMS and our support services, which help him apply OpenNMS to meet his job objectives. Because all of OpenNMS is OSD-compliant free and open-source software, its functionality comes at no cost beyond the hardware and staff required to operate it, which means that our customer’s management and board of directors stay happy. Happy management tends to have no reservations about writing a check when the time comes for support renewal.

Geeky, OpenNMS, Software ,