Checkmk
to checkmk.com
Important

This is a machine translation based on the English version of the article. It might or might not have already been subject to text preparation. If you find errors, please file a GitHub issue that states the paragraph that has to be improved.

1. Che cos'è NagVis?

Nell'articolo sulle basi del monitoring hai visto la mappa della topologia di una rete basata sulle relazioni padre-figlio. NagVis è responsabile di tali mappe. L'estensione permette di visualizzare, ad esempio, infrastrutture, server, porte o processi.

Il funzionamento di NagVis è fondamentalmente molto semplice: Checkmk, o più precisamente Livestatus, fornisce dati back-end come host, servizi, gruppi di host e gruppi di servizi. Questi elementi del monitoraggio end-to-end possono essere posizionati come icone su varie mappe. Queste icone dinamiche possono mostrare lo stato attuale di ogni host e servizio. Informazioni aggiuntive più dettagliate possono essere fornite da tooltip. Infine, le icone e gli altri elementi sono anche collegamenti agli oggetti Checkmk che rappresentano. Altri elementi disponibili sono linee, visualizzazioni delle prestazioni (gadget) e container per contenuti esterni.

Per avere una migliore idea di ciò che si può ottenere con NagVis in Checkmk, ecco tre esempi:

  • Mappe geografiche basate su OpenStreetMap per la gestione delle località.

  • Mappe topologiche automatiche a partire dalle relazioni padre-figlio.

  • Mappature di singoli switch o sale server per avere una panoramica delle porte e dell'hardware.

Se le relazioni padre-figlio sono state definite, senza ulteriori azioni puoi richiamare una mappa in Checkmk utilizzando Monitor > Overview > Parent / Child topology. In questo caso non sono necessari ulteriori passaggi.

monitoring parents

2. Configurazione di NagVis

NagVis è completamente integrato in Checkmk e configurato in modo che tu possa iniziare immediatamente ad aggiungere alle mappe gli elementi del tuo monitoraggio.

Per avviare NagVis, apri innanzitutto la sezione con gli snap-in disponibili per la barra laterale in basso, seleziona lo snap-in NagVis maps e avvia NagVis con il pulsante .

nagvis snapin nagvis

Prima di creare la tua prima mappa, dovresti dare un'occhiata alla configurazione principale di Options > General Configuration. Qui si trovano oltre 100 opzioni di base, come i formati dei dati e le impostazioni della lingua, dalla visualizzazione degli oggetti sulle mappe alla ponderazione degli stati degli host e dei servizi disponibili.

nagvis2 general configuration

A questo punto vorremmo fare a meno di una descrizione completa dell'uso di NagVis e in particolare delle sue opzioni di configurazione. NagVis stesso dispone di un'ottima e dettagliata documentazione, in cui sono spiegate anche tutte le opzioni della configurazione principale. Di seguito ci limiteremo alle nozioni di base più essenziali per generare mappe semplici e utili utilizzando NagVis in Checkmk.

3. Creazione di mappature

3.1. I vari tipi di mappatura

NagVis offre un totale di cinque tipi di mappe diverse: mappe geografiche regolari, dinamiche, automatiche e interattive/non interattive.

  • Lamappa regolare è il tipo di mappa standard. La mappa può visualizzare qualsiasi scenario desiderato: dalle porte dello switch, alle stanze dei server, alle infrastrutture complete. Gli elementi (simboli, linee, ecc.) vengono aggiunti individualmente alle mappe dagli inventari degli host e dei servizi Checkmk.

  • La mappa dinamica assomiglia molto alla mappa regolare, ma con una differenza significativa: gli host, i servizi, i gruppi di host e i gruppi di servizi non vengono specificati in modo esplicito, ma utilizzando dei filtri sotto forma di espressioni regolari; per meglio dire, sotto forma di filtri Livestatus validi. In questo modo i nuovi host e servizi, e allo stesso modo qualsiasi modifica, vengono inseriti automaticamente nella mappa senza che sia necessaria un'ulteriore azione manuale.

  • Lamappa automatica che hai già conosciuto è la mappa della topologia di rete menzionata all'inizio di questo articolo, generata in modo completamente automatico dalle relazioni padre-figlio definite in Checkmk.

  • Lamappa geografica è una mappa renderizzata con il materiale cartografico del progetto OpenStreetMap (OSM) per i suoi sfondi.

