![]() |
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. Introduzione
Checkmk offre diversi provider per organizzare gli host: A volte, però, non è facile decidere quale sia lo strumento più adatto per un compito specifico e domande apparentemente semplici si rivelano più complicate del previsto. Perché esistono sia tag degli host che etichette? Quali proprietà possono essere assegnate alle cartelle e quindi ereditate nella struttura delle cartelle? Dove trovo le condizioni per i gruppi di host in una regola? (Avviso spoiler: non esiste).
Questo articolo offre una panoramica dei vari elementi di strutturazione di Checkmk e ne spiega le somiglianze e le differenze. Avrai così tutte le informazioni necessarie per impostare una struttura che si adatti al tuo ambiente. Ci rendiamo conto che al momento mancano ancora degli aspetti importanti per questo tema e quindi stiamo lavorando continuamente per colmare queste lacune, un po' alla volta.
Particolarmente interessanti sono gli elementi di strutturazione per l'ambiente di configurazione, che possono essere selezionati come condizioni nelle regole, ossia cartelle, tag degli host ed etichette. Questo ti permette di accedere alla tua struttura in base a delle regole e, ad esempio, di smistare automaticamente i (nuovi) host nelle cartelle a loro destinate. Inoltre, per ognuno degli elementi di strutturazione presentati, imparerai come utilizzarli nell'ambiente di monitoraggio.
Infine, alla fine di questo articolo, le proprietà importanti degli elementi di strutturazione sono riassunte in una tabella.
2. Cartelle ed eredità
2.1. Strutturazione con cartelle
Chiunque lavori con i computer ha familiarità con i file e le cartelle. In Checkmk questo principio ben noto è stato adottato per la strutturazione degli host, che sono archiviati in cartelle. Solo la cartella Main - la root folder dell'albero - è predefinita. Al di sotto (all'interno) di questa cartella principale, puoi creare la tua struttura di cartelle con tutte le sottocartelle che desideri, visualizzate come un cosiddetto albero degli host. I criteri comunemente utilizzati per la costruzione dell'albero host sono la posizione, la tecnologia e la struttura organizzativa. Puoi accedere alla cartella Main selezionando Setup > Hosts > Hosts.
Tramite le cartelle, gli attributi possono essere ereditati dalle sottocartelle e dagli host che contengono. Per maggiori dettagli sul funzionamento dell'ereditarietà, consulta l'articolo sull'amministrazione degli host. Vengono ereditati gli attributi delle cartelle, ossia le proprietà delle cartelle visualizzate nella pagina Setup della pagina Folder properties, come gli agenti di monitoraggio e i permessi, ma anche altri elementi di strutturazione come i tag degli host, le etichette o i genitori. Molte delle proprietà delle cartelle si trovano anche nelle proprietà degli host nella pagina Properties of host. L'ereditarietà è particolarmente utile per gli attributi comuni a molti host, come ad esempio se l'host deve essere monitorato dall'agente Checkmk o da SNMP. Un altro vantaggio dell'ereditarietà degli attributi delle cartelle è che puoi preparare delle cartelle per contenere gli host che verranno aggiunti in futuro. Basta inserire il nuovo host nella cartella appropriata e tutti gli attributi predefiniti saranno automaticamente corretti per il nuovo host.
Per trarre il massimo vantaggio dall'ereditarietà, si è rivelato utile pensare prima a un sistema organizzativo e poi a riempirlo di contenuti: in questo modo si crea prima la struttura delle cartelle e la loro gerarchia e poi si smistano gli host nelle cartelle appropriate.
Questo è tanto più importante quanto più grande è l'ambiente e quanto più numerosi sono gli host. Una volta che la struttura delle cartelle è stata impostata, può essere modificata in seguito e le cartelle possono essere rinominate senza problemi. Bisogna però fare attenzione: lo spostamento di un host in un'altra cartella può modificare i suoi attributi senza che tu te ne accorga, cioè la cartella di destinazione può avere attributi diversi da quelli della cartella di origine.
Tuttavia, solo in rari casi la struttura a cartelle può rappresentare la complessità dei sistemi reali. Se vuoi (o hai bisogno) di organizzare i tuoi host in base a molti criteri diversi, i tag degli host descritti nel prossimo capitolo possono esserti utili.
2.2. La struttura delle cartelle nel monitoraggio
La struttura ad albero generata dalle cartelle è visibile anche nell'ambiente di monitoraggio, ma solo se una cartella contiene almeno un host.
La barra dei filtri
Innanzitutto, nella barra dei filtri della visualizzazione è presente il filtro Folder, che ti permette di limitare la visualizzazione corrente agli host che si trovano sotto una cartella specifica.
Come mostra l'immagine seguente, sono disponibili altri filtri per altri elementi di strutturazione come i tag degli host, le etichette e i gruppi di host.

