GNU/Linux >> Linux Esercitazione >  >> Linux

Come monitorare le prestazioni dei sistemi Linux con il comando iostat

Il comando iostat viene utilizzato per monitorare l'utilizzo della CPU e le statistiche di I/O (input/output) di tutti i dischi e i file system. Il comando nfsiostat viene utilizzato per monitorare le statistiche di i/o del file system di rete (NFS).

Il comando iostat monitora il caricamento dei dispositivi I/O (Input/Output) osservando il tempo, i dispositivi sono attivi rispetto alle loro velocità di trasferimento medie. Questo comando è particolarmente utile per generare rapporti che possiamo utilizzare per ottimizzare il carico di input e output del sistema.

Il comando iostat generalmente genera due rapporti:

  • Rapporto sull'utilizzo della CPU
  • Rapporto statistico di tutti i dischi i/o

Per generare i report, il comando iostat legge alcuni dei file di sistema. Questi file sono,

  • /proc/diskstats per le statistiche del disco
  • /proc/stat per le statistiche di sistema
  • /sys per bloccare le statistiche del dispositivo
  • /proc/devices per nomi di dispositivi persistenti
  • /proc/self/mountstats per tutti i filesystem di rete
  • /proc/uptime per informazioni sull'uptime del sistema

In questo tutorial impareremo come installare l'utilità iostat su sistemi Linux e poi discuteremo come generare report usando il comando iostat,

Installazione Iostat su sistemi Linux:

iostat fa parte di "sysstat ', possiamo installarlo sul nostro sistema usando il seguente comando,

CentOS/RedHat

[[email protected] ~]# yum install sysstat -y

Ubuntu/Debian

$ sudo apt-get install sysstat -y

Fedora

[[email protected] ~]# dnf install sysstat -y

Ora diamo un'occhiata ad alcuni esempi per capire meglio il comando iostat.

Esempio:1 Ottieni statistiche complete (CPU e dispositivi)

Per ottenere le statistiche complete per il sistema, apri il terminale ed esegui il comando seguente,

[[email protected] ~]# iostat

Questo produrrà il seguente output sullo schermo,

Qui nell'output del comando iostat,

  • %user, è l'utilizzo della CPU per l'utente,
  • %nice, è l'utilizzo della CPU per le app con una buona priorità,
  • %system, è la CPU utilizzata dal sistema,
  • %iowait, è la percentuale di tempo durante la quale la CPU è rimasta inattiva ma si è verificata una richiesta di I/o in sospeso,
  • %steal, percentuale di tempo in cui la CPU è rimasta in attesa mentre l'hypervisor stava lavorando su un'altra CPU,
  • %idle, è la percentuale di tempo in cui il sistema è rimasto inattivo senza richieste in sospeso.

Dispositivi, mostra il nome di tutti i dispositivi sul sistema,

  • Tps, è l'abbreviazione di trasferimento al secondo,
  • Blk_read/s e Blk_write/s sono la velocità di trasferimento per le operazioni di lettura e scrittura,
  • Blk_read &Blk_write mostra il numero totale di blocchi letti e scritti.

Esempio:2 genera solo statistiche CPU

Per generare solo le statistiche della CPU per il sistema, utilizzeremo le opzioni "c" con iostat. Esegui il seguente comando dal terminale,

[[email protected] ~]# iostat -c

Esempio:3 per generare statistiche i/o per tutti i dispositivi (opzione -d) 

Per ottenere il report iostat solo per i dispositivi collegati al sistema, utilizzeremo l'opzione 'd' con il comando iostat,

[[email protected] ~]# iostat -d

Esempio:4 Genera statistiche i/o dettagliate

Sebbene di solito le statistiche fornite dal comando iostat siano sufficienti, ma se desideri ottenere statistiche ancora più dettagliate, possiamo usare l'opzione '-x' insieme al comando iostat. L'esempio è mostrato di seguito,

[[email protected] ~]# iostat -x

Esempio:5 genera rapporti dettagliati per dispositivi e CPU separatamente

Per ottenere informazioni dettagliate sui dispositivi sul sistema, utilizzeremo l'opzione 'd' insieme all'opzione 'x',

[[email protected] ~]# iostat -xd

Allo stesso modo, per generare le informazioni dettagliate per la CPU, utilizzeremo le opzioni "c" e "x",

