[Release] – OpenNMS PRIS 1.1.0

We have release OpenNMS Provisioning Integration Server 1.1.0. Cause we had quite a big change in the code structure. We have now a clearer abstracted API for new sources and every data source we can integrate with is now a separate maven module. It makes it much easier dealing with technology specific dependencies. The documentation is now completely moved to AsciiDoc. This documentation is now also deployed in the archive, so if you have PRIS running in HTTP mode you can have access to the docs locally by going to http://your-ip:8000/documentation. We have introduced a new file and folder structure for requisition configuration and scripts, so please have a look at the migration instructions in the release notes.

The release of the project is done with Github and the OpenNMS issue tracker. Here can you find information about it:


Flattr the authorShare on Google+Tweet about this on TwitterShare on RedditDigg thisShare on StumbleUponShare on Tumblr

Something about OpenNMS and documentation

To help the OpenNMS project I spent a year together with Alexander Finger and Klaus Thielking-Riechert writing an OpenNMS book. We started with a development version of for 1.8 and tried to find a mixture between consistent slow changing and new concepts in 1.8. It was kind a complicated thing and from my point of view not perfectly done. Nevertheless I’ve thought about something like: “It’s about time writing a second edition covering the topics in coming 1.14?” The problem I’ve with books, it doesn’t allow contribution and hasn’t a really long life cycle. So I’ve decided instead of spending a year again writing a book, I want something which is more helpful to the project itself.

During my visits on different conferences like FroSCON, Linuxtage in Chemnitz and LinuxTag in Berlin, I tried to get in talks and met people working in the community area. Two things I’ve quickly recognized, one was the Open Stack project, which did a really cool job communicating about how to contribute in their project. The second one was a talk from Mikey Ariel a technical writer and documentarian at Red Hat, Inc. on LinuxTag in Berlin.

To get some feedback, I started an open discussion about documentation in the OpenNMS project with attendees at OUCE 2014 in Southampton. I was very happy and we had a very constructive conversation and people seems interested to help the project here. The status quo of our documentation is currently MediaWiki based collection of unstructured sometimes category tagged pages. On one side it makes it easy for people creating content and there is quite a lot of good stuff in the Wiki, but on the other side it is hard to find things. You have always exactly to know what term you have to search for and makes it hard to get an idea what OpenNMS is capable of. To address this issue I decided to spend the week at DevJam on OpenNMS documentation and my friend Markus von Rüden helped me a lot. He is a developer from hell and helped me a lot evaluating technologies and gave important input how to establish a process in an agile environment.

A few weeks later I got in contact with a guy worked at Juniper with OpenNMS and he asked to help us with this topic. I was amazed and used his positive feedback as trigger to get a documentation meeting set up. We used the opennms-discuss and move now this topic to opennms-docs mailing list. I’ve suggested a Google Hangout where we could explain a little about the experience we had what we have figured out during DevJam.

We have basically divided the documentation in two parts:

  • Wiki based documentation for tutorials and integration of OpenNMS with external devices, applications etc.
  • Source code based documentation which gives a complete reference how to configure things which is tightly based on a version of OpenNMS

For each of this components we created a Jira component to track issues against:

We started with a simple doable task like, document all existing monitors in OpenNMS with default, values and possible configuration parameters. It is our first little project we use to establish and model the process and also building the “How to contribute to documentation guide” which is currently a work in progress. The guys helping at the docs suggested to have a bi-weekley meeting and so I’ll drop a doodle at the opennms-docs mailing list to get a next appointment set up. If you are interested in join, the opennms-docs is a low traffic mailing list and this is the place to be in the loop if you are interested on this topic.

Thanks for reading and I’m excited about the help you guys who want to help

Have a nice day.

Flattr the authorShare on Google+Tweet about this on TwitterShare on RedditDigg thisShare on StumbleUponShare on Tumblr

