User Tools

Site Tools


doc:appunti:linux:sa:icinga

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
doc:appunti:linux:sa:icinga [2017/10/23 17:05] – [Performance data e grafici] niccolodoc:appunti:linux:sa:icinga [2017/12/21 11:34] (current) – [Icinga] niccolo
Line 3: Line 3:
 In **Debian 9 Stretch** non c'è il pacchetto Nagios, esiste piuttosto **Icinga**, un progetto derivato da Nagios che può condividere gran parte delle sonde e plugin già sviluppati. In **Debian 9 Stretch** non c'è il pacchetto Nagios, esiste piuttosto **Icinga**, un progetto derivato da Nagios che può condividere gran parte delle sonde e plugin già sviluppati.
  
 +===== Uso dei Plugin Nagios =====
 +
 +Nella configurazione predefinita di Debian 9 Stretch in **/etc/icinga/icinga.cfg** c'è la seguente direttiva:
 +
 +<file>
 +cfg_dir=/etc/nagios-plugins/config
 +</file>
 +
 +quindi valgono tutte le definizioni eventualmente ereditate da una installazione Nagios. Ad esempio il comando **check-host-alive** eseguito per ogni host da Icinga prende la sua definizione da **/etc/nagios-plugins/config/ping.cfg**.
 ===== Performance data e grafici ===== ===== Performance data e grafici =====
  
 È possibile sfruttare il meccanismo dei **[[https://www.icinga.com/docs/icinga1/latest/en/perfdata.html|performance data]]** per far generare dei grafici relativi ai servizi monitorati con Icinga. Vediamo ad esempio come generare i grafici relativi al ping, cioè i valori di **Round-Trip Average** e di **Packet Loss**. È possibile sfruttare il meccanismo dei **[[https://www.icinga.com/docs/icinga1/latest/en/perfdata.html|performance data]]** per far generare dei grafici relativi ai servizi monitorati con Icinga. Vediamo ad esempio come generare i grafici relativi al ping, cioè i valori di **Round-Trip Average** e di **Packet Loss**.
  
-Anzitutto conviene attivare l'analisi dei //performance data// solo sul servizio in questione. Le direttive sono **process_perf_data** e **action_url**:+Anzitutto conviene attivare l'analisi dei //performance data// solo sul servizio in questione, verificare ad esempio che il template **generic-service** abbia la direttiva disabilitata. Le direttive sono **process_perf_data** e **action_url**:
  
 <file> <file>
Line 19: Line 28:
 } }
 </file> </file>
 +
 +Vedremo il parametro **action_url** tra breve, per il momento facciamo in modo che esista uno script che riceve i performance data e li memorizzi da qualche parte. Il comando **process-service-perfdata** è definito per default in **/etc/icinga/commands.cfg** e scrive tutti i dati nel file ''/var/cache/icinga/service-perfdata.out''. Noi predisponiamo uno script più sofisticato che alimenta un archivio RRD:
 +
 +<file>
 +define command {
 +  command_name process-service-perfdata
 +  command_line /opt/rrd-update "$LASTSERVICECHECK$" "$HOSTNAME$" "$SERVICEDESC$" "$SERVICEPERFDATA$"
 +}
 +</file>
 +
 +Il parametro **%%$LASTSERVICECHECK$%%** viene sostituito dal timestamp (i secondi trascorsi dallo Unix Epoch), mentre il parametro **%%$SERVICEPERFDATA$%%** contiene i dati veri e propri, ecco un esempio:
 +
 +<code>
 +rta=32.287998ms;1000.000000;2000.000000;0.000000 pl=0%;20;60;0
 +</code>
 +
 +Per ogni grandezza abbiamo: **nome**=**valore_unità_di_misura**;**soglia_warning**;**soglia_critica**;**???**. Lo script deve ovviamente gestire tutto il necessario, ad esempio creare l'archivio RRD se questo non esiste, gestire host diversi, ecc. In pratica farà le chiamate necessarie a **rrdtool** passando i parametri **create** o **update** con i necessari valori.
 +
 +==== Presentazione del grafico ====
 +
 +La presenza del parametro **action_url** fa comparire una icona (predefinita quella a forma di ingranaggio) accanto al servizio per cui è disponibile il dato. Sarà necessario predisporre una pagina opportuna che generi al volo i grafici a partire dall'archivio RRD.
 +
 +Qui un archivio con tutto il necessario: **{{icinga-performance-data-ping-graph.tgz}}**.
doc/appunti/linux/sa/icinga.1508771131.txt.gz · Last modified: 2017/10/23 17:05 by niccolo