La corretta denominazione dei sistemi è la base di un'operazione IT produttiva e costituisce anche il fondamento dell'automazione IT. Ma come si presenta in pratica un buon naming concept? In questo articolo ti mostrerò alcuni elementi chiave e suggerimenti su come implementarlo. Utilizzerò un ambiente VMware come esempio pratico, poiché i naming concepts sono particolarmente importanti per il monitoraggio di VMware.

Tuttavia, non cambiare i nomi in VMware senza aver letto fino alla fine di questo articolo. L'ideale sarebbe seguire questi criteri nell'assegnazione dei nomi, evitando così molte potenziali insidie.

  • Leggibilità: La semplicità batte la complessità! Dovresti sapere a cosa corrisponde un'abbreviazione senza dover controllare un foglio di calcolo Excel. Ogni nome deve essere facile da leggere per un essere umano e deve rivelare le informazioni più importanti su un sistema. Queste dovrebbero sempre includere informazioni sull'architettura e sul funzionamento del sistema. A seconda delle dimensioni dell'organizzazione, può essere utile aggiungere dettagli come la sede.
  • Coerenza: Il naming concept scelto deve essere coerente e continuo, senza duplicazioni o cambiamenti di formato. Ad esempio, per i numeri, considera il numero di cifre: "nome-001.lan.domain.net" sarà inadeguato quando ci saranno più di 1.000 sistemi.
  • Universalità: Usare i nomi DNS in modo coerente in ogni strumento, anche se usare i nomi DNS significa usare sempre le minuscole e non usare gli spazi. In questo modo si garantisce che ogni sistema dell'intera rete abbia un solo nome e possa essere identificato in modo univoco da ogni persona e da ogni strumento. Questo non solo ti risparmia la gestione manuale degli indirizzi IP, ma è una base importante per automatizzare i processi.
  • FQDN: si consiglia di utilizzare nomi DNS completamente qualificati (FQDN) che includono il nome del dominio e non solo nomi brevi. Questo comporta diversi vantaggi:
    • Se si utilizza più di un dominio, è possibile distinguere i sistemi con un nome breve uguale o simile. Ad esempio, noi di tribe29 ospitiamo due siti web (www.checkmk.com e www.tribe29.com). Pertanto, sotto entrambi i domini, potrebbero esserci sistemi con nomi brevi identici.
    • Tenete inoltre presente che quando si utilizza una comunicazione crittografata, un certificato viene rilasciato solo per il nome di dominio completo. Un tentativo di accesso tramite il nome breve fallirebbe quindi con un avviso sulla validità del certificato.

Un esempio che utilizza una macchina virtuale: Bastano pochi caratteri

In pratica, è possibile implementare queste raccomandazioni utilizzando il principio "luogo-tipo-numero-funzione.dominio" . Ad esempio, il nome DNS di un VMware vCenter è "muc-vm-vcenter-001.lan.domain.net". Si tratta della macchina virtuale su cui è in esecuzione il vCenter.

Posizione: Dove si trova il sistema?

muc-vm-vcenter-001.lan.domain.net

Nel mio ambiente, ho creato un data center virtuale in vSphere per ogni filiale fisica e l'ho chiamato con il nome della città in cui si trova la filiale. "muc" sta per "Monaco di Baviera" e se hai più sedi a Monaco, puoi numerare ciascuna di esse, ad esempio.

Tipo: Si tratta di hardware o software?

muc-vm-vcenter-001.lan.domain.net".

Nel mio esempio "vm" sta per "macchina virtuale". In alternativa, potrei avere 'sr1' per 'server rack 1' o 'aws' se l'host fosse in esecuzione su un server bare metal o in AWS, rispettivamente. Queste informazioni sono importanti perché se si verifica un problema con il sistema, è possibile vedere immediatamente quali sono le opzioni di intervento. Ad esempio, è possibile avviare una macchina virtuale da remoto, ma non necessariamente uno switch fisico.

Funzione: Cosa fa questo sistema?

'muc-vm-vcenter-001.lan.domain.net'

'vcenter' indica che il mio VMware vCenter è in esecuzione su questa VM. Se una VM funge da server, ad esempio per SQL o LDAP, memorizzo queste informazioni direttamente nel nome DNS.

Numerazione sequenziale

'muc-vm-vcenter-001.lan.domain.net'

001" è il mio numero sequenziale. Attualmente ho un solo VMware vCenter in uso, utilizzando un numero a tre cifre non avrò problemi con il mio formato se aggiungerò altri vCenter. Tuttavia, tieni presente che con altri sistemi il numero potrebbe essere significativamente più alto. In un ambiente molto grande, ad esempio, è possibile ospitare più di 1.000 server SQL in un'unica posizione.

Migliori pratiche: Nomi DNS in VMware vSphere

Sulla base di questo principio, ho creato i primi host per il sito di Monaco nel client vSphere. Oltre ai due host ESXi, nel sito di Monaco è attualmente in esecuzione un solo server SQL. Tutti i nomi di visualizzazione per i sistemi operativi sono facili da capire, risolvibili dal DNS, coerenti e utilizzano un nome completamente qualificato. Utilizzo anche un modello denominato 'TemplateWindowsServer2016' e ho un server di prova denominato '_muc-vm-001.lan.domain.net'.

Schermata del client VMware con alcune macchine virtuali

Ho scelto deliberatamente i nomi per il modello e il server di prova perché sto già pensando al monitoraggio con Checkmk. Quando si monitorano ambienti virtualizzati come VMware, è consigliabile che Checkmk crei automaticamente gli host nel monitoraggio. Per impostazione predefinita, Checkmk adotta i nomi di visualizzazione di VMware come nomi di host in Checkmk. Assegnando i prefissi nei nomi di visualizzazione, è possibile gestire facilmente gli host in seguito nel monitoraggio. Pertanto, consiglio di concordare prefissi uniformi con i colleghi.

