Ricerca nel sito web

Collectl: uno strumento avanzato di reporting delle prestazioni di Linux


Il compito più importante di un amministratore di sistema Linux è assicurarsi che il sistema che sta amministrando sia in ottime condizioni. Sono disponibili molti strumenti per gli amministratori di sistema Linux che possono aiutare a monitorare e visualizzare i processi in un sistema come top e htop, ma nessuno di questi strumenti può competere con collectl.

collectl è un'utilità da riga di comando molto interessante e ricca di funzionalità che può essere utilizzata per raccogliere dati sulle prestazioni che descrivono lo stato corrente del sistema. A differenza della maggior parte degli altri strumenti di monitoraggio, collectl non si concentra su un numero limitato di parametri di sistema, ma può raccogliere informazioni su molti tipi diversi di risorse di sistema come CPU, disco, memoria, rete, socket, tcp, inode, infiniband, cluster, memoria, nfs, processi, quadriche, lastre e buddyinfo.

Un aspetto molto positivo dell'utilizzo di collectl è che può anche svolgere il ruolo di utilità progettate solo con uno scopo specifico come top, ps, iotop e molte altre. Quali sono alcune funzionalità che rendono colleclt uno strumento utile?

Di seguito sono riportate alcune delle funzionalità più importanti dell'utilità della riga di comando collectl.

Caratteristiche collezionabili

  • Può essere eseguito in modo interattivo, come demone o entrambi.
  • Può visualizzare l'output in molti formati.
  • Ha la capacità di monitorare quasi tutti i sottosistemi.
  • Può svolgere il ruolo di molte altre utilità come ps, top, iotop e vmstat.
  • Ha la capacità di registrare e riprodurre i dati catturati.
  • Può esportare dati in vari formati di file. (questo è molto utile quando vuoi analizzare i dati con strumenti esterni).
  • Può essere eseguito come servizio per monitorare macchine remote o un intero cluster di server.
  • Può visualizzare i dati nel terminale e scrivere su un file o su un socket.

Come installare Collectl in Linux

L'utilità collectl funziona su tutte le distribuzioni Linux, l'unica cosa che richiede per essere eseguita è perl, quindi assicurati di avere Perl installato (fornito preinstallato) nel computer prima di installare collectl nel computer.

Installa Collectl nei sistemi Debian

Il seguente comando può essere utilizzato per installare l'utilità collectl nelle distribuzioni basate su Debian come Ubuntu e Linux Mint.

sudo apt-get install collectl

Installa Collectl nei sistemi Debian

Se stai utilizzando una distribuzione basata su RedHat come Rocky Linux o AlmaLinux, o qualsiasi altra distribuzione Linux, puoi facilmente scaricare il tarball, decomprimerlo ed eseguirlo come mostrato

wget https://sourceforge.net/projects/collectl/files/latest/download -O collectl.tar.gz
tar -xvf collectl.tar.gz
cd collectl-*
./INSTALL

Utilizzo dello strumento di monitoraggio Collectl in Linux

Una volta terminata l'installazione dello strumento collectl, potrai eseguirlo facilmente dal terminale, anche senza alcuna opzione. Il seguente comando visualizzerà informazioni su CPU, disco e statistiche di rete in un formato molto breve e leggibile dall'uomo.

collectl

Come potete vedere dall'output sopra visualizzato sullo schermo del terminale, è molto semplice lavorare con i valori delle metriche di sistema presenti nell'output del comando perché appare su un'unica riga.

Quando l'utilità collectl viene eseguita senza alcuna opzione, visualizza informazioni sui seguenti sottosistemi:

  • processore
  • dischi
  • rete

Nota: nel nostro caso, un sottosistema è ogni tipo di risorsa di sistema che può essere misurata.

Puoi anche visualizzare le statistiche per tutti i sottosistemi eccetto i solai combinando il comando con l'opzione --all come mostrato di seguito.

collectl --all