!(I’m a DevOps-Guy)

 I started in 1998 in IT-Services and I did all the funny stuff – was involved building new networks for companies, migrated software from commercial vendors from version A to B to C to D and I have wasted too much lifetime on broken RAID 5s, backups and restores.

If you want to learn how to operate a computer network – this is a good place. You will be always called for the complicated problems nobody can solve with a simple Google search. You get also a good feeling, which solution is maintainable over a longer period of time. Fortunately people developing software experienced enough pain and started thinking about how to make code maintainable. Good developers realized years ago, people spend more time maintaining software than writing it. In my point of view an underestimated acceptance criteria in an “Agile” process ;) Since I spend more and more time in the OpenNMS project, I get much better an idea what the meaning about testing, documenting, Continuous Integration and Test Driven programming is. What people realize is a nameless magical connectivity between the guys who develop Things™ and the ones who bring them to production and the poor souls which have to keep it productive. In the late 90s there wasn’t a name for it. To make a good job Ops-Guys and the Dev-Guys have to work together – which wasn’t/isn’t a default behavior by nature.

With the vision of “Software Defined ${thing}” and tools like Docker, Vagrant, Chef and Puppet, Operators started using similar tools like developers and the term DevOps popped up.

Just the reason you treat your infrastructure like code and you commit your bash-Script or Chef cookbook with IntelliJ IDEA to a git repository don’t make your OpsJob automatically a Dev Job ;) Long story short: In my opinion and experience with operators and developers, DevOps isn’t a job title – it is a culture in your company where your developers and operators establish processes and work together.

Flattr the authorShare on Google+Tweet about this on TwitterShare on RedditDigg thisShare on StumbleUponShare on Tumblr

[Release] – OpenNMS emergency security release

This is an emergency security release which fixes a bug that could expose arbitrary filesystem data to logged-in users through the Web UI. Upgrading is strongly recommended.

For details on the issue, see: NMS-6580

Also, a reminder: as of OpenNMS 1.12.7 and 1.13.2, the way OpenNMS starts Jetty has changed, so if you have configured OpenNMS to use AJP, or used other esoteric tweaks to the Jetty configuration in opennms.properties, you will need to adapt them to jetty.xml instead. For details, see: Whats New in OpenNMS 1.12


Flattr the authorShare on Google+Tweet about this on TwitterShare on RedditDigg thisShare on StumbleUponShare on Tumblr

OpenNMS Dev-Jam 2014

We are right in the middle of our 5th season of the year – DEVJAM. It is always a lot of fun spending one week with people from all over the world on the campus of the University of Minnesota. I’ve put on my personal agenda for this week, spending time with the folks working on the way how we want to document our project. I try also to gather the project ideas and where they contribute the code to the project. Currently i try to get some updates from the progress through the opennms.eu page. We have the following topics on the list:

You find the current work of progress in the Github public code repository and the wiki pages get updated. If you want more direct contact. Please feel free to join the IRC channel on irc.freenode.net and join #opennms.

Happy hacking …

Flattr the authorShare on Google+Tweet about this on TwitterShare on RedditDigg thisShare on StumbleUponShare on Tumblr

[Release] – OpenNMS 1.12.7

Welcome to a new OpenNMS stable release with code name Bob Marley aka 1.12.7 in our repositories. The release fixes various bugs and has a few nice enhancements. It addresses mostly bugs displaying stuff in the WebUI if you have large sets of information. A null pointer exception bug for the ones how forward OpenNMS Events via Syslog to external systems using the Syslog Northbound is fixed.

Eventd and Vacuumd fixed a bug ignoring the reloadDaemonConfig event. An issue with large provisioning groups and WebUI crashes is fixed and you can create now Notifications with more than 4000 characters. A security cross site scripting bug in the WebUI is fixed. For the ones who run OpenNMS on Debian based systems, the dependencies to postgres are fixed to version 9.3.

The full list of bugs and enhancements can be found in the Relase Notes.