3.2. Creare una mappa automatica

La soluzione più rapida per creare una mappa rappresentativa è la mappatura automatica. Crea una nuova mappa del tipo Automap based on parent/child relations tramite Options > Manage Maps > Create Map. In ID inserisci il nome interno myautomap e in Alias il tuo nome My Automap per la visualizzazione.

nagvis2 automap create

La mappa stessa apparirà immediatamente nell'area dei contenuti e il link corrispondente apparirà nello snap-in NagVis maps. Le impostazioni specifiche dell'automappa possono essere personalizzate in Edit Map > Map Options > Automap. La voce render_mode è particolarmente interessante perché fornisce la mappatura fondamentale dei nodi della mappa.

nagvis2 automap options

Inoltre, è possibile specificare la radice della mappa, anche se è più semplice farlo cliccando con il tasto destro del mouse su un'icona della mappa e selezionando la voce del menu contestuale Make root.

nagvis2 automap contextmenu

3.3. Creare una mappa regolare

Le mappe regolari sono le mappe più comuni di NagVis. Per farti conoscere le procedure di NagVis e i suoi elementi più importanti, ti mostreremo come creare una piccola mappa di un rack di server. In questo modo visualizzerai un host su uno sfondo individuale e riceverai avvisi ottici e acustici quando l'host monitorato non è OK.

Per creare la mappa, apri le opzioni tramite Options > Manage Maps. In Create Map assegna alla mappa il nome mymap e l'alias My Map. Per Map Type seleziona Regular map e conferma con il pulsante Create.

nagvis2 regularmap create

Importa quindi un'immagine dello scaffale da monitorare come sfondo, utilizzando Options > Manage Backgrounds. Seleziona il file locale e conferma con il pulsante Upload.

nagvis2 regularmap upload background

Ora l'immagine importata deve essere definita come sfondo per la mappa corrente. Richiama le opzioni della mappa con Edit Map > Map Options e vai alla scheda Appearance. Qui attiva l'opzione map_image e seleziona l'immagine desiderata dal menu. Non salvarla ora: è ancora necessaria un'impostazione dalle opzioni della mappatura.

nagvis2 regularmap background

Vai alla scheda Obj. Defaults. Qui puoi attivare l'opzione label_show. Questa opzione permette di etichettare le icone dell'host e del servizio sulla mappa con i rispettivi nomi dell'host o del servizio, altrimenti le icone saranno identificate solo attraverso le loro tooltipature. Infine, salva queste impostazioni.

nagvis2 regularmap show label

Ora è il momento di aggiungere l'host. Clicca su Edit Map > Add Icon > host e poi con il cursore (che ora appare come una croce) sulla posizione della mappa in cui deve essere posizionato il simbolo - a questo punto si aprirà la finestra di dialogo Create Object. Nella scheda General seleziona semplicemente l'host desiderato dal menu a discesa di host_name e salva. Se operi su più istanze Checkmk, puoi utilizzare una fonte di dati alternativa tramite backend_id.

nagvis2 regularmap host create

L'icona è ora posizionata sulla mappa e fornisce informazioni dettagliate tramite un tooltip. Facendo clic sul simbolo si accede direttamente all'host in Checkmk: tutti gli oggetti posizionati in NagVis sono collegamenti ai tuoi oggetti Checkmk.

nagvis2 regularmap host hover

Per poter spostare o modificare un'icona è necessario attivare la modalità di modifica. Clicca con il tasto destro del mouse sull'icona per aprire il menu contestuale e seleziona Unlock.

nagvis2 regularmap icon menu locked

A questo punto puoi spostare l'icona o aprire nuovamente il menu contestuale, dove troverai una serie di nuove opzioni che ti permetteranno di clonare, eliminare o modificare l'oggetto o di confermare un problema direttamente da qui, scegliendo l'opzione Acknowledge.

nagvis2 regularmap icon menu unlocked

Una volta completata la modifica di un host/icona, apri nuovamente il menu contestuale e seleziona Lock. Inoltre, con Edit Map > Lock/Unlock all la modalità di modifica può essere attivata e disattivata per l'intera mappa.

Ora puoi aggiungere altri host alla mappa. L'aggiunta di servizi, gruppi di host e gruppi di servizi funziona in modo simile.

Per concludere, la mappa può essere configurata in modo tale che, al momento del caricamento, i problemi vengano segnalati da un avviso sonoro e da simboli di host lampeggianti. A questo scopo, richiama Edit Map > Map Options e passa alla scheda Events. Qui, nella parte superiore del display, attiva event_on_load e, nella parte inferiore, seleziona il box event_sound per ricevere avvisi sonori.

nagvis2 regularmap events

3.4. Creare una mappa geografica

Le mappe geografiche sono disponibili in due moduli diversi: la variante interattiva può essere fatta scorrere e ingrandita come quella di Google Maps & Co. e viene impostata automaticamente come sfondo. Gli oggetti che sono stati posizionati su queste mappe appariranno su tutte le mappe successive dello stesso tipo. NagVis presume che un oggetto si trovi sempre in una posizione specifica, indipendentemente dalla scala della mappa. Quindi, ad esempio, un host situato ad Amburgo apparirà sia su una mappa del mondo che su una mappa della Germania e, ovviamente, su una mappa di Amburgo.

NagVis visualizza le varie sezioni della mappa e i vari livelli di zoom solo come viewport. In qualsiasi momento i viewport possono essere salvati come una nuova mappa separata. Poiché i viewport/mappature possono essere visualizzati anche come simboli sulle mappe, in un certo senso le mappe possono essere annidate. Così, ad esempio, è possibile richiamare una mappa della Germania con le sue dipendenze e poi, con un clic, una visualizzazione più dettagliata di uno stato, e poi, se necessario, le mappe di una specifica filiale, di una sala server e, da lì, anche una mappa di un singolo switch.

A differenza della navigazione manuale, l'uso di una mappa interattiva è più veloce e comodo, inoltre le singole mappe sono attive in modo da poter essere visualizzate in parallelo su monitor separati o da poter essere impostate per la rotazione automatica su un unico monitor (per saperne di più in seguito). Un altro aspetto importante è che in questo modo è disponibile un riepilogo delle mappe correlate sotto forma di tooltip. Questo rende l'uso più intuitivo anche per i terzi, che non devono cliccare sulle gerarchie o sapere dove è necessario effettuare lo zoom.

Le mappe geografiche non interattive devono essere alimentate con un file CSV contenente gli host e le coordinate da visualizzare. In questo caso non ci sono elementi generali preesistenti.

Nella documentazione di Nagvis le mappe geografiche interattive sono chiamate worldmaps e le varianti non interattive sono chiamate geomaps. Le worldmaps sono state aggiunte per la prima volta nella versione 1.9 di NagVis.

Esempio: crea una mappa interattiva per tutta la Germania e collega a questa un nuovo viewport per la Renania Settentrionale-Vestfalia (NRW). Crea una mappa geografica interattiva - una worldmap - con Options > Manage Maps > Create Map. Come Map Type seleziona l'opzione Geographical Map (interactive) - è possibile definire anche l'ID (mygeomap) e l'Alias (My Geographical Map).

nagvis2 geomap create

Specifica la sezione della mappa che desideri come panoramica e salva questa visualizzazione con Edit Map > Viewport > Save view.

nagvis2 geomap save view

Quindi ingrandisci la mappa fino a raggiungere il dettaglio desiderato per la Renania Settentrionale-Vestfalia e salva la visualizzazione con Map > Viewport > Save as new map come nuova mappa mygeomap_nrw.

nagvis2 geomap save viewport

