GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come monitorare un sistema con Sysstat su Centos

Un'attività comune per gli amministratori di sistema è monitorare e prendersi cura di un server. È abbastanza facile da fare in un attimo, ma come tenere un registro di queste informazioni nel tempo? Un modo per monitorare il tuo server è utilizzare il pacchetto Sysstat.

Sysstat è in realtà una raccolta di utilità progettate per raccogliere informazioni sulle prestazioni di un'installazione Linux e registrarle nel tempo.

È anche abbastanza facile da installare poiché è incluso come pacchetto in molte distribuzioni.

Installa Sysstat su CentOS

Per installare Sysstat su Centos 6 o CentOS 7, digita quanto segue:

yum install sysstat

Utilizzo di Sysstat System Monitor

Ora abbiamo gli script sysstat installati sul sistema. Proviamo il comando sar.

sar
11:00:02 AM CPU %user %nice %system %iowait %idle11:10:01 AM tutti 0.00 0.00 0.00 0.00 99.99Media:tutti 0.00 0.00 0.00 0.00 99.99

Vengono riportate diverse informazioni, come il kernel Linux, il nome host e la data.
Ancora più importante, vengono mostrati i vari modi in cui il tempo della CPU viene speso sul sistema.

%user, %nice , %system, %iowait e %idle descrivono i modi in cui la CPU può essere utilizzata.
%user e %nice fanno riferimento ai tuoi programmi software, come MySQL o Apache.
%system si riferisce al kernelâ il funzionamento interno.
%iowait è il tempo trascorso in attesa di input/output, ad esempio in lettura o scrittura su disco. Infine, poiché il kernel rappresenta il 100% del tempo eseguibile che può programmare, il tempo non utilizzato va in % idle.

Le informazioni sopra vengono visualizzate per un intervallo di 1 secondo. Come possiamo tenere traccia di tali informazioni nel tempo?
Se il nostro sistema era costantemente in esecuzione pesante in %iowait, potremmo supporre che un disco si stesse sovraccaricando o stesse andando male.
Almeno, lo sapremmo indagare.

Quindi, come tracciamo le informazioni nel tempo? Possiamo programmare sar in modo che venga eseguito a intervalli regolari, ad esempio ogni 10 minuti.
Gli indirizziamo quindi a inviare l'output ai file di registro speciali di sysstat per i rapporti successivi.
Il modo per farlo è con il demone Cron.

Creando un file chiamato sysstat in /etc/cron.d, possiamo dire a cron di eseguire sar ogni giorno.
Fortunatamente, il pacchetto Systat che yum ha installato ha già eseguito questo passaggio per noi.

altro /etc/cron.d/sysstat
# esegue lo strumento di contabilità delle attività di sistema ogni 10 minuti*/10 * * * * root /usr/lib/sa/sa1 1 1# genera un riepilogo giornaliero della contabilità dei processi alle 23:5353 23 * * * root /usr/ lib/sa/sa2 -A

Lo script sa1 registra l'output di sar nel formato di file di registro binario di sysstat e sa2 lo riporta in un formato leggibile dall'uomo.
Il rapporto viene scritto in un file in /var/log/sa.

ls /var/log/sa
sa17 sar17

sa17 è il registro di sistema binario, sar17 è il rapporto. (La data di oggi è il 17)

Ci sono molte informazioni contenute nel report sar, ma ci sono alcuni valori che possono dirci quanto è occupato il server.
I valori da tenere d'occhio sono l'utilizzo dello scambio, l'attesa dell'IO del disco e la coda di esecuzione.
/>Questi possono essere ottenuti eseguendo manualmente sar, che riporterà su quei valori.

sar
11:00:02 AM CPU %user %nice %system %iowait %idle11:10:01 AM tutti 0.00 0.00 0.00 0.00 99.9911:20:01 AM tutti 0.00 0.00 0.00 0.00 100.0011:30:02 AM tutti 0.01 0.26 0.19 1.85 97.6811:39:20 tutti 0.00 2.41 2.77 0.53 94.2811:40:01 tutti 1.42 0.00 0.18 3.24 95.15Media:tutti 0.03 0.62 0.69 0.64 98.02

Ci sono stati alcuni momenti in cui l'attività del disco era alta nella colonna %iowait, ma non è rimasta così per troppo tempo. Una media di 0,64 è abbastanza buona.

Che ne dici del mio utilizzo di swap, sto finendo la RAM? Essere sostituito è normale per il kernel Linux, che verrà scambiato di volta in volta. Lo scambio costante è negativo e generalmente significa che hai bisogno di più Ram.

sar-W
11:00:02 pswpin/s pswpout/s11:10:01 0.00 0.0011:20:01 0.00 0.0011:30:02 0.00 0.0011:39:20 0.00 0.0011:40:01 0.00 0.0011 :50:01 0.00 0.00Media:0.00 0.00

No, stiamo bene. Non si è verificato alcuno scambio persistente.

Che ne dici del carico di sistema? I miei processi aspettano troppo a lungo per essere eseguiti sulla CPU?

sar-q
11:00:02 runq-sz plist-sz ldavg-1 ldavg-5 ldavg-1511:10:01 0 47 0.00 0.00 0.0011:20:01 0 47 0.00 0.00 0.0011:30:02 0 47 0.28 0.21 0.0811:39:20 0 45 0.01 0.24 0.1711:40:01 0 46 0.07 0.22 0.1711:50:01 AM 0 46 0.00 0.02 0.07Media:0 46 0.06 0.8. 

No, un carico medio di .06 è davvero buono. Notare che c'è un intervallo di 1, 5 e 15 minuti sulla destra. Avere i tre intervalli di tempo ti dà un'idea di quanto carico sta trasportando il sistema. Un 3 o 4 nella media di 1 minuto va bene, ma lo stesso numero nella colonna dei 15 minuti può indicare che il lavoro non sta finendo e che è necessario dare un'occhiata più da vicino.

Questa è stata una breve occhiata al pacchetto Sysstat.

Abbiamo esaminato solo l'output di tre attributi di sar, ma ce ne sono altri. Ora, armato di sar nella tua cassetta degli attrezzi, il tuo lavoro di amministrazione del sistema è diventato un po' più semplice.


Cent OS
  1. Come migrare Centos 8 ad AlmaLinux 8.3

  2. Come monitorare le prestazioni del sistema Linux con Sysstat

  3. Come installare Gradle su CentOS 8

  4. Come monitorare l'utilizzo delle risorse del tuo server con Munin su CentOS 6

  5. Come monitorare le unità NVME su Centos 6

Come riavviare CentOS 8

Come spegnere CentOS 8

Come installare Docker CE su CentOS 8

Come installare Anydesk su CentOS 8

Come installare VeraCrypt su CentOS 8

Come installare Cannella su CentOS 7