Happy updating …

Flattr the authorShare on Google+Tweet about this on TwitterShare on RedditDigg thisShare on StumbleUponShare on Tumblr

OUCE 2014 – Review

Ulf 2.0 and David

Ulf 2.0 and David

We have finished our 6th OpenNMS User Conference Europe. It was the first time we made a conference outside of Germany. We started with the first conference in 2009 when I worked at NETHINKS and begun with OpenNMS professional services. For the 3rd and 4th conference we decided to move the venue closer to the people organizing the conference and the IT center in Fulda was a really good place. In 2013 NETHINKS and the OpenNMS Foundation Europe worked together to move the organization of the conference to the community at the University of Applied Science in Fulda.

In 2014 we had our first conference out of Germany at the University of Southampton – United Kingdom, Great Britain, England, the Empire … whatever. We had attendees from 12 countries. The OpenNMS Group, Inc. showed the latest development sponsored to the project by commercial companies like the new Semantic Topology User Interface and the Operators Panel.

OpenNMS and OCS Inventory

OpenNMS and OCS Inventory

Additionally had a visit from three nice guys from OCS Inventory with an talk about OCS Inventory and practical workshop.

The crowd around OpenNMS is really amazing and we finished with an open discussion about the OpenNMS project from a community perspective. We came also around documentation where have really some issues about. So I decided to give a short overview how other projects handle documentation. I’ve spent the last conferences with sitting in “How to contribute” talks from OpenStack and ElasticSearch and they do really a great job when it comes around the community.

Sorry if you missed this great opportunity having the possibility talking with a lot of great people. We got all slides and they are available in our conference system. As soon we received the videos we will upload them to our OpenNMS Youtube Channel.

Thanks to all attendees for the great time

Flattr the authorShare on Google+Tweet about this on TwitterShare on RedditDigg thisShare on StumbleUponShare on Tumblr

RRDtool graph improvement

If you have OpenNMS with RRDtool running, you can improve the whole rendering a little bit just by replacing the command.prefix in the following files:

  • snmp-graph.properties
  • snmp-adhoc-graph.properties
  • response-graph.properties
  • response-adhoc-graph.properties
command.prefix=/usr/bin/rrdtool graph - --imgformat PNG --font DEFAULT:7 --font TITLE:10 --start {startTime} --end {endTime} -E --width=1000 --height=180

I don’t like the stamp size graphs in OpenNMS, so I changed it for all. It could be problematic if you have grouped graph report (KSC report). So if you have trouble, you can just remove the –width and –height parameter. The command will also overwrite the width and height for all graphs, so they have all the same size. You have to be careful if you have KSC reports with multiple columns. If you have RRDtool running, you can improve the graphs with anti-aliasing using a few additional parameters:

command.prefix=/usr/bin/rrdtool graph - --imgformat PNG -R normal --font-render-mode normal -l 0 -E --font DEFAULT:7 --font TITLE:10 --start {startTime} --end {endTime} -c ARROW#5e5e5e --width=1000 --height=180

Default graphing

Default graphing (Click to enlarge)

Graphing with better font rendering and anti-aliasing

Graphing with better font rendering and anti-aliasing (Click to enlarge)

Flattr the authorShare on Google+Tweet about this on TwitterShare on RedditDigg thisShare on StumbleUponShare on Tumblr

Chemnitz Linuxtage 2014


