
Instal·lant Graphite i Grafana per visualitzar les gràfiques de Centreon
En aquest document vam al·lucinar… sobretot si ets fan del mesurament de gràfiques i vols explotar-les… podrem exportar els resultats del nostre Centreon a una màquina amb Grafana i obtenir la millor solució per a la visualització de les nostres dades… Seran impressionants els dashboards que podrem generar, els personalitzarem al nostre gust, combinant mètriques o intervals de cada ítem que tinguem monitoritzat amb Centreon. I a més super senzill!
Centreon (entre d' altres) permet exportar les dades que recol·lecciona a format Base de Dades de Sèries Temporals (TSDB), doncs gràcies a això, podrem emmagatzemar-les en una Base de Dades de Graphite i amb Grafana presentar aquestes dades en preciosos Dashboards. Grafana és una plataforma Open per crear els nostres propis quadres de comandament que permeten monitoritzar la nostra infraestructura. En aquest document, veurem com instal·lar Graphite i Grafana en una màquina amb CentOS 7. Per tant, el nostre Centreon o Nagios monitoritzarà la nostra plataforma com fins ara, però a més, redireccionarem les mètriques que monitoritza una BD remota, i Grafana podrà llegir aquesta informació i així nosaltres crear els Dashboard que ens interessi!
Ull que aquest document no té perquè usar-se només per a Nagios o Centreon, si no que veurem en futurs documents com llegir informació i tractar-la de bases de dades de MySQL per exemple, ja veureu que interessant, veurem futur mesuraments de consum electric de casa o de l'empresa, o qualsevol cosa que se'ns ocorri, de veritat que és impressionant i sobretot si després això ho posem en una pantalla al nostre departament. O a les nostres llars amb un mirall màgic tipus MagicMirror que ja us contaré, ja… i fins i tot m'atreviré a posar fotos del que tinc muntat a casa perquè vegeu que impressionant és.
Instal·lació de Graphite,
La màquina Centreon en aquest exemple té l'adreça IP 192.168.1.57 i el Centos on instal·larem Graphite i Grafana serà la 192.168.1.104. Comencem!!
Per instal·lar Graphite, utilitzarem el repositori EPEL, si no el tens instal·lat, ho hauràs de fer, i instal·lem Graphite i els paquets necessaris:
[sourcecode]yum install -y epel-release
yum install -y httpd graphite-web python-carbon perl[/sourcecode]
Inicialitzem l'interfície de graphite i l'iniciem executant:
[sourcecode]/usr/bin/graphite-manage syncdb –noinput
/usr/bin/graphite-build-index
/usr/bin/chown -R apache:apache /var/lib/graphite-web
systemctl start carbon-cache[/sourcecode]
Editem el fitxer de benvinguda i ho comentem tot amb coixins (#).
[sourcecode]vim /etc/httpd/conf.d/welcome.conf[/sourcecode]
Modifiquem el fitxer '/etc/httpd/conf.d/graphite-web.conf’ per permetre accés des de qualsevol IP:
[sourcecode]##ServerName graphite-web
<IfModule mod_authz_core.c>
# Apache 2.4
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Allow from all
</IfModule>[/sourcecode]
I reiniciem el servei per recarregar la configuració amb:
[sourcecode]systemctl restart httpd[/sourcecode]
A més d'afegir un parell de regles que han de permetre l'accés extern al port de Graphite i accés web, reiniciem el firewall perquè recarregui la configuració, per a això:
[sourcecode]firewall-cmd –zone = public –permanent –add-service = http
firewall-cmd –zone = public –permanent –add-port=2003/tcp
firewall-cmd –reload[/sourcecode]
Ull, hem d' indicar que els serveis arrenquin a l' inici amb la màquina Centos, si? per a això executem:
[sourcecode]chkconfig httpd on
chkconfig grafana-server on
chkconfig carbon-cache on[/sourcecode]
Podem provar d'obrir Graphite per veure si tenim accés i veure l'agent predeterminat si conté alguna cosa d'informació, per a això no serà més senzill que obrir un navegador contra l'adreça IP del CentOS, en aquest cas tan fàcil com http://192.168.1.104 i veure que dades anem tenint…
Redireccionar output de Centreon a Graphite,
Bé, ara farem que el Broker del Centreon escrigui també les dades a Graphite, per això haurem de seguir els següents passos a la màquina on tenim instal·lat Centreon!
Instal·lem el plugin que necessitarem al Broker amb:
[sourcecode]yum install -y centreon-broker-graphite[/sourcecode]
I ja podrem obrir la configuració GUI del nostre Centreon, anem a “Configuration” > “Pollers” > “Broker configuration” > “central-broker-master” > Pestanya “Output” > Al combo de l'Output triem 'Graphite – Storage – Graphite’ > “Add”, completem els següents camps de la següent manera:
- Name: Graphite
- DB host: 192.168.1.104 (adreça IP del Graphite)
- DB port: 2003
- DB user:
- DB password:
- Metric naming: centreon.metric.$HOST$.$SERVICE$.$METRIC$
- Status naming: centreon.status.$HOST$.$SERVICE$
Amb això indiquem on exportarà la informació que recol·lecta el nostre Centreon i en quin format el manarà al nostre Graphite (i després ho veurem a Grafana).
Com sempre, recordar que després de qualsevol canvi de configuració, hem de recarregar la config a Centreon, per a això, ho farem des de: “Configuration” > “Pollers” > “Export configuration” > Marquem “Generate Configuration files” & “Run monitoring engine debug” & “Move Export Files” & a Method seleccionem “Reload”, posem per fi en “Export” i esperem…
Després d'això, us recomano reiniciar aquests dos serveis de Centreon des del seu shell, ens connectem amb un Putty o el que vulguem a la màquina Centreon i executem:
[sourcecode]service cbd restart
service centengine restart[/sourcecode]
Si volem, podem tornar de nou a Graphite per veure com ja tenim noves mètriques que venen del nostre volgut Centreon… va bé la cosa, no?
Instal·lació de Grafana
De tornada a la nostra màquina amb CentOS, vam seguir i instal·lar i configurar Grafana!
El primer serà afegir un nou Repositori a la nostra màquina, per a això, creem el fitxer '/etc/yum.repos.d/grafana.repo’ amb el contingut següent:
[sourcecode][grafana]
name = grafana
baseurl =https://packagecloud.io/grafana/stable/el/7/$basearch
repo_gpgcheck = 1
enabled = 1
gpgcheck = 1
gpgkey =https://packagecloud.io/gpg.key https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana
sslverify = 1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt[/sourcecode]
I procedim a instal·lar Grafana i iniciar el seu servei:
[sourcecode]yum install -i grafana
systemctl start grafana-server[/sourcecode]
Afegim en el firewall de la pròpia màquina accés al port 3000 per poder connectar-nos a Grafana des de qualsevol equip & recarreguem amb:
[sourcecode]firewall-cmd –zone = public –permanent –add-port=3000/tcp
firewall-cmd –reload[/sourcecode]
I llest!! Ja tenim (i) Graphite instal·lat i configurat, (ii) el nostre Centreon que ja li mana les dades a aquesta màquina i (iii) un Grafana instal·lat que ha de poder interpretar les dades obtingudes i ens les mostrarà en uns dashboards com deia aquell torero cantant… 'im-pre-zionant'!!!
Accedint a Grafana i creat el nostre primer dashboard,
Podem ja obrir un navegador contra l'adreça IP de la nostra màquina amb CentOS i connectar-nos a grafana, en el meu exemple serà contra aquesta direcció: http://192.168.1.104:3000 i ens validem amb l'usuari predeterminat amb contrasenya 'admin'.
El primer de tot serà configurar un origen de dades, o sigui, vam dir-li que Grafana pugui llegir les dades de la BD de Graphite, posem primerament en “Add data source”,
I en aquest connector indiquem:
- Name: Centreon
- Type: Graphite
- Url: http://localhost
I posem sobre “Add”, el que s' ha dit, amb això farem que Grafana pugui llegir les dades de la màquina local, de Graphite. En altres documents veurem com afegir altres origens de dades per tractar i explotar un altre tipus d'informació a Grafana.
Seguint amb aquest assistent d'introduccó, polsarem en “New dashboard” per crear el nostre primer Dashboard!
I bo sincerament, usar Grafana és super super senzill, podrem agregar-hi diferents tipus de panells a cada Dashboard, comencem amb el més típic, que no és més que el tipus 'Graph’ que com entendrem són gràfiques, poden ser lineals, en columnes, estacat… tot això ho aniràs descobrint, és molt molt intuïtiu!!!
Ens crearà aquest primer panell que podrem redimensionar perquè es vegi més o menys gran, amb doble click en el títol el podrem editar, posem en “Edit”,
I com diria el gran Tamariz… Tiarararaaa!!!! ohhh màgia!!! atents….
Aquest Panell pot mostrar el que vulguem, tenim diverses pestanyes (General, Metrics, Axes, Legend, Display…) que t'animo que vagis descobrint o tinc paciència i en posts futurs et posaré exemples concrets. Però anem, a la pestanya 'Metrics’ podrem afegir les mètriques que ens interessin veure, fem un exemple molt senzill, afegim que sigui de tipus 'Centreon’ > 'metric’ > 'SERVIDOR’ > 'ITEM MONITORITZAT', i zas!!!! ho mostrarà en la gràfica, ja podem veure qualsevol servidor o dispositiu que monitoritzem amb Centreon aquí!! Ens traurà tant el seu nom com tots els serveis que monitoritzem des de Centreon!!! olé, olé i olé Rigodón!!!
Què us sembla? No em dieu que no podem pensar què visualitzar i com, amb unes gràfiques impressionants amb Grafana?
Dedicant-li una mica de temps podrem crear-nos els dashboard amb els panells que ens interessin, cada Panell amb les seves mètriques, les que siguin, i veureu que es poden personalitzar a tope, per deixar-ho com ens agradi més… anar provant que en algun futur document tornarem a Grafana per veure més possibilitats!!!