Come monitorare CPU e memoria su Linux?

Scopri quanto un singolo processo o tutto il sistema consuma CPU o memoria.


Come amministratore di sistema, spesso devi affrontare un incidente in cui l’applicazione è lenta o non risponde a causa dell’elevato utilizzo di CPU / memoria / rete. Se il server ospita un solo processo, è facile scoprire quando il processo consuma tutte le risorse. Tuttavia, immagina un server condiviso in cui sono in esecuzione più servizi e devi trovare quale sta consumando tutte le risorse.

Esistono molti software di monitoraggio che lo fanno immediatamente. Ma se non ne hai una o stai cercando una soluzione basata su comandi, allora eccoti qui. Sono tutti GRATIS!

superiore

Potresti iniziare guardando il risultato top o htop per vedere la panoramica dei processi.

Come puoi vedere di seguito, offre un’ottima idea di cosa stanno utilizzando tutti i processi. Se guardi il primo che è nodejs che occupa il 3,9% di memoria e lo 0,3% di CPU.

Il top è installato su quasi tutta la distribuzione Linux.

Una volta identificato il sospetto, potresti voler concentrarti su quel processo invece di tutto ciò che hai visto sopra. Puoi ancora usare il comando top ma con qualche argomento.

Supponiamo che tu conosca l’id di processo (PID); puoi usare il comando qui sotto.

top -p $ PID

Puoi anche usare grep con top. Di seguito un esempio di controllo dell’utilizzo di rabbitmq.

htop

Simile al top ma con maggiori informazioni. Come puoi, ha ottenuto la colonna dei comandi, che è utile per identificare il percorso del processo. E anche è colorato.

htop potrebbe non essere installato di default, ma puoi sempre farlo con apt-get install htop se usi Ubuntu.

sguardi

Come dice il nome, si ottiene la visualizzazione dell’utilizzo del sistema su una singola schermata. I processi in esecuzione sono ordinati in base all’utilizzo della CPU.

in cima

Un simile al sopra elencato ma con una brillante funzionalità per registrare l’output in un file in modo da poterli visualizzare in seguito. Immagina, esiste un modello per avere un problema in una finestra temporale specifica. È possibile pianificare la scrittura dell’output in un file tramite crontab o altro e in seguito è possibile riprodurre.

Per registrare l’output in un file:

in cima a -w nomefile

e, per la riproduzione:

sopra -r nomefile

Supporta argomenti multipli come intervallo, esempi, ecc. E consiglio vivamente di dare un’occhiata alla pagina man.

Se sei solo interessato alla risoluzione dei problemi in tempo reale, esegui semplicemente in cima e dovresti vedere come di seguito.

ps

Ora controlliamo il comando ps.

È possibile utilizzare il comando ps con PID per stampare la CPU e l’utilizzo della memoria.

ps -p $ PID -o% cpu,% mem

L’output dovrebbe apparire così.

[Email protected]: ~ # ps -p 1048 -o% cpu,% mem
% CPU% MEM
0,2 3.0
[Email protected]: ~ #

nmon

Strumento di monitoraggio della riga di comando interattivo per CPU, memoria, dischi, rete, NFS e utilizzo della memoria virtuale. Per visualizzare il processo principale (per utilizzo), è possibile eseguire nmon e premere il pulsante t.

Monit

Monit è una soluzione open source basata su web e da riga di comando per monitorare risorse server, demoni, file, directory, file system, ecc..

Monit ha anche un bel widget.

Monitorix

Un’utilità open source leggera per monitorare il server Linux. Monitorix ha un HTTP integrato in modo da poter controllare l’utilizzo e altre cose sul web. Alcuni degli altri rapporti sull’utilizzo includono:

  • Kernal / temperatura
  • File system e I / O
  • Traffico di rete
  • Apache / Mail / FTP / Nginx / MySQL / Vernice / Memcached /

Monitorix offre anche una configurazione di avviso in modo da poter ricevere una notifica quando le cose non vanno bene. Sarà una buona scelta quando si gestiscono server basati su cloud e si cerca una soluzione di monitoraggio proattiva.

netdata

netdata è un monitoraggio delle prestazioni in tempo reale per risorse di sistema, applicazioni, server Web, database, DNS, posta, sensori hardware e molto altro. È open-source e iniziare è facile. Tutti i dati vengono raccolti, archiviati e trasmessi in streaming per consentirne la visualizzazione interattiva. I dati vengono raccolti ogni secondo, in modo da non perdere nulla.

Amato da molti leader del settore.

Quindi, cosa stai aspettando, prova ad assumere il controllo dei tuoi server Linux.

Conclusione

Spero che gli strumenti di cui sopra ti aiutino a visualizzare l’utilizzo del server in tempo reale in modo da poter intraprendere le azioni necessarie. Se hai appena iniziato come amministratore di sistema e stai cercando di ottenere una formazione pratica, dai un’occhiata a questo Corso Udemy.

TAGS:

  • Open Source

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map