We're rewriting our network stack in Icinga 2.11 in order to to eliminate bugs with timeouts, connection problems, improve the overall performance. Last but not least, we want to use modern library code instead of many thousands of lines of custom written code. More details can be found in this GitHub issue. From a developer's point of view, we've evaluated different libraries and frameworks before deciding on a possible solution. Alex created several PoCs and already did a deep-dive into...
Michael Friedrich
Alles von diesem Author
Continuous Integration with Golang and GitLab
Today you not only develop code and collaborate with other developers in your Git branches and forks. In addition continuous integration helps with "instant" compile and runtime tests. Which Git commit caused a failure, are there any performance changes with the recent code history? Today I want to dive into our latest insights into Golang and building our code inside GitLab on each push and merge request. Golang extensively supports unit tests and also their analysis with coverage tests. This...
Replace spaces with tabs in Visual Studio 2017
Visual Studio has several source code edit settings. This defaults to 4 spaces and no tabs by default and is slightly different to what we use in Icinga 2. There we put focus on tabs in our code style. Editing the Icinga 2 source code on Windows with Visual Studio requires adjusting the editor settings. Navigate into Tools > Options > Text Editor > C# and C++ and adjust the settings to "Keep tabs". I accidentally...
Secure Elasticsearch and Kibana with an Nginx HTTP Proxy
Elasticsearch provides a great HTTP API where applications can write to and read from in high performance environments. One of our customers sponsored a feature for Icinga 2 which writes events and performance data metrics to Elasticsearch. This will hit v2.8 later this year. We're also concerned about security, and have been looking into security mechanisms such as basic auth or TLS. Unfortunately this isn't included in the Open Source stack. Why should you care about securing...
Awesome Dashing dashboards with Icinga 2
We at NETWAYS are using Dashing on our office dashboards already. This blog post solely targets integrating yet another new API providing data - the Icinga 2 REST API introduced in v2.4. The following instructions were taken from the existing Vagrant boxes and their puppet manifests to allow faster installation. Doing it manually shouldn't be an issue though 😉 Requirements Ensure that the following packages are installed, example for RHEL 7 with EPEL enabled: package { [ 'rubygems',...