Visualise your Icinga Cluster with Clustergraph

by | Aug 16, 2024

This is a guest blogpost from Dave Kempe from Sol1

At Sol1, we provide services around scaling and automating Icinga rollouts for customers. In large environments, we make heavy use of the excellent distributed monitoring features of Icinga to build redundant clusters across datacenters. Icinga uses the object types of Endpoints and Zones to designate the cluster layout, where a Zone contains Endpoints, and may have a parent Zone. Using this logic, a Zone with no parents is the top level zone. It was out of the desire to visualize these relationships that the Icinga Clustergraph module was born.

A clustergraph view.

The module is fairly simple, as once installed and configured with the right credentials, it connects to your Icinga API, queries for all the Zones and Endpoints, finds the ultimate parent, and produces this graph. There is some status information for the state of the hosts, and their cluster state. This helps you troubleshoot how your cluster configuration is working, and whether cluster members are connected and configured correctly.

Clustergraph is not a general purpose diagramming tool for your Icinga Hosts and Services. For that you will need to use Meerkat, or some other module. We have found this not only to be useful in troubleshooting, but also to communicate to our customers and management the scale of their cluster, and illustrate the relationships between the Icinga servers.

The module is stateless, so each time you load the page, the current state is displayed, and no storage backend is required. You will need to create an Icinga API-User.

This is an example Clustergraph user, which gives you the scope of its permissions:

object ApiUser "CLUSTERGRAPH_USERNAME_HERE" { 
  password = "SECURE_PASSWORD_HERE"
  permissions = [ "objects/query/Zone", "objects/query/Endpoint", "objects/query/Host" ]
}

 

Feel free to give Clustergraph a go, you can download is here: https://github.com/sol1/icinga-clustergraph

We welcome any feedback!

This was a guest blogpost from Dave Kempe from Sol1

You May Also Like…

Organise a meetup with us!

Organise a meetup with us!

Are you passionate about monitoring and keen to share your knowledge and experiences with others? Do you enjoy...

Subscribe to our Newsletter

A monthly digest of the latest Icinga news, releases, articles and community topics.