Hvordan utføre belastningsovervåking på Linux ved å bruke atop
Lastovervåking er en av de mest kritiske oppgavene, spesielt når det kommer til servere. Ikke bare gir det deg en ide om hvordan systemressursene dine brukes, men det hjelper deg også med å diagnostisere ytelsesrelaterte problemer. I denne artikkelen vil vi diskutere hvordan du utfører lastovervåking på Linux ved å bruke atop-verktøyet.
Merk : Alle eksempler brukt i artikkelen er testet på Ubuntu 14.04.
topp
I følge man-siden er kommandolinjeverktøyet øverst en pennmonitor for å se belastningen på et Linux-system. Den viser hvor travle systemmaskinvareressursene dine er, inkludert cpu, minne, disk og nettverk, alt fra et ytelsessynspunkt. Ikke bare dette, men det viser også hvilke prosesser som er ansvarlige for den angitte belastningen.
Merk : vis diskbelastningen hvis "lagringsregnskap" er aktiv i kjernen eller om kjernepatchen "cnt" er installert. På samme måte vises nettverksbelastning kun per prosess hvis kjernepatchen "cnt" er installert.
Last ned og installer
Brukere av Debian-baserte systemer (som Mint og Ubuntu) kan laste ned og installere verktøyet ved å bruke følgende kommando:
sudo apt-get install atop
De på andre Linux-distribusjoner kan bruke sine respektive pakkeadministrasjonsverktøy. For eksempel nam i tilfellet med Red Hat. Du kan også laste ned verktøyet fra din offesiell nettside.
topp uttak
Når det er installert, kan du kjøre verktøyet ved å kjøre følgende kommando fra kommandolinjen:
sudo atop
Her er eksempelutgangen:
Som du ser er det mye informasjon som er delt i to deler: Systemnivå og prosessnivå. Den første består av følgende utgangslinjer:
PRC : Denne linjen inneholder den totale CPU-tiden som forbrukes i systemmodus ('sys') og i brukermodus ('bruker'), det totale antallet prosesser som er tilstede ('#proc'), det totale antallet tråder som er tilstede i 'kjører'-tilstand ('#trun'), søvnavbruddsbar ('#tslpi') og 'sleep uninterrupted' ('#tslpu'), antall zombieprosesser ('#zombie'), antall klonesystemanrop ("kloner"), og antall prosesser som ble avsluttet i løpet av intervallet ("#exit", som returnerer '?hvis prosessregnskap ikke brukes).
CPUer : Denne linjen inneholder prosentandelen av CPU-tid brukt i kjernemodus av alle aktive prosesser ('sys'), i brukermodus ('bruker') for alle aktive prosesser (inkludert prosesser som kjører med en verdi større enn null), for avbruddshåndtering ('irq'), inkludert softirq, samt prosentandelen av ubrukt cpu-tid mens ingen prosesser venter på disk-I/O ('idle') og mens minst én av prosessene venter på disk-I/O ('vente'). Ved et multiprosessorsystem vises en ekstra linje for hver enkelt prosessor (med 'cpu' i små bokstaver), sortert etter aktivitet.
CPL : Denne linjen inneholder informasjon om CPU-belastning – antall tråder som er tilgjengelige for å kjøre på en CPU (dvs. en del av kjørekøen) eller som venter på disk I/O, antall kontekstsvitsjer ('csw'), antallet av betjente avbrudd ('intr'), og antall tilgjengelige CPUer.
MEM : Denne linjen inneholder informasjon relatert til minneforbruk – den totale mengden fysisk minne ('tot'), mengden minne som for øyeblikket er ledig ('gratis'), mengden minne som brukes som sidebuffer ('cache'), mengden minne i sidebufferen som må tømmes til disken ('dirty'), mengden minne som brukes for filsystemmetadata ('buff'), og mengden minne som brukes for kjernen malloc ('plate').
SWP : Denne linjen inneholder den totale mengden swap-plass på disken ('tot') og mengden ledig swap-plass ('free'), den virtuelle minneplassen som er committed ('vmcom'), og den maksimale grensen for committed plass ('vmlim')
DSK : Denne linjen inneholder informasjon relatert til diskbruk: delen av tiden stasjonen var opptatt med å håndtere forespørsler ("opptatt"), antall leseforespørsler utstedt ("lese"), antall skriveforespørsler utstedt ("skrevet"), antall KiByte per lesing ("KiB/r") og antall KiByte per skriv ("KiB/w"), antall MyBytes per sekund for lesninger ('MBr/s'), antall MiByte per sekund å skrive ('MBw/s'), gjennomsnittlig kødybde ('avq') og gjennomsnittlig antall millisekunder som en forespørsel ('avio') tar å hente, ventetid og overføre data.
nett : Dette er informasjon relatert til nettverksbruk (TCP/IP) – én linje vises for transportlagsaktivitet (TCP og UDP), én linje for IP-lag og én linje for hvert aktivt grensesnitt.
Systemnivåinformasjonen etterfølges av prosessnivåinformasjonen, som som navnet antyder, detaljerer informasjon relatert til prosessene som ressursutnyttelsen har endret seg fra i løpet av det siste intervallet (et standardintervall er 10 sekunder).
Et viktig poeng som er verdt å nevne er at oppå bruker farger (rød, cyan og mer) for å indikere det kritiske ved ressursforbruk på systemnivå. For eksempel, når en ressurs overskrider sin kritiske beleggsprosent, blir hele linjen på skjermen RØD.
Merk : gå gjennom kommandosiden mannside for mer informasjon om utgangen av kommandoen.
Interaktive kommandoer
Du kan kontrollere utdataene til atop-kommandoen fra tastaturet. Trykk for eksempel m for å vise minnerelatert utgang, d for diskrelatert utgang, n for nettverksrelatert utgang, v for ulike prosessfunksjoner, c for prosesskommandolinjen, og så videre.
Her er skjermbildet av prosessnivåinformasjonen produsert av atop-kommandoen når c ble trykket:
Som du kan se, vises kommandolinjen for prosessen i utdataene.
konklusjon
Atop er en veldig nyttig lastovervåkingskommando i Linux som ikke bare gir et vell av informasjon om systemressurser, men også ulike måter å tilpasse og kontrollere produksjonen på. Det anbefales å gå gjennom siden kommandoens man-side for mer informasjon om det.
Legg igjen en kommentar