Ma come monitorare l'utilizzo della CPU con l'aiuto dell'utilità? L'opzione -s dovrebbe essere utilizzata per controllare quali dati del sottosistema devono essere raccolti o riprodotti.

Ad esempio, il seguente comando può essere utilizzato per monitorare il riepilogo dell'utilizzo della CPU.

collectl -sc

Cosa succede quando combini il comando con "scdn"? Il modo migliore per imparare a utilizzare gli strumenti da riga di comando è esercitarsi il più possibile, quindi esegui il seguente comando nel tuo terminale e guarda cosa succederà.

collectl -scdn

Puoi facilmente capire che l'opzione predefinita è "cdn", sta per CPU, dischi e dati di rete. Il risultato del comando è lo stesso dell'output di "collectl -scn"

Se desideri raccogliere dati sulla memoria, utilizza il seguente comando.

collectl -sm

L'output sopra è molto utile quando desideri ottenere informazioni dettagliate sull'utilizzo della memoria, sulla memoria libera e su altri elementi importanti per le prestazioni del tuo sistema.

Che ne dici di alcuni dati su TCP? Utilizzare il seguente comando per farlo.

collectl -st

Dopo aver acquisito una certa esperienza, puoi facilmente combinare le opzioni per ottenere i risultati desiderati. Ad esempio, puoi combinare "t" per tcp e "c" per cpu. Il comando seguente lo fa.

collectl -stc

È difficile per noi umani ricordare tutte le opzioni disponibili, quindi pubblico l'elenco riepilogativo dei sottosistemi supportati dallo strumento.

  • b – informazioni sull'amico (frammentazione della memoria)
  • c – CPU
  • d – Disco
  • f – Dati NFS V3
  • i – Inode e file system
  • j – Interrompe
  • l – Lucentezza
  • m – Memoria
  • n – Reti
  • s – Socket
  • t – TCP
  • x – Interconnetti
  • y – Slab (cache di oggetti di sistema)

Un dato molto importante per un amministratore di sistema o un utente Linux sono i dati raccolti sull'utilizzo del disco. Il seguente comando ti aiuterà a monitorare l'utilizzo del disco.

collectl -sd

Puoi anche utilizzare l'opzione "-sD" per raccogliere dati su singoli dischi, ma devi sapere che le informazioni sui dischi totali non verranno riportate.

collectl -sD

È inoltre possibile utilizzare altri sottosistemi di dettaglio per raccogliere dati dettagliati. Di seguito è riportato un elenco dei sottosistemi dettagliati.

  • C – CPU
  • D – Disco
  • E – Dati ambientali (ventilatore, potenza, temperatura), tramite ipmitool
  • F – Dati NFS
  • J – Interrompe
  • L – Dettaglio OST brillante O dettaglio file system del client
  • N – Reti
  • T – 65 contatori TCP disponibili solo in formato grafico
  • X – Interconnetti
  • Y – Lastre (cache di oggetti di sistema)
  • Z – Processi

Ci sono molte opzioni disponibili nell'utilità collectl, ma non c'è abbastanza tempo e spazio per trattarle tutte in un solo articolo. Tuttavia, vale la pena menzionare e insegnare come utilizzare l'utilità come top e ps.

È molto semplice far funzionare collectl come utilità top, basta eseguire il seguente comando nel terminale e vedrai un output simile in top ti dà quando viene eseguito nel tuo sistema Linux.

collectl --top

E ora, ultimo ma non meno importante, per utilizzare l'utilità collectl come strumento ps esegui il seguente comando nel tuo terminale. Otterrai informazioni sui processi nel tuo sistema nello stesso modo in cui esegui il comando "ps" nel tuo terminale.

collectl -c1 -sZ -i:1

Sono molto sicuro che molti amministratori di sistema Linux apprezzeranno lo strumento collectl e ne sentiranno la potenza quando lo utilizzeranno al massimo. Se desideri migliorare le tue conoscenze su collectl al livello successivo, fai riferimento alle pagine del manuale e continua a esercitarti.

Basta digitare il seguente comando nel terminale e iniziare a leggere.

man collectl