If you're running Icinga in a mid-to-large organization, chances are your users and teams are already defined in LDAP or Active Directory. Manually re-creating contacts and contact groups in Icinga...
Syncing LDAP Users & Groups with the Icinga Notifications Web API
If you're running Icinga in a mid-to-large organization, chances are your users and teams are already defined in LDAP or Active Directory. Manually re-creating contacts and contact groups in Icinga...
How to undo Git reset hard?
You just finished a long interactive rebase. You hit enter. Your commit history looks… wrong. There is a bunch of things that could go wrong: messed up an interactive rebase accidentally ran git reset --hard merged the wrong branch rebased onto the wrong base You...
Understanding Namespaces in Icinga 2 DSL
Last time, we explored the concept of variable scopes in Icinga 2, which help you manage and organize your DSL configurations effectively. As promised, today we'll dive into another, how shall I say, advanced topic: Namespaces in Icinga 2. What are Namespaces?...
Icinga Kubernetes Helm Charts
Daniel Bodky and Markus Opolka from our partner NETWAYS developed the very first Icinga Kubernetes Helm Charts and released it in an alpha version. If you have ever wanted to deploy an entire Icinga stack in your Kubernetes cluster, now is your chance. I also want to...
IPL: How to use ipl-validator
In my last blogpost I explained how our ipl-html lib works and how to use it. With the help of ipl-html it is possible to add forms. Usually we want to validate the data of the form before submitting it and display messages if the validation fails. For this purpose,...
Leveraging component variants in Figma for UI Design
Being a Sketch user since it's early days, I found Figma looked really promising, when it finally appeared. While Sketch caught up on most of Figma's features, like collaboration, developer handoff and AutoLayout (at least to some degree), the small feature set...
The Tale of a Single Lock in Icinga 2
To speed up startup and reload times of Icinga 2, we have already put a lot of effort into improving the configuration load performance and still continue to do so for the next major release. In this blog post, I will share the story of one particular issue we found,...
IPL: How to use ipl-html
In my previous blogpost I briefly explained the IPL and the tasks that these individual libs can perform. Today I want to explain how our ipl-html lib works and how to use it. This library helps you write HTML in a very simple and safe way. You don't need text...
Authenticating Icinga 2 API Users with TLS Client Certificates
When interacting with the Icinga 2 API, the client is commonly authenticated using a password provided via HTTP basic auth. Icinga 2 also supports a second authentication mechanism: TLS client certificates. This is a feature of TLS that also allows the client to send...
How We Schedule Tasks in PHP at Icinga – A Look Behind the Scenes
When building software like Icinga, some of the most critical operations happen silently in the background. Recurring tasks whether for collecting data, renewing certificates, or generating reports are essential to delivering the functionality our users rely on every...
How to Create Custom-Branded Icinga Reports – Quick Tip
With Icinga Reporting you can create custom SLA reports for hosts and services that are monitored with Icinga. The module for Icinga Web fetches existing data and takes planned downtimes into account. You can filter for certain hosts and services as well as set custom...
Use actual data in Sketch for more realistic mockups
This time I want to show a feature that's not obvious at first sight, but can save a lot of time, when you're intending to create UI mockups with realistic data. Why it is important to test UI concepts with realistic data at a certain point In my opinion it's totally...
Subscribe to our Newsletter
A monthly digest of the latest Icinga news, releases, articles and community topics.









