Nadzor rada servera baziranog na Linux operativnom sustavu

Zakupili ste Plus VPS ili dedicated server. Nakon inicijalnog podešavanja postavki servisa koje ćete koristiti, postavili ste web aplikaciju i počinju dolaziti prvi korisnici. Kako vrijeme prolazi, korisnika vaše aplikacije sve je više i imate osjećaj da vaš na početku super brzi server sada radi sve lošije i sporije.

U ovom članku prokazat ćemo vam nekoliko aplikacija putem kojih lako i brzo možete provjeriti potrošnju resursa servera, utvrditi gdje dolazi do problema te po potrebi raditi dodatnu optimizaciju servisa ili nadogradnju servera.

Aplikacije koje ćemo vam predstaviti dostupne su više-manje na svakoj distrubuciji nekog Linux operativnog sustava. U slučaju da aplikacije nije predinstalirana na vašem Linux serveru ili Linux računalu, vrlo lako ih instalirate korištenjem „yum” ili „dnf” (RedHat based OS), „apt” (Debian based OS) ili sl. upravljačem aplikacija vašeg operativnog sustava.

U članku pretpostavljamo da imate administratorska prava korištenja, pa stoga ne navodimo da za instalaciju i pokretanje aplikacija koristite sudo privilegije.

  1. Nadzor procesa – top, htop

Aplikacija kojom možemo provjeriti trenutno pokrenute procese i stanje resursa. U većini slučajeva top je prva aplikacija koju ćemo koristiti kada želimo provjeriti zauzeće resursa u realnom vremenu.

Za instalaciju top aplikacije koristimo naredbu:

  • # yum install procps
  • # apt install procps

Za pokretanje aplikacije koristimo naredbu: top

Na vrhu aplikacije prikazuje nam se nekoliko sistemskih resursa kao što su vrijeme koje server radi, prosječno opterećenje, količina zadataka, opterećenje procesora, te stanje radne i swap memorije.

Iz primjera na slici možemo vidjeti da je server pokrenut 13 dana i 23 sata. Prosječno 1 minutno opterećenje je 0,24, prosječno 5 minutno 0,20 i prosječno 15 minutno 0,21. S obzirom da server iz primjera ima 4 CPU jezgre, ti brojevi znače da je naš server trenutno na oko 5% maksimalnog CPU opterećenja.

Trenutno je pokrenuto 238 zadataka, od toga je samo jedan zadatak aktivan, dok je 237 u stanju „spavanja” zbog toga što u tom trenutku nisu koristili CPU.

Također možemo vidjeti da server raspolaže sa 8GB radne memorije, od čega je 1.2GB slobodno, 3.7GB se koristi i 3GB je iskorišteno za  buffer/cache.

Isto tako server raspolaže sa 8GB swap memorije, od čega je svih 8GB slobodno.

Ispod te kratke statistike korištenja resursa imamo tablični pregled pokrenutih procesa te za svaki taj proces imamo pregled zauzetih resursa.

Pritiskom na tipku h dobit ćemo pomoć za korištenje aplikacije.

Unaprijeđena verzija te aplikacije je htop

 

Za instalaciju htop aplikacije koristimo naredbu:

  • # yum install htop
  • # apt install htop

Za pokretanje aplikacije koristimo naredbu: htop

„htop” nam isto kao i „top” nudi prikaz potrošnje resursa u realnom vremenu, no prikazuje nam to u vizualnije ljepšem načinu, sa podrškom za više boja kako bi se dodatno istaknulo korištenje resursa, sa više opcija sortiranja i filtriranja, te podrškom za više CPU jezgri.

Pritiskom na tipku ? dobit ćemo pomoć za korištenje aplikacije dok pritiskom na tipku F12 imamo mogućnost podešavanja konfiguracije aplikacije kako bi je prilagodili za vlastite potrebe.

 

2. Nadzor mreže – netstat, iptraf, nethogs

Za nadzor potrošnje mrežnih resursa, uvelike će nam pomoći aplikacije kao iptraf-ng, nethogs i netstat

Za instalaciju netstat aplikacije koristimo naredbu:

  • # yum install net-tools
  • # apt install net-tools

Za pokretanje aplikacije koristimo naredbu: netstat

Korištenjem netstat aplikacije možemo dohvatiti razne mrežne informacije našeg servera.

Pokretanjem aplikacije ispisat će nam se lista otvorenih socketa.

Dosta korisna informaciju koju možemo dobiti putem netstat aplikacije je popis portova na kojem „slušaju” određene aplikacije.

Pa ćemo tako pokretanjem aplikacije sa naredbom netstat -tunlp dobiti popis tih aplikacija, sa informacijom o portu, da li rade na tcp ili udp protokolu kao i da li se koristi IPv4 ili IPv6 na određenoj IP adresi, samo lokalno ili javno dostupno.

Statistiku korištenja mreže možemo vidjeti pokretanjem aplikacije sa naredbom: netstat -s

 

 

Za instalaciju nethogs aplikacije koristimo naredbu:

  • # yum install nethogs
  • # apt install nethogs

Za pokretanje aplikacije koristimo naredbu: nethogs

Korištenjem nethogs aplikacije možemo vidjeti potrošnju mrežnih resura za svakog korisnika i aplikaciju koja trenutno koristi mrežu servera:

Dobiveni podaci mogu se sortirati prema poslanoj i primljenoj količini, kao i mijenjati jedinica prikaza između B, KB, MB i KB/s.

I još jedna naprednija aplikacija za nadzor mrežnog prometa koju ćemo ovdje spomenuti je IPTraf-ng.

Za instalaciju iptraf-ng aplikacije koristimo naredbu:

  • # yum install iptraf-ng
  • # apt install iptraf-ng

Za pokretanje aplikacije koristimo naredbu: iptraf-ng


Po pokretanju dočekat će nas izbornik gdje možemo odabrati nadzor mrežnog prometa, statistiku mrežnog sučelja, podešavati filtriranje i konfiguraciju aplikacije.

Za početak možemo provjeriti mrežni promet kompletnog servera odabirom prve stavke izbornika te zatim odabirom stavke „All interfaces”.

Prikazat će nam se TCP i UDP promet sa IP adresama za dolazne i odlazne konekcije te port sučelja na kojem je promet detektiran.

Dodatnim podešavanjem aplikacije možemo odabrati da li želimo da nam se umjesto IP adresa i portova ispisuju nazivi servera i aplikacija koje se nalaze na tim portovima.

 

3. Nadzor diskova – df, du, ncdu

Za pregled zauzeća diskovnog prostora na serveru možemo koristiti aplikaciju df.

Za pokretanje aplikacije koristimo naredbu: df

Prikazat će nam se ispis svih diskovnih particija sa podacima o veličini, iskorištenom prostoru, zauzetom prostoru te putanja na kojoj je particija montirana.

Za pregledniji prikaz možemo kod pokretanja aplikacije koristiti opciju -h kako bi nam se podaci prikazali u čitljivijem formatu, tj. količina prostora biti će prikazana u formatu kao KB, MB, GB)

Neke od korisnijih podataka koje možemo dobiti sa df aplikacijom su i količina inodes podataka (opcija -i) te vrsta particije (opcija -T).

 

Sljedeća aplikacija za pregled zauzeća diskovnog prostora je du.

Navedena aplikacija može nam ispisati količinu zauzetog prostora po direktorijima i svim poddirektorijima.

Za pokretanje aplikacije koristimo naredbu: du

 

Aplikacija će nam ispisati sve direktorije i poddirektorije te njihovo zauzeće prostora.

Isto kao i kod prethodne aplikacije, možemo koristiti opciju -h za čitljiviji format zauzeća prostora:

Jedna od korisnijih opcija je i mogućnost limitiranja dubine poddirektorija za koje želimo provjeriti stanje zauzeća. Sa opcijom –max-depth=1 ograničit ćemo aplikaciju da nam ispiše podatke samo za trenutni direktorij unutar kojeg se nalazimo:

 

Da ne pišemo svaki put kompletnu naredbu, možemo kreirati alias naredbu, npr. du1, koju ćemo spremiti u ~/.bashrc ili ~/.bash_aliases datoteku:

alias du1=’du -h –max-depth=1′

Sada možemo izvršiti datoteku pokretanjem source ~/.bashrc ili otvoriti novi terminal te upisati du1 za ispis zauzeća samo za trenutni direktorij:

 

Ukoliko nas interesira samo ukupuno zauzeće, bez detaljnog ispisa po direktorijim, koristit ćemo opciju -s, u kombinaciji sa -h za čitljiviji format vrijednosti:

Naprednija aplikacija za pregled zauzeća prostora je du upakirana sa ncurses bibliotekom, pa samim time ima i naziv ncdu

Za instalaciju ncdu aplikacije koristimo naredbu:

  • # yum install ncdu
  • # apt install ncdu

Za pokretanje aplikacije koristimo naredbu: ncdu

Kroz direktorije se krećemo strelicama gore/dolje, tipku Enter ili strelicu desno koristimo za prebacivanje u odabrani direktorij, dok strelicu lijevo koristimo za vraćanje u prethodni direktorij.

Tipku ? koristimo za prikaz svih mogućnosti i kratica koje možemo koristiti unutar aplikacije.

 

4. Nadzor memorije – free, vmstat

 

Zauzeće memorije servera možemo provjeriti naredbom free.

Za čitljiviji prikaz koristimo opciju -h kako bi nam vrijednosti bile prikazana u  preglednijem formatu:

Iz prikaza na slici, možemo vidjeti da server raspolaže sa 7,6 GB ukupne memorije. Slobodno je 3GB  memorije, 3.6GB je iskorišteno, dok se 3.4GB koristi za buffer/cache i ta memorija se oslobađa čim postoji potreba za dodatnom memorijom.

Također vidimo da server raspolaže sa 8GB swap memorije. Swap memorija se zapisuje na disk servera i zbog toga nije poželjno da se konstantno koristi.

U slučaju kada nam ponestane fizičke memorije, počet će se koristiti swap memorija, što u većini  slučajeva dovodi do znatne degradacije performansi servera.

 

Aplikacija koju možemo koristiti za dohvaćanje raznih sistemskih informacija kao cpu informacije, podaci o fizičkoj i swap memoriji te disk i/o informacije je vmstat.

 

Za pokretanje aplikacije koristimo naredbu: vmstat

Za čitljiviji prikaz koristimo opciju -S M kako bi nam vrijednosti bile prikazane u  megabajtima:

Za prikaz općenite statistike koristimo opciju -s uz prethodno navedenu -S M za pregledniji format vrijednosti:

 

Korištenjem ovih alata uvelike si možemo olakšati administraciju servera te imati brzi uvid u rad našeg servera. Iako postoje i mnogi drugi alati za nadzor rada servera, ovih nekoliko jednostavnih aplikacija su nam odličan početak kako bi dobili inicijalni uvid u stanje servera te mogli bolje odrediti u kojem smjeru trebamo nastaviti sa provjerama.

Kako zakupiti Dedicated ili VPS?

Provjeriti ponudu i odraditi zakup naših servera možete kroz naše web stranice https://plus.hr/dedicirani-serveri/ i https://plus.hr/vps-serveri/ putem slanja upita na našu mail adresu support@plus.hr

 

Povezani članci

Odgovori