Data visualization and monitoring with Grafana and Prometheus
Leppänen, Tiia (2021)
Leppänen, Tiia
2021
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2021122090248
https://urn.fi/URN:NBN:fi:amk-2021122090248
Tiivistelmä
Visuaalinen monitorointi lisää tietoisuutta IT-ympäristössä tapahtuvista muutoksista. Visuaalisessa monitoroinnissa kohteiden monitoroinnilla tulee olla selkeä merkitys sekä visualisoinnin pitää olla helposti ymmärrettävä.
Tämän opinnäytetyön tavoitteena oli visuaalisen monitoroinnin toteuttaminen toimeksiantajan laiteympäristöön.
Toimeksiantajan laiteympäristössä oli jo käytössä kaksi monitorointiratkaisua, Zabbix ja LibreNMS. Monitoroidun datan esittämiseen oli löydettävä ratkaisu, johon valikoitui visualisointijärjestelmä Grafana. Grafanan pariksi monitorointityökaluksi valikoitui Prometheus.
Jotta saatiin mahdollisimman hyvä kuva toimeksiantajan tarpeista, vertailtiin monitorointijärjestelmien välisiä eroavaisuuksia datan keruussa sekä eri visualisointialustojen datan visualisoinnin eroavaisuuksia. Lisäksi tarkasteltiin, mitä vahvuuksia näillä kahdella järjestelmällä (Prometheus ja Grafana) on Zabbixiin ja LibreNMS:ään verrattuna. Tarkoituksena ei ollut syrjäyttää vanhoja monitorointijärjestelmiä, vaan hyödyntää uusien järjestelmien hyviä puolia toimeksiantajan laiteympäristössä.
Datan kerryttämistä varten Unix-pohjaiselle virtuaalipalvelimelle asennettiin Prometheus-palvelin keräämään dataa kyseisestä virtuaalipalvelimesta sekä konesalissa sijaitsevasta kytkimestä. Samalle virtuaalipalvelimelle asennettiin myös visualisointialusta Grafana. Grafanan visualisointiominaisuuksia testattiin tuomalla valmis, Unix-käyttöjärjestelmien monitorointia varten tehty kojelauta. Kytkimen monitorointia varten luotiin täysin uusi kojelauta.
Loppuratkaisuna saatiin toimiva esimerkki Prometheuksen ja Grafanan toiminnasta eri ympäristöissä. Järjestelmän jatkokehityksessä huomioon otettavia asioita ovat mm. salausjärjestelmän ja hälytysten käyttöönotto. Visual monitoring raises awareness of changes in the IT environment. In visual monitoring, the monitoring of targets must have a clear meaning and the visualization must be easy to understand.
The purpose of this thesis was to implement a visual monitoring system in the client's network environment.
Two monitoring solutions, Zabbix and LibreNMS, were already in use in the client's network environment. A solution had to be found for presenting the monitored data, for which the Grafana visualization system was selected. Prometheus was chosen as Grafana's counter part for the monitoring tool.
In order to gain the best possible insight into the client's needs, differences of the monitoring systems in the data collection and the differences in the data visualization of the different visualization methods were compared. The strengths and advantages of these two systems (Prometheus and Grafana) were examined and compared to Zabbix and LibreNMS’ features. The intention was not to replace the old monitoring systems, but to utilize the advantages of the new systems in Tietopartio's network environment.
A Prometheus server was installed on a Unix-based virtual server to collect data from that virtual server and from a switch located in Tietopartio’s data center. The Grafana visualization platform was also installed on the same virtual server. Grafana's visualization capabilities were tested by importing a ready-made dashboard for monitoring Unix operating systems. A completely new dashboard was created to monitor the switch.
The final result was a functional example of Prometheus and Grafana’s working in different environments. Issues to be taken into account in the further development of the monitoring system include implementation of an encryption method and alarms.
Tämän opinnäytetyön tavoitteena oli visuaalisen monitoroinnin toteuttaminen toimeksiantajan laiteympäristöön.
Toimeksiantajan laiteympäristössä oli jo käytössä kaksi monitorointiratkaisua, Zabbix ja LibreNMS. Monitoroidun datan esittämiseen oli löydettävä ratkaisu, johon valikoitui visualisointijärjestelmä Grafana. Grafanan pariksi monitorointityökaluksi valikoitui Prometheus.
Jotta saatiin mahdollisimman hyvä kuva toimeksiantajan tarpeista, vertailtiin monitorointijärjestelmien välisiä eroavaisuuksia datan keruussa sekä eri visualisointialustojen datan visualisoinnin eroavaisuuksia. Lisäksi tarkasteltiin, mitä vahvuuksia näillä kahdella järjestelmällä (Prometheus ja Grafana) on Zabbixiin ja LibreNMS:ään verrattuna. Tarkoituksena ei ollut syrjäyttää vanhoja monitorointijärjestelmiä, vaan hyödyntää uusien järjestelmien hyviä puolia toimeksiantajan laiteympäristössä.
Datan kerryttämistä varten Unix-pohjaiselle virtuaalipalvelimelle asennettiin Prometheus-palvelin keräämään dataa kyseisestä virtuaalipalvelimesta sekä konesalissa sijaitsevasta kytkimestä. Samalle virtuaalipalvelimelle asennettiin myös visualisointialusta Grafana. Grafanan visualisointiominaisuuksia testattiin tuomalla valmis, Unix-käyttöjärjestelmien monitorointia varten tehty kojelauta. Kytkimen monitorointia varten luotiin täysin uusi kojelauta.
Loppuratkaisuna saatiin toimiva esimerkki Prometheuksen ja Grafanan toiminnasta eri ympäristöissä. Järjestelmän jatkokehityksessä huomioon otettavia asioita ovat mm. salausjärjestelmän ja hälytysten käyttöönotto.
The purpose of this thesis was to implement a visual monitoring system in the client's network environment.
Two monitoring solutions, Zabbix and LibreNMS, were already in use in the client's network environment. A solution had to be found for presenting the monitored data, for which the Grafana visualization system was selected. Prometheus was chosen as Grafana's counter part for the monitoring tool.
In order to gain the best possible insight into the client's needs, differences of the monitoring systems in the data collection and the differences in the data visualization of the different visualization methods were compared. The strengths and advantages of these two systems (Prometheus and Grafana) were examined and compared to Zabbix and LibreNMS’ features. The intention was not to replace the old monitoring systems, but to utilize the advantages of the new systems in Tietopartio's network environment.
A Prometheus server was installed on a Unix-based virtual server to collect data from that virtual server and from a switch located in Tietopartio’s data center. The Grafana visualization platform was also installed on the same virtual server. Grafana's visualization capabilities were tested by importing a ready-made dashboard for monitoring Unix operating systems. A completely new dashboard was created to monitor the switch.
The final result was a functional example of Prometheus and Grafana’s working in different environments. Issues to be taken into account in the further development of the monitoring system include implementation of an encryption method and alarms.