EN | DE

How does Bloonix works

Overview of the components for the monitoring

Here you see a coarse overview of the components to monitor hosts and services.

The components for the web interface

Over the web interface of Bloonix hosts and service as well as contacts and groups are configured.



The components in detail

Bloonix-Server

The Bloonix-Server is the core of the monitoring framework and the interface for the Bloonix-Agents. The Bloonix-Server sends on request of an agent the configuration of the services and accepts the status and also statistical data of the Bloonix-Agents. The data will be validated and stored into the database. The Bloonix-Server also checks whether an event must be released to send a e-mail to an administrator to inform him about the fact that a service is overloaded or is not available any more.

Together with the Bloonix-Server the Bloonix-Service-Checker is installed, which is a part of the Bloonix-Server and monitors the actuality of the status of hosts and services. If, for example, the CPU utilisation of a host was not checked since several minutes any more, this can be due to the fact that a Bloonix-Agent has fallen out. In this case the service-checker would step in as a pseudo agent and deliver a critical status for the service.

Bloonix-Agent

The Bloonix-Agent is the part of the Frameworks which is responsible to monitor the services and to send the status of the services as well the statistics to the Bloonix-Server. The Bloonix-Agent is installed on the system and runs there as a demon which monitors permanently the system. The Bloonix-Agent can also be installed on a central server to monitor from there web service and network components, like Router, Switches and Loadbalancer.

Together with the Bloonix-Agent the Bloonix-Plugins are installed, which are smaller programms to check the status of one or several services and deliver at the same time statistical data to the service. A Plugin can be written in any computer language, it's only to be noted that the data exchange (program options and output of statistical data) occurs in the JSON format. The Plugins are installed together with the Bloonix-Agent.

Bloonix-Satellite

With the Bloonix-Satellite it's possible to monitor external services from multiple locations. The Bloonix-Satellite can be installed on any number of systems. The Bloonix-Agent connects to the Bloonix-Satellite and forwards the service checks, which has to be exectued.

Bloonix-WebGUI

The Bloonix-WebGUI is the user interface and runs on the client side as a JavaScript application in the browser. On the server side the webgui runs as a REST-API behind a reverse proxy (Nginx). The data format of the REST-API is JSON.

For the WebGUI a modern HTML5 browser is required. We recommend the use of Chrome, Safari, Firefox or also Opera. The Internet Explorer in version 11 should also work, nevertheless, this browser is supported in no version.

PostgreSQL / MySQL

The database is used to store the configuration and the data by hosts, services, users and groups. Other database systems are not supported.

To the website of PostgreSQL

To the website of MySQL

To the website of MariaDB

Elasticsearch

Elasticsearch is used to store metrics and events and all time based data. By the monitoring of several thousand hosts a high amount of data can arise. The choice fell on Elasticsearch, because Elasticsearch is highly scaleable and offers an easy cluster functionality.

To the website of Elasticsearch

Nginx

Nginx is used as a reverse proxy and as a HTTPS offloader, because the Bloonix-Server and the Bloonix-WebGUI runs as a external FastCGI application. Nginx is avery fast and the configuration is very easy.

To the website of Nginx



Workflow of the monitoring of hosts and services

Configuration of hosts and services in the web interface

In the web interface all hosts and service checks which you would like to monitor are configured. In the context of Bloonix a host can be a server, a virtual server, a router, a switch or also a printer. Every host owns a hostname and an IP address. If a host is configured in the web interface, a unique ID and password i generated for the host. Please note that the host password should not to be mistaken with the root password of the server. The host password is a special password which is required later for the Bloonix-Agent, so that the Bloonix-Agent is able to authenticate with the Bloonix-Server. In addition, service checks are configured, for example for the monitoring of the CPU utilisation, the memory consumption or the utilisation of the network interfaces.

Configuration of a Bloonix-Agent

For the execution of the service checks the Bloonix-Agent is required. If a host is configured in the web interface, the Bloonix-Agent must be installed as next. The Bloonix-Agent can be used on multiple systems to check the services of a host. If you like to monitor the system vitals of a host, as example the CPU utilisation, the memory consumption or the hard disk capacity, then the Bloonix-Agent is to be installed on the server. If you like to monitor the server services, as example a mail server, web server or a DNS server, the Bloonix-Agent can be installed on an external system to monitor the services via HTTP-, SMTP-, IMAP-, or also DNS-check.

So that the Bloonix-Agent knows now which services this should monitor, the host ID and the password of the hosts which are to be found in the web interface are put down in the configuration file of the Bloonix-Agent. In this manner the Bloonix-Agent can request the service checks which are configured for the host.

Workflow of the monitoring

What the Bloonix Agent makes now is as follows:

  1. The Bloonix-Agent connects to the Bloonix-Server and sends the host ID and the password.
  2. The Bloonix-Server sends the configured services checks for the host ID.
  3. The Bloonix-Agent exectute the service checks and sends back the status and statistical data to the Bloonix-Server.
  4. The Bloonix-Server validates the data, stores them into the database and maybe notificates a system administrator via Email or SMS.

Monitoring of network components or external services

The Bloonix-Agent can be installed on a central server in your local infrastructure to monitor network components via SNMP, as for example router, switches or printer. However, the Bloonix-Agent can be also installed on an external server to monitor internet service from there.

Monitoring of services from multiple locations

Over the web interface of Bloonix it's possible to configure multiple locations for service checks, which are able to be monitored as a external service, as example over HTTP, SMTP, IMAP, Ping and so on. In this case the Bloonix-Agent wouldn't execute the service check itself, but would forward the execution of the service check to the Bloonix-Satellites which are configured in the web interface.

About Bloonix - About Bloonix | About Bloonix - License | About Bloonix - How does Bloonix work | About Bloonix - Plugins | About Bloonix - Feature Liste | Installation - Important information in advance | Installation - Repositories | Installation - Elasticsearch | Installation - PostgreSQL | Installation - MySQL/MariaDB | Installation - Nginx | Installation - Bloonix-WebGUI | Installation - Bloonix-Server | Installation - Bloonix-Plugins | Installation - Bloonix-Agent | Installation - Manual installation | Installation - Quick Guide for CentOS 7 and PostgreSQL | Installation - Quick Guide for CentOS 7 and MariaDB | Installation - Quick Guide for Debian 8 and MariaDB | Configuration - In progress | HowTos - In progress | WebGUI - In progress