[[email protected] ~]# iostat -xc

Esempio:6 Ottenere statistiche i/o per un singolo dispositivo

iostat può anche fornire le statistiche di i/o per un singolo dispositivo. Per ottenere le statistiche di un dispositivo, esegui il comando iostat insieme all'opzione "p" seguita dal nome del dispositivo,

[[email protected] ~]# iostat -p sda

Esempio:7 genera rapporti in MB o KB

Possiamo anche generare le statistiche di sistema in unità Megabyte o kilobyte. Per generare i rapporti in mb, utilizzeremo l'opzione 'm' con il comando iostat,

[[email protected] ~]# iostat -m

Allo stesso modo, possiamo anche generare i report in formato kb unit con l'opzione 'k',

[[email protected] ~]# iostat -k

Esempio:8 Generazione di rapporti statistici di I/o di sistema con ritardo

Per acquisire le statistiche di sistema con un ritardo, possiamo citare il comando iostat seguito da intervallo in secondi e numero di rapporti richiesti,

[[email protected] ~]# iostat 3 2

In questo esempio, stiamo acquisendo 2 rapporti a intervalli di 3 secondi,

Possiamo anche usare il parametro delay insieme ad altre opzioni del comando iostat di cui abbiamo discusso sopra.

Esempio:9 Genera il report delle statistiche LVM

Per generare le statistiche LVM, possiamo usare l'opzione 'N' con il comando iostat,

[[email protected] ~]# iostat -N

Esempio:10 genera i rapporti solo per i dispositivi attivi

Possiamo anche generare rapporti per i dispositivi attivi e omettere i dispositivi dai rapporti che sono inattivi per il periodo di campionamento. Useremo l'opzione 'z' con il comando iostat per ottenere ciò,

[[email protected] ~]# iostat -z 2 5

Esempio:11 Genera rapporti iostat con timestamp

Per generare i rapporti iostat con un timestamp, utilizzeremo l'opzione "t" insieme al comando iostat,

[[email protected] ~]# iostat -t

Esempio:12 Genera report statistici in base al nome del dispositivo persistente

Per ottenere il rapporto in base al nome persistente del dispositivo, utilizzeremo l'opzione "j" seguita dalla parola chiave "ID" e dal nome persistente del dispositivo,

Usa il comando blkid per trovare l'UUID del disco.

Una volta trovato l'UUID / ID, utilizzare il comando iostat di seguito,

[[email protected] ~]# iostat -j id 12244367-e751-4c1c-9336-f30d623fceb8

Esempio:13 Genera statistiche i/o per Network File System (NFS)

Possiamo usare il comando nfsiostat per generare i rapporti statistici di i/o NFS. Il comando nfsiostat è la parte del pacchetto 'nfs-utils'. Supponiamo di aver montato due condivisioni NFS sul nostro server, quindi per generare il rapporto statistico per la condivisione NFS esegui il comando seguente,

[[email protected] ~]# nfsiostat

Esempio:14 Genera un rapporto sulle statistiche di I/O del sistema in un periodo di tempo

Il comando iostat genera le statistiche di i/o in tempo reale del tuo sistema e se desideri visualizzare i report delle statistiche su un periodo di tempo (statistiche di i/o del sistema di backdate), allora dovremmo usare l'utilità sar. Il comando Sar è fornito anche dal pacchetto 'sysstat'

Questo è tutto ragazzi, abbiamo coperto tutte le opzioni/parametri che possono essere utilizzati con il comando iostat. Puoi provare a mescolare queste opzioni per ottenere risultati più desiderati/dettagliati. Si prega di menzionare qualsiasi domanda o domanda che hai riguardo al tutorial.


Linux
  1. Come monitorare le prestazioni del sistema Linux con Sysstat

  2. Come monitorare la sicurezza del server Linux con Osquery

  3. Come trovare file con il comando fd in Linux

  4. Come monitorare l'utilizzo della rete con nload in Linux?

  5. Come visualizzare le prestazioni passate con sar in Linux

Come scaricare file con il comando Curl in Linux

Come scaricare file con il comando Wget in Linux

Come controllare la versione del sistema operativo con la riga di comando di Linux

Come elencare i filesystem in Linux con lfs

Come monitorare i tuoi server Linux con Checkmk

Come monitorare l'integrità del server Linux con gli strumenti della riga di comando