Lastovervåking er en av de mest kritiske oppgaver, spesielt hvis du har å gjøre med servere. Det gir deg ikke bare en ide om hvordan systemets ressurser blir brukt, men hjelper deg også med å diagnostisere ytelsesrelaterte problemer. I denne artikkelen diskuterer vi hvordan du utfører lastovervåking i Linux ved hjelp av atopverktøyet.

Merk : Alle eksemplene som brukes i artikkelen er testet på Ubuntu 14.04.

oppå

Som på sin man side, er kommandolinjeværktøjet på atop en interaktiv skjerm for å vise belastningen på et Linux-system. Det viser hvordan systemets maskinvareressurser, inkludert CPU, minne, disk og nettverk, er opptatt, alt fra et ytelsesperspektiv. Ikke bare dette, men det viser også hvilke prosesser som er ansvarlige for den angitte belastningen.

Merk : Diskbelastning vises hvis per prosess "lagringsregnskap" er aktiv i kjernen eller hvis kjernepatchen "cnt" er installert. På samme måte blir nettverksbelastningen bare vist per prosess hvis kjerneoppdateringen "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 installere på toppen 

De som er på andre Linux-distribusjoner, kan bruke sine respektive pakkehåndteringsverktøy. For eksempel, yum i tilfelle Red Hat. Du kan også laste ned verktøyet fra sitt offisielle nettsted.

Atop utgang

Når du er installert, kan du utføre verktøyet ved å utføre følgende kommando fra kommandolinjen:

 sudo på toppen 

Her er prøveutgangen:

Som du ser, er det mye informasjon som i stor grad er delt inn i to deler: Systemnivå og prosessnivå. Den tidligere består av følgende utgangslinjer:

PRC : Denne linjen inneholder den totale CPU-tiden som forbrukes i systemmodus ('sys') og i brukermodus ('bruker'), totalt antall prosesser som er presentert for øyeblikket ('#proc'), viser totalt antall tråder for øyeblikket i tilstanden 'running' ('#trun'), 'sleeping interruptible' ('#tslpi') og 'sleeping un-interruptible' ('#tslpu'), antall zombieprosesser ('#zombie'), antall klonsystemer ("kloner"), og antall prosesser som avsluttet i intervallet ('#exit', som viser '?' hvis prosessregnskap ikke brukes).

CPU : Denne linjen inneholder prosentandelen CPU-tid brukt i kjernemodus av alle aktive prosesser ('sys'), i brukermodus ('bruker') for alle aktive prosesser (inkludert prosesser som kjører med en fin verdi større enn null), for avbruddshåndtering ('irq') inkludert sofirq, samt prosentandelen ubrukt CPU-tid mens ingen prosesser ventet på disk-I / O ('tomgang') og mens minst én prosess ventet på disk-I / O 'vente'). Ved et flerprosessorsystem vises en ekstra linje for hver enkelt prosessor (med 'cpu' i små bokstaver), sortert på aktivitet.

CPL : Denne linjen inneholder CPU-lastinformasjon - antall tråder som er tilgjengelige for å kjøre på en CPU (dvs. en del av runqueue) eller som venter på disk I / O, antall kontekstbrytere ('csw'), antall vedlikeholdsavbrudd ('intr') og antall tilgjengelige CPUer.

MEM : Denne linjen inneholder informasjon relatert til minneforbruk - total mengde fysisk minne ('tot'), mengden minne som for øyeblikket er ledig ('gratis'), hvor mye minne som skal brukes som sidebuffer ('cache' ), mengden minne i sidens cache som skal spyles til disken ("skitten"), mengden minne som brukes til filsystemmeta-data ("buff") og mengden minne som brukes til kjernemalloc s ').

SWP : Denne linjen inneholder den totale mengden av bytteplass på disk ('tot') og mengden gratis bytteplass ('gratis'), det forpliktede virtuelle minnesområdet ('vmcom') og maksimumsgrensen for det forpliktede rommet ( 'vmlim')

DSK : Denne linjen inneholder informasjon relatert til diskutnyttelse - den delen av tiden enheten var opptatt av å håndtere forespørsler ('opptatt'), antall leseforespørsler utstedt ('les'), antall skriveforespørsler utstedt ('skrive' ), antall KiBytes per les ('KiB / r'), antall KiBytes per skriv ('KiB / w'), antall MiBytes per sekund gjennomstrømning for leser ('MBr / s'), antall MiBytes per sekund gjennomstrømning for å skrive ('MBw / s'), gjennomsnittlig kødybde ('avq') og gjennomsnittlig antall millisekunder som en forespørsel ('avio') krever for søk, latens og dataoverføring.

NET : Dette er informasjonen som er relatert til Nettverksutnyttelse (TCP / IP). En linje vises for aktivitet av transportlaget (TCP og UDP), en linje for IP-laget og en linje per aktivt grensesnitt.

Systemnivåinformasjonen etterfølges av prosessnivåinformasjon, som som navnet antyder detaljer informasjon relatert til prosessene som ressursutnyttelsen har endret seg i løpet av det siste intervallet (et standardintervall er 10 sekunder).

Et viktig punkt å nevne er at toppen bruker farger (rød, cyan og mer) for å indikere kritikken av ressursforbruket på systemnivå. For eksempel, når en ressurs overgikk sin kritiske yrkesprosent, er hele skjermlinjen farget RØD.

Merk : Gå gjennom kommandos man side for mer informasjon om utgangen av kommandoen.

Interaktive kommandoer

Du kan kontrollere utdataene fra kommandoen atop fra tastaturet. For eksempel, trykk på m å vise minnerelatert utgang, d for diskrelatert utgang, n for nettverksrelatert utgang, v for ulike prosessegenskaper, c for kommandolinjen i prosessen, etc.

Her er skjermbildet av prosessnivåinformasjonen produsert av atop kommandoen når c ble trykket:

Så som du kan se, vises kommandolinjen i prosessen i utgangen.

Konklusjon

Atop er en svært nyttig lastovervåkningskommando i Linux som ikke bare gir en bøtte-last med informasjon om systemressurser, men også ulike måter å tilpasse og kontrollere utgangene på. Du anbefales å gå gjennom kommandos man side for å lære mer om det.