clt2014_gp_coverLinux Days 2014 are over and here comes a short personal résumé. The conference was great and I met a lot of nice people. I have some non-german friends, so I switched the article to my bad school english – sorry about that. The first talk for me was “Amazon Linux – The operating system for the cloud”. It was quite interesting to have somebody who starts provide a slim virtual environment optimized, RPM RHEL binary compatible, distribution with more up-to-date packages. The main issue, it is only and really only available for EC2. I asked if they plan to free their distribution for other Cloud platforms like Open Stack or Cloud Stack – result – not on the road map and even not planned :/ If you start investing time and energy building or moving to a cloud infrastructure, you don’t want to be locked-in. In my opinion the main real killer feature of all the cloud hype is the beginning of standardizing API’s for a software defined vendor independent infrastructure. It allows me to move or scale whenever I want (or external dependencies like electricity cost, availability, compute/network/storage prices are good for me) my services and data seamless to the provider nevertheless if it’s Amazon, Microsoft, Rackspace or my privately owned infrastructure.

The next talk was really was about NeDI with the topic Network Discovery that Really Works from Dr. Michael Schwartzkopff. I know the speaker is familiar with OpenNMS and it would be nice how he presents the NeDI key-features. With our new geographical map, linkd and the new topology map in OpenNMS-SNAPSHOT, we cover some similar use-cases. What kind a cool feature in NeDI is, the possibility making a trace route through a really complex topology in real time and filtering the big topology on different criteria, e.g. vendors, locations or branch offices. They even start to monitor services and collect massively data for network interfaces. The approach is similar to OpenNMS using SNMP using CDP and LLDP for discovering the network topology. In OpenNMS the approach for working with the topology is a little bit different and covers more monitoring related workflows which you can compare by your self here:

Beside my work with computer network and monitoring stuff, I’m also interested in social, political topics around free software and also network neutrality. My friend Sven showed me an interesting project called Freifunk which is a non-profit foundation about building a citizen self driven meshed wireless network. I’ve talked with a few guys at FrosCON and on the Chaos Communication Congress 30C3 in Hamburg. What I really like about it, they start to become really creative, developed new protocols as free software and they solve really big special network problems. So it was cool see a talk from Freifunk in Chemnitz about the special developed Wife-Meshing protocol B.A.T.M.A.N.. They run a really large free community network with 180 Wifi spots and 7000 active sessions. What’s even better, they where able to get support from the city administration which gives them the possibility to place Wifi antennas on public buildings. It would be interesting to know if this is just a east-german phenomenon. Maybe I like monitoring for the reason, I love the network domain, distributed systems, free software and working with smart good looking people which brought me to the OpenNMS project.

The second day had very special topic on my agenda – PostgreSQL: Killing NoSQL. It was a talk from a 15 year experienced PostgreSQL pro and it was a really refreshing talk. He explained some nice stories about customers starting a phone call with something like: “We want to scale like Facebook” and he explained all the NoSQL hype on the level I prefer – ACID vs. BASE and Brewers CAP theorem. He talked about what happen if you try to use the wrong concepts for the wrong use-case and how to prevent you to end up in a real mess also regarding structured vs. unstructured data. He gave also an overview about interesting technologies added to latest PostgreSQL like asynchronous processing facility called PGQ and Postgres-XC which adds read/write scalability to Postgres. This talk had a lot of cool content and he showed – in my point of view a little bit scary example – how flexible Postgres can be with e.g. mongres.

The last talk I’ve seen was how to migrate 500 servers in 3 days with 150 people and what they have learned but to me not interesting enough. They moved 500 server from XEN to VMware and described the planning and what problems they had. It was not that interesting to me as it sounds, so I left the talk after 15 minutes.

They had a big book shop and it was really cool to see a book you wrote on the table. I can’t deny during my 4h travel back home thinking about writing an improved second edition for OpenNMS 1.14. I know there is so much stuff missing in the current book, but why not just go the next step and improve … opennms-sell It was a really cool conference and I’m thinking about giving a talk or a workshop about OpenNMS next year. I like the atmosphere and the University in Chemnitz is a really fancy modern location – if you think about an entrance fee of 8,-€ for two days, it is amazing. Thank you for the cool conference to the CLT-Team and hope see you again next year.

Flattr the authorShare on Google+Tweet about this on TwitterShare on RedditDigg thisShare on StumbleUponShare on Tumblr