Per il mio modello, ad esempio, utilizzo il prefisso 'template'. Questo è importante perché l'API di VMware non consente di distinguere tra modelli e macchine virtuali reali quando si recuperano i dati di monitoraggio. Pertanto, inizialmente Checkmk vede sempre i template come macchine virtuali spente. Con il prefisso 'Template', posso utilizzare in seguito la regola di monitoraggio 'Stati degli host ESX e delle macchine virtuali' per garantire che Checkmk riconosca anche tutti i template come tali e, ad esempio, non invii falsi avvisi.

Per il mio dispositivo di prova '_muc-vm-001.lan.domain.net', ho modificato leggermente il nome visualizzato. Il nome DNS sarebbe 'muc-vm-test-001.lan.domain.net'. Il trattino basso ('_') aggiunto davanti al nome è un carattere che ho concordato con il team IT e segnala che si tratta di un caso speciale. Inoltre, in seguito in Checkmk potrò facilmente utilizzare delle regole per garantire che questo dispositivo non generi falsi allarmi.

Oltre al trattino basso per i sistemi che possono essere offline, di solito uso anche il simbolo hash ('#') come prefisso al nome visualizzato. In questo modo, contrassegno i sistemi che non voglio avere nel monitoraggio. È quindi possibile utilizzare la regola di monitoraggio "Servizi disabilitati" di Checkmk per rimuovere tali sistemi dal monitoraggio. Questo è utile, ad esempio, se si utilizzano infrastrutture desktop virtuali con VMware Horizon. In questo caso, le macchine virtuali vengono spesso create per gli utenti e poi spente di nuovo. Pertanto, non ha senso includere tali macchine virtuali in Checkmk.

Non vengono utilizzati nomi DNS? La personalizzazione dei nomi di visualizzazione in VMware è (non sempre) consigliabile

Se i nomi di visualizzazione dei sistemi non seguono un naming concept  coerente, è possibile modificarli in seguito. Tuttavia, è necessario procedere con cautela. Se si modifica il nome di una macchina virtuale in VMware, si modifica solo il nome visualizzato. I nomi dei file della VM o i nomi delle directory in cui si trovano i file non vengono modificati e continuano a utilizzare il nome visualizzato originale.

Piccole modifiche, come l'aggiunta di un trattino basso o di un hash, consentono di riconoscere il vecchio nome visualizzato. Ad esempio, se qualcuno sta ripulendo il file system, ogni membro del team riconoscerà a quale VM appartengono i file nonostante la modifica. Tuttavia, se il nome visualizzato è stato completamente sostituito, sembrerà che i dati non siano più necessari poiché non esiste più una VM con il vecchio nome visualizzato. L'eliminazione dei dati rende quindi la macchina virtuale inutilizzabile.

A causa di questo rischio, alcune organizzazioni hanno requisiti severi per la rinominazione o non la consentono affatto. A seconda delle dimensioni del tuo ambiente VMware e dell'esperienza del tuo team IT, potresti voler evitare di rinominare. Occorre inoltre tenere presente che la modifica del nome visualizzato può influire, ad esempio, sui processi di backup e potrebbe essere necessario modificare anche questi ultimi. Ciò dipende ovviamente dalla soluzione di backup utilizzata.

L'unico modo per ottenere nomi di visualizzazione modificati nei nomi di file e directory in VMware VMFS è riscriverli. Questo avviene solo quando si sposta il sistema su un altro storage utilizzando Storage-VMotion. Per poterlo fare online, è necessario soddisfare i requisiti di licenza corrispondenti.

Con gli host ESXi, il cambio di nome è più complesso perché è necessario rimuoverli dal cluster e spegnere tutte le macchine virtuali. Per informazioni su questa procedura, consultare il manuale VMware. Tuttavia, a causa della lunga preparazione e delle modifiche necessarie per la configurazione, consiglio questa procedura solo agli utenti esperti.

L'impegno richiesto per modificare i nomi delle macchine virtuali e degli host ESXi non è sempre giustificabile. Un buon nome di host è particolarmente importante per Checkmk, che può così assegnare chiaramente i dati di monitoraggio provenienti da fonti diverse a un sistema. È possibile tradurre i nomi dei display di VMware e di altre soluzioni di virtualizzazione in nomi di host di propria scelta con la regola di monitoraggio 'Piggyback Translation'. Le istruzioni per il 'meccanismo Piggyback' sono disponibili nel manuale di Checkmk. Utilizzare questa regola con cautela, tuttavia, e solo in casi eccezionali. È preferibile utilizzare un naming concept coerente.

Conclusioni: Un buon nome DNS è sicuramente utile

Questo articolo descrive i punti da considerare quando si tratta di concetti di denominazione. Una politica di denominazione appropriata consente di risparmiare molto tempo ed è la base ottimale per implementare le sfide IT quotidiane e automatizzare i processi.

I vantaggi diventano evidenti nella pratica, ad esempio nel monitoraggio di VMware con Checkmk. In questo caso, i naming concepts sono particolarmente importanti perché Checkmk può creare automaticamente gli host per te. Inoltre, con un naming concept adeguato in Checkmk, è possibile applicare le regole di monitoraggio in modo flessibile e preciso. In questo modo si risparmia tempo, perché si possono gestire subito le categorie di host invece di dover gestire i singoli host. Ad esempio, se vengono aggiunti nuovi host a un sito o nuovi host di un particolare tipo, Checkmk applicherà automaticamente le regole appropriate.