Albero delle cartelle
In secondo luogo, nella barra laterale, lo snap-in Tree of folders offre le stesse opzioni di selezione del menu Monitor, ma può anche limitare la visualizzazione a una cartella:

3. I tag degli host
I tag degli host sono descritti in dettaglio in questa Guida per l'utente nella Guida per principianti e in un articolo a sé stante. Pertanto, in questo articolo verranno trattati in breve solo i punti più importanti:
Un tag host è un attributo che viene assegnato a un host. I tag host sono organizzati in gruppi, i cosiddetti gruppi di tag host. Con la creazione di un gruppo di tag host, tutti i tag di questo gruppo sono completamente definiti. I tag di un gruppo sono mutuamente esclusivi, cioè ogni host riceve esattamente un tag del gruppo. Se non hai specificato nient'altro, questo è il primo tag del gruppo, che serve quindi come valore predefinito.
Un tag checkbox è un gruppo speciale di tag degli host con un solo elemento e viene utilizzato per prendere una decisione del tipo: "Questo host sta eseguendo Oracle". Con i tag ausiliari è possibile combinare diversi tag di un gruppo, ad esempio il tag Windows Server 2012 R2
e il tag Windows Server 2016
con il tag ausiliario Windows
.
3.1. Strutturazione con i tag degli host
I tag degli host hanno proprietà simili a quelle delle etichette e delle cartelle.
L'assegnazione di un tag o di un'etichetta dell'host ha un risultato molto simile. In entrambi i casi, puoi usare il flag assegnato nella configurazione per impostare delle condizioni per le regole. Tuttavia, prima di assegnare un tag dell'host, devi definire il gruppo di tag dell'hostassociato, cioè pensare a tutti i possibili valori che tale tag potrebbe avere.
La completezza di un gruppo di tag host ricorda quindi l'impostazione della struttura delle cartelle: così come un host può essere collocato in una sola cartella, può anche avere un solo tag di un gruppo di tag host. In altre parole, un host è sempre assegnato a una cartella e ha sempre un tag di un gruppo di tag host (se lasciamo da parte per un momento i tag della checkbox). Pertanto, i tag host sono adatti alle proprietà che sono sempre presenti (o almeno dovrebbero esserlo) e di solito sono specificati dall'amministratore di Checkmk per l'intero sistema da monitorare e per tutti gli utenti di Checkmk.
Per quanto riguarda la struttura delle cartelle: per la configurazione di ambienti di grandi dimensioni, fin dall'inizio è molto utile impostare una struttura ben pianificata di tag degli host.
Puoi assegnare i tag a un host nella pagina Properties of host, quando crei o modifichi un host. Troverai molti attributi sia nelle proprietà di un host che in quelle delle cartelle, e lo stesso vale per i tag degli host. Questo significa che i tag degli host sono validi non solo per gli host ma anche per le cartelle.
Per evitare sorprese indesiderate durante l'ereditarietà, devi prestare attenzione al valore predefinito quando definisci un gruppo di tag host. Di regola, è opportuno impostare un valore neutro come valore predefinito, ad esempio None
o not applicable
.
Le modifiche successive ai tag degli host una volta che sono stati impostati sono possibili, ma dovrebbero essere evitate - quando si tratta di rinominare l'ID di un tag, poiché nella maggior parte dei casi ciò richiede una rielaborazione manuale. Le modifiche che riguardano solo una visualizzazione o che aggiungono solo nuove scelte, invece, non presentano problemi e non hanno alcun effetto sui tag e sulle regole esistenti.
3.2. I tag degli host nel monitoraggio
I tag host non sono utili solo nelle configurazioni, ma anche nel monitoraggio. Ad esempio, nella barra dei filtri delle visualizzazioni ci sono anche filtri per i tag host, come mostrato nella schermata del capitolo sulle cartelle.
4. Etichette
Le etichette sono attributi assegnati a un host e quindi, proprio come i tag dell'host, sono identificatori di un host. L'introduzione dettagliata nell'articolo sulle etichette spiega il concetto di etichetta rispetto ai tag dell'host. A questo punto, possiamo limitarci a descrivere brevemente le basi delle etichette:
Le etichette sono semplici coppie chiave-valore, come os:linux
, os:windows
o foo:bar
, che non sono già state predefinite altrove. Non ci sono (quasi) restrizioni nella definizione delle etichette, ad eccezione di quanto segue: una chiave e il suo valore devono essere separati da due punti. Un host può avere un numero qualsiasi di etichette, ma solo un valore per chiave. Ad esempio, un host che ha l'etichetta foo:bar
non può avere allo stesso tempo foo:bar2
.
A proposito, in Checkmk non solo gli host ma anche i servizi possono avere delle etichette. Ci sono tuttavia alcune particolarità da considerare per le etichette di servizio, che sono descritte nell'articolo sulle etichette.
4.1. Strutturare con le etichette
Una volta definite le etichette, puoi utilizzare le stesse funzionalità che hai con le cartelle e i tag degli host. Durante la configurazione puoi definire le condizioni per le regole che dipendono dalle etichette.
Mentre con i tag host tutti gli host sono già dotati di un tag host grazie alla definizione del gruppo di tag host, nel caso delle etichette l'assegnazione funziona in modo diverso. Le etichette possono essere definite in modo esplicito, per mezzo di regole e in modo automatico. I vari modi in cui gli host possono ricevere le loro etichette sono un aspetto da tenere presente quando si tratta di capire come utilizzare le etichette per strutturare i tuoi host.
L'assegnazione esplicita di un'etichetta viene eseguita nelle proprietà dell'host, utilizzando il box Custom attributes. Inserisci una coppia chiave-valore e premi Invio: Le etichette possono essere definite anche nelle proprietà delle cartelle, che vengono poi ereditate dalla struttura delle cartelle in Checkmk.
Se non hai bisogno di un valore per un'etichetta, ma vuoi solo sapere se una certa etichetta è collegata o meno all'host, assegna semplicemente yes
come valore (vm:yes
), ad esempio. Se seguirai questo schema in modo coerente, sarà più facile per te definire condizioni per tali etichette in seguito.
L'assegnazione esplicita è molto semplice, ma presenta delle insidie, perché il rischio di incongruenze dovute a errori di ortografia è elevato. Dato che le etichette possono essere assegnate liberamente, Checkmk non può nemmeno verificare se foo:bar
, Foo:bar
o Fu:baa
è l'etichetta "corretta". Dovresti quindi considerare anche il modo in cui mantenere la sensibilità alle maiuscole e minuscole, perché se in seguito definisci delle condizioni tramite le etichette, l'ortografia corretta deve essere rigorosamente mantenuta, sia per la chiave che per il valore.
È quindi consigliabile rinunciare all'assegnazione esplicita per la strutturazione degli host e utilizzare etichette rule-based o la creazione automatica delle etichette.
Se i tag degli host sono adatti a proprietà globali che sono sempre presenti e che di solito vengono specificate dall'amministratore di Checkmk per l'intero sistema da monitorare e per tutti gli utenti di Checkmk, i singoli utenti di Checkmk possono utilizzare le etichette per implementare i requisiti specifici nella loro area di responsabilità. Per una struttura locale gestibile, le etichette possono riempire i vuoti lasciati dall'amministrazione globale, giocando sui vantaggi che le etichette offrono: sono facili e veloci da creare - e anche da cancellare.
4.2. Le etichette nel monitoraggio
Puoi avere una panoramica completa di tutte le etichette dell'host nell'ambiente di monitoraggio attraverso la visualizzazione dello stato dell'host. Nella barra dei filtri delle visualizzazioni delle tabelle hai accesso a tutte le etichette dell'host e puoi anche combinarle con gli operatori booleani Not
, And
e Or
per filtrare. Entrambi i metodi sono descritti nell'articolo sulle etichette.
5. Genitori
5.1. Strutturare utilizzando i genitori
Hai già appreso cosa sono e come funzionano i genitori nell'articolo Principi di base del monitoraggio.
5.2. Creare i genitori manualmente
Per definire un genitore per un singolo host, procedi come segue: seleziona Setup > Hosts > Hosts e clicca sull'host desiderato per visualizzarne le proprietà. Nel box Basic settings, inserisci il genitore con il suo nome o indirizzo IP. Non appena viene specificato un genitore, appare un ulteriore campo di inserimento per un ulteriore genitore:

Importante: specifica solo gli host padre diretti.
In modo simile, i genitori possono essere specificati anche nelle proprietà delle cartelle e quindi ereditati dagli host padre che le cartelle contengono, come descritto nel capitolo precedente su Cartelle ed eredità.
5.3. Specificare i genitori utilizzando una scansione
Quando crei un nuovo sistema di monitoraggio e fin dall'inizio crei una struttura ben organizzata con cartelle e genitori, probabilmente ti troverai bene con l'ereditarietà dei genitori attraverso le cartelle. Tuttavia, puoi anche impostare automaticamente i genitori attraverso il sito Parent scan.
Utilizzando il protocollo IP sul livello di rete del modello OSI (livello 3), con traceroute
, la scansione cerca il gateway finale a monte di un host. Se viene trovato un gateway di questo tipo e il suo indirizzo IP appartiene a uno degli host monitorati, viene impostato come genitore. Se traceroute
non ottiene alcuna informazione dagli hop che precedono l'host in questione, viene utilizzato l'ultimo hop riuscito.
Tuttavia, se non viene trovato alcun gateway tra gli host monitorati, Checkmk crea un "host solo ping" artificiale per impostazione predefinita nella cartella Parents che viene creata allo stesso tempo.
Tuttavia, questa impostazione predefinita può anche produrre risultati indesiderati. Ad esempio, prendiamo una tipica rete di piccole dimensioni con l'intervallo di indirizzi 192.168.178.0/24.Se ora viene aggiunto al monitoraggio un host con un indirizzo appartenente a un intervallo di indirizzi diverso, che non può essere pingato, la scansione tenterà il percorso attraverso il router e vi troverà solo il nodo del provider di rete. In questo modo, ad esempio, un server di telecomunicazioni dell'area WAN potrebbe essere impostato come padre di questo host. Per evitare questo inconveniente, puoi disattivare l'opzione corrispondente prima della scansione.
Se vuoi scansionare una cartella con nuovi host per trovare i genitori, procedi come segue: apri la cartella desiderata e seleziona Hosts > Detect network parent hosts dal menu per aprire la configurazione della scansione. A proposito, invece di scansionare un'intera cartella, puoi anche scansionare solo un sottoinsieme di host selezionandoli in anticipo nella prima colonna dell'elenco.

Per eseguire una nuova scansione completa di tutti gli host in tutte le sottocartelle, indipendentemente da eventuali genitori impostati manualmente, seleziona le opzioni Include all subfolders e Scan all hosts. Nella sezione Performance puoi personalizzare la durata della scansione, che può richiedere molto tempo se hai molti host.
In Creation of gateway hosts puoi stabilire se, come e con quale alias vengono creati gli host padre appena trovati. Disattiva questa funzione se vuoi limitare i genitori agli host monitorati.
Ora clicca su Start. Puoi osservare l'output della scansione in tempo reale mentre viene eseguita.
Vedrai quindi i genitori configurati e, se applicabile, una nuova cartella Parents in Main (se l'hai specificato prima della scansione).

Questo completa la scansione.
5.4. I genitori nel monitoraggio
Dopo aver eseguito una scansione e aver attivato le modifiche, le relazioni genitore-figlio vengono visivamente visualizzate in una mappa topologica a cui puoi accedere tramite Monitor > Overview > Parent / Child topology:

Suggerimento: se i risultati della scansione non sembrano plausibili in alcuni punti, a volte può essere utile una chiamata manuale a traceroute
per rintracciare i singoli hop.
6. Gruppi di host
I gruppi di host ti permettono di raggruppare un certo numero di host per visualizzarli in una vista di monitoraggio. Ad esempio, puoi visualizzare tutti i server Linux, i server Windows e alcuni application server insieme impostando un gruppo di host per ognuno di questi tipi di server.
Un gruppo di host viene popolato tramite una regola. Nelle condizioni di questa regola puoi accedere alle cartelle, ai tag degli host e alle etichette, come di consueto. I gruppi di host non appaiono di default come criteri di selezione per le regole perché non vengono utilizzati per la configurazione, ma per le visualizzazioni.
6.1. Creare gruppi di host
I gruppi di host si trovano alla voce Setup > Hosts > Host groups.
Puoi creare un nuovo gruppo di host tramite il pulsante Add group. La creazione è un processo semplice e si limita all'assegnazione di un nome univoco - che non può essere modificato in seguito - e di un alias:

6.2. Aggiungere host ai gruppi di host
Per aggiungere host ai gruppi di host, utilizza il set di regole Assignment of hosts to host groups, che puoi trovare all'indirizzo Setup > Hosts > Host monitoring rules. Crea una nuova regola.
Per prima cosa, nel box Assignment of hosts to host groups, seleziona il gruppo di host a cui assegnare gli host, come il gruppo My Linux servers
dell'esempio:

Poi, nel box Conditions, seleziona il filtro o i filtri per delimitare il gruppo - ovviamente i filtri possono essere combinati. Puoi filtrare gli host per cartelle, tag dell'host, etichette dell'host o specificare host specifici. Se nel gruppo di host vuoi includere host con due tag dello stesso gruppo di tag dell'host, devi creare due regole separate. In generale, le assegnazioni ai gruppi sono cumulative. Gli host possono essere presenti in più gruppi e i gruppi possono essere popolati da più regole.
Nell'esempio seguente, utilizziamo l'etichetta dell'host cmk/os_family:linux
assegnata automaticamente da Checkmk per aggiungere i server Linux al gruppo di host:

In seguito dovrai attivare le modifiche come di consueto.
6.3. I gruppi di host nel monitoraggio
Panoramica dei gruppi di host
Nel monitoraggio, puoi controllare comodamente il risultato delle tue assegnazioni nel sito Setup. I gruppi di host esistenti saranno elencati sotto Monitor > Overview > Host groups:

Cliccando sul nome di un gruppo di host avrai una visualizzazione completa degli host di quel gruppo.
Da questa panoramica puoi utilizzare i gruppi di host in vari modi, ad esempio per creare visualizzazioni e mappature NagVis e come filtri nelle regole di notifica e nei gestori di avvisi.
Visualizzazioni
L'unica cosa importante per la creazione di visualizzazioni (tramite Customize > Visualization > Views) è selezionare un Datasource che utilizzi i gruppi di host, ad es. Host groups.
Nel menu Monitor puoi trovare delle visualizzazioni già pronte, ad esempio Host groups, che abbiamo già mostrato nella sezione precedente.
Le mappature di NagVis
Puoi accedere alle mappe di NagVis con lo snap-in della barra laterale NagVis maps. In una mappa di NagVis puoi ottenere, ad esempio, il riepilogo di un gruppo di host tramite il menu a icone:

Notifiche e gestori di avvisi
Nei set di regole per le notifiche e i gestori di avvisi, i gruppi di host sono disponibili come filtri all'indirizzo Conditions:

7. Sintesi
Per maggiore chiarezza, la seguente tabella mostra le proprietà importanti degli elementi strutturanti presentati in questo articolo.
Elemento strutturante | Creazione | Aggiunta di host | Condizione nelle regole | Ereditarietà tramite cartelle | Visibilità nel monitoraggio |
---|---|---|---|---|---|
Cartella |
Manualmente nel Setup (Setup > Hosts > Hosts) |
Manualmente nel Setup (Setup > Hosts > Hosts) |
Sì |
- |
Snap-in Tree of folders, filtri nelle visualizzazioni delle tabelle |
Tag degli host |
Manualmente in Setup (Setup > Hosts > Tags) specificando il gruppo di tag host |
Automaticamente specificando il gruppo di tag host |
Sì |
Sì |
Snap-in Virtual host tree, filtri nelle visualizzazioni delle tabelle |
Etichette |
Manualmente/esplicitamente in Setup (Properties of host), per regola (Host labels) o automaticamente |
- (Viene sempre creata un'etichetta dell'host). |
Sì |
Sì |
Stato dell'host (Status of Host), filtro nelle visualizzazioni della tabella |
Genitori |
Manualmente nel Setup (Properties of host) o automaticamente tramite scansione in una cartella (Hosts > Detect network parent hosts). |
- (Viene sempre creato un padre per un host). |
No |
Sì |
Mappatura della topologia (Monitor > Overview > Parent / Child topology) |
Gruppi di host |
Manualmente nel Setup (Setup > Hosts > Host groups) |
Per regola (Assignment of hosts to host groups) |
No |
No |
Come visualizzazione propria (Monitor > Overview > Host groups), filtro nelle visualizzazioni, nelle mappature di NagVis, ecc. |