L'alias della mappa verrà adottato dalla mappa originale, in modo da avere due mappe denominate My Geographical Map nella barra di navigazione a sinistra. Pertanto, ora definisci un nuovo alias My Geographical Map NRW con Edit Map > Map Options.

nagvis2 geomap vieport alias

Passa alla mappa della Germania My Geographical Map e aggiungi il collegamento alla mappa della Renania Settentrionale-Vestfalia con Edit Map > Add Icon > Map. Nella successiva finestra di dialogo Create Object dovrai solo selezionare la mappa mygeomap_nrw dal menu map_name.

nagvis2 geomap map icon create

In seguito, cliccando sul nuovo simbolo nella mappa della Germania, si accede direttamente alla mappa della Renania Settentrionale-Vestfalia. Allo stesso modo si possono collegare altre mappe e, naturalmente, è possibile integrare una navigazione dalla mappa della Renania Settentrionale-Vestfalia alla mappa della Germania.

nagvis2 geomap map link

Anche il caricamento dei contenuti delle mappe corrisponde alla procedura prevista per gli altri tipi di mappe, ma ricorda che tutti gli oggetti che aggiungi a una delle mappature appariranno anche su tutte le altre mappe del mondo, poiché si tratta solo di visualizzazioni alternative della situazione geografica reale.

3.5. Creare una mappa dinamica

Le mappe dinamiche si differenziano dalle mappe normali - come già detto - per il metodo di aggiunta degli elementi. Invece di essere aggiunte manualmente, le mappe dinamiche ricevono i loro elementi - host, servizi, gruppi di host e gruppi di servizi - in modo dinamico tramite i filtri Livestatus. Ad esempio, una mappa dovrebbe ricevere automaticamente i servizi CPU load da tutti gli host.

Per creare una mappa di questo tipo, inizia con Options > Manage Maps > Create Map e assegna un ID (mydynamicmap) e un alias (My Dynamic Map).

nagvis2 dynmap create

Quindi apri le opzioni della mappa con Edit Map > Map Options e seleziona la scheda Dynmap. Qui attiva l'opzione dynmap_object_types e scegli i servizi come tipo di oggetto.

La parte interessante segue ora con la seconda opzione dynmap_object_filter, con la quale viene definito il filtro per i servizi. Utilizza la semplice query Livestatus Filter: description ~ CPU load\n. Con questa la stringa CPU load verrà cercata nella colonna description. Questa \n non appartiene al filtro stesso, ma genera un'interruzione di riga necessaria alla query Livestatus costruita dal filtro.

nagvis2 dynmap options filter

Se ora salvi, tutti i servizi CPU load del tuo monitoraggio appariranno sulla mappa. Inoltre, tutti i nuovi oggetti del monitoraggio che corrispondono al filtro verranno aggiunti automaticamente alla mappa.

nagvis2 dynmap auto icons

Nella documentazione di NagVis è descritto anche come funziona la configurazione direttamente tramite i file di configurazione.

A proposito: poiché le mappe dinamiche possono essere salvate anche come mappe statiche con Actions > Export to static map, questo metodo può essere utilizzato come aiuto per i principianti per creare mappe statiche contenenti molti elementi.

4. Personalizzazione delle mappature

4.1. Linee

NagVis offre diversi tipi di linee: ci sono linee puramente decorative senza ulteriori funzioni in Edit Map > Add Special > Stateless Line, linee che visualizzano host e servizi con "colori a semaforo" allo stesso modo delle icone e le linee weathermap. Queste ultime visualizzano la larghezza di banda della rete utilizzando sette colori distinti. Per creare una linea weathermap procedi come segue:

Inizia con Edit Map > Add Line > Service e seleziona un host e un'interfaccia di rete nella finestra di dialogo Create Object.

nagvis2 lines create

Quindi, passa alla scheda Appearance e imposta view_type su line. Come line_type attiva la voce --%+BW-><-%+BW--. In questo modo verranno generate delle linee per l'upload e il download che includeranno etichette per la larghezza di banda percentuale (%) e assoluta (BW).

nagvis2 lines line type

Una volta salvate, le linee appariranno sulla mappa. Facendo clic sul simbolo del "lucchetto" al centro è possibile spostare i punti finali e il punto centrale della linea.

nagvis2 lines weatherlines

NagVis fornisce anche una legenda predefinita: utilizzando Edit Map > Add Special > Shape inserisci una cosiddetta forma - semplicemente un'immagine in NagVis. Nell'opzione icon scegli l'immagine demo_traffic_load_legend.png dal menu a discesa.

nagvis2 lines weatherlines result

4.2. I gadget

I gadget, come le linee e i simboli, sono un ausilio alla visualizzazione su una mappa. Mostrano dati sulle prestazioni sotto forma di tachimetri, termometri o simili. Di conseguenza, sono disponibili solo per i servizi. Ad esempio, il carico di un'interfaccia di rete può essere creato con lo stile di un tachimetro:

Aggiungi un servizio come simbolo alla tua mappa utilizzando Edit Map > Add Icon > Service. Nella scheda General scegli un host e un'interfaccia di rete adeguata come servizio.

Passa alla scheda Appearance e imposta view_type su gadget. Subito sotto, attiva gadget_url. Qui ci sono diverse varianti di visualizzazione che corrispondono ai file di ~/share/nagvis/htdocs/userfiles/gadgets/. Seleziona std_speedometer.php per la visualizzazione del tachimetro.

nagvis2 gadget speedometer

4.3. Container/iframe

Un'interessante possibilità per mostrare informazioni esterne è data dai container. Qui puoi semplicemente specificare un URL e consentire la visualizzazione dell'obiettivo in un iframe. Ad esempio, una visualizzazione del gruppo di host limitata alla sola tabella dovrebbe servire come visualizzazione incorporata.

Aggiungi un container alla tua mappa utilizzando Edit Map > Add Special > Container. A differenza dei simboli host e servizio, in questo caso non puoi semplicemente cliccare sulla mappa, ma devi disegnare una finestra di dialogo. Questa può ovviamente essere modificata in qualsiasi momento successivo. Si aprirà nuovamente una finestra di dialogo con le opzioni.

Nella scheda General imposta view_type su iframe. Il lavoro vero e proprio si svolge nell'opzione url: l'URL di base può essere ottenuto nella pagina della visualizzazione del gruppo di host. Occorre poi aggiungere le opzioni per la visualizzazione incorporata con la quale viene effettivamente visualizzata solo la tabella (più un po' di sfondo). L'URL può quindi avere un aspetto simile a questo:

/mysite/check_mk/view.py?view_name=hostgroups&display_options=tbdezocf

L'esatto adattamento e posizionamento del contenitore viene effettuato anche nella scheda General inserendo le coordinate, l'altezza e la larghezza. Se vuoi aprire il menu contestuale di un contenitore iframe, devi posizionare il cursore del mouse direttamente sul bordo in modo che cambi la sua forma per il ridimensionamento.

nagvis modify container

4.4. Far ruotare le mappe

Nella pagina panoramica di NagVis avrai notato la voce Rotations in basso a sinistra nella barra di navigazione, oppure l'elenco delle mappe sotto Rotation Pools al centro. Le mappe possono essere impostate per ruotare automaticamente a qualsiasi intervallo desiderato, il che è pratico ad esempio per i monitor informativi visibili al pubblico.

Puoi configurare questo aspetto nel file di configurazione di NagVis ~/etc/nagvis/nagvis.ini.php. Apri questo file e scorri fino alla riga 448, dove troverai il link Rotation pool definitions.

Qui sono necessarie tre righe per definire un pool di rotazione, le mappe appropriate e l'intervallo: nell'esempio seguente il pool myrotation con le mappe mymap1, mymap2 e mymap3, e con un intervallo di 30 secondi:

~/etc/nagvis/nagvis.ini.php
[rotation_myrotation]
maps="mymap1,mymap2,mymap3"
interval=30
In questa pagina