Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

icinga, icinga2 and grafana #323

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 17 additions & 4 deletions monitoring_101.rst
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,18 @@ Since Nagios is so configurable, it can often be difficult to configure for the
It can use many files for configuration, and a single syntax error will prevent the system from starting.
Additionally, the open-source version does not natively support adding and removing hosts dynamically; the configuration needs to be modified, and the server reloaded to add or remove a host.

Icinga/Icing2
------
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line is the one too short, does not appear to be changed in the second commit.


Icinga is a forked and in parts rewritten drop in replacement for nagios and also deprecated in favor for icinga2. New web interface for interacting with services, bulk select/acknowledgment etc.

`Icinga2 <https://www.icinga.com/products/icinga-2/>`_ is a complerely rewritten system with a new configuration paradigm then nagios. Where you can have implicit looping over variables for services.
When you apply services to a host it can be via wildcard matching to hostname, looping over various variables defined in the host, very flexible system.


Graphite
--------
`Graphite <http://graphite.wikidot.com/>`_ is an open-source monitoring tool that let's you store time-series based data and graph them.
`Graphite <http://graphite.wikidot.com/>`_ is an open-source monitoring tool that let's you store time-series based data and graph them.

Graphite consists of three components:

Expand All @@ -61,6 +69,12 @@ Graphite does not collect metrics for you, however there are three methods using

Apart from the out-of-box web-app that Graphite comes with you can even create your own applications on top of Graphite by retrieving data in form of JSON, CSV or raw-data format.

Grafana
-------
`Grafana <https://grafana.net>`_ nodejs based frontend for viewing graphs from graphite. Does also support a wide range of backends to visualize data from.
Backends that grafana reads from nativly is graphite, influxdb. There is also a plugin infrastructure for many more backends. And multiple backends can reside on the
same dashboard.

Ganglia
-------
`Ganglia <http://ganglia.info>`_ is a highly scalable distributed monitoring solution for high performance systems like clusters and grids.
Expand Down Expand Up @@ -92,8 +106,7 @@ Munin
RRDTool / cacti
---------------

Icinga
------


SNMP
----
Expand Down Expand Up @@ -155,6 +168,6 @@ A simple,1 minute crontab entry for logster would allow you to generate near rea

This tool is made up of a framework script, Logster, and parsing scripts that are written to accommodate your specific log format.

Sample parsers are included in the distribution, which essentially read a log file line by line, applying a regular expression to extract useful data from the lines you are interested in, and then aggregate that data into metrics that will be submitted to Ganglia or Graphite or Amazon CloudWatch.
Sample parsers are included in the distribution, which essentially read a log file line by line, applying a regular expression to extract useful data from the lines you are interested in, and then aggregate that data into metrics that will be submitted to Ganglia or Graphite or Amazon CloudWatch.

Do take a look through the `sample parsers <https://github.com/etsy/logster/tree/master/logster/parsers>`_, which should give you some idea of how to get started writing your own.