Web VMStat: Sistemska statistika u realnom vremenu (memorija, CPU, procesi, itd.) Alat za praćenje za Linux


Web-Vmstat to je mala aplikacija napisana u Javi i HTML-u koja prikazuje živu statistiku Linux sistema, kao što su Memorija, CPU, I /O, Procesi, itd. preuzeti vmstat monitoring komandnu liniju na lijepoj web stranici sa grafikonima (SmoothieCharts) i dijagramima kroz WebSocket streamove koristeći websocketd program.

Snimio sam brzi video pregled onoga što aplikacija može učiniti na Gentoo sistemu.

Zahtjevi

Na Linux sistemu moraju biti instalirani sljedeći uslužni programi.

  1. Wget za preuzimanje datoteka koristeći HTTP, HTTPS i FTP protokole.
  2. Nano ili VI CLI uređivač teksta.
  3. Raspakujte Archive Extractor.

Ovaj vodič će vas voditi kroz instalaciju aplikacije Web-Vmstat na CentOS 6.5, ali procedura je važeća za sve Linux distribucije, jedine stvari koje se razlikuju su samo initskripte (opciono), koje vam pomažu da lakše upravljate cijelim procesom.

Pročitajte također: Nadgledajte performanse Linuxa koristeći Vmstat komande

Korak 1: Instalirajte Web-Vmstat

1. Prije nego nastavite s instaliranjem Web-Vmstat, provjerite da li su sve gore navedene potrebne komande instalirane na vašem sistemu. Možete koristiti paket menadžera kao što je naredba yum, apt-get, itd. da biste ga instalirali. Na primjer, pod CentOS sistemima, koristimo naredbu yum da ga instaliramo.

yum install wget nano unzip

2. Sada idite na zvaničnu web stranicu Veb-Vmstat na i preuzmite najnoviju verziju koristeći dugme Preuzmi ZIP ili koristite wget za preuzimanje sa komandne linije.

wget https://github.com/joewalnes/web-vmstats/archive/master.zip

3. Raspakujte preuzetu master.zip arhivu koristeći unzip uslužni program i uđite u ekstrahovani folder.

unzip master.zip
cd web-vmstats-master

4. Web direktorij sadrži HTML i Java datoteke potrebne da bi se aplikacija pokrenula u web okruženju. Napravite direktorij pod vašim sistemom u kojem želite da ugostite Web datoteke i premjestite sav web sadržaj u taj direktorij.

Ovaj vodič koristi /opt/web_vmstats/ za hostovanje svih web datoteka aplikacije, ali možete kreirati bilo koju proizvoljnu putanju na vašem sistemu koja vam se sviđa, samo budite sigurni da ćete zadržati apsolutnu web putanju.

mkdir /opt/web_vmstats
cp -r web/* /opt/web_vmstats/

5. Sljedeći korak je preuzimanje i instaliranje websocketd programa za striming. Idite na zvaničnu WebSocket stranicu i preuzmite paket koji odgovara arhitekturi vašeg sistema (Linux 64-bitni, 32-bitni ili ARM).

Na 32-bitnom sistemu
wget https://github.com/joewalnes/websocketd/releases/download/v0.2.9/websocketd-0.2.9-linux_386.zip
Na 64-bitnom sistemu
wget https://github.com/joewalnes/websocketd/releases/download/v0.2.9/websocketd-0.2.9-linux_amd64.zip

6. Izvucite WebSocket arhivu sa unzip komandom i kopirajte websocketd binarno na izvršnu putanju sistema kako biste je učinili dostupnim u cijelom sistemu.

unzip websocketd-0.2.9-linux_amd64.zip
cp websocketd /usr/local/bin/

7. Sada ga možete testirati pokretanjem naredbe websocketd koristeći sljedeću sintaksu komande.

websocketd --port=8080 --staticdir=/opt/web_vmstats/ /usr/bin/vmstat -n 1

Opis svakog parametra je objašnjen u nastavku.

  1. –port=8080: Port koji se koristi za povezivanje na HTTP protokol – možete koristiti bilo koji broj porta koji želite.
  2. –staticdir=/opt/web_vmstats/: Putanja na kojoj se nalaze sve Web-Vmstat web datoteke.
  3. /usr/bin/vmstat -n 1: Linux Vmstat naredba koja ažurira svoj status svake sekunde.

Korak 2: Kreirajte Init File

8. Ovaj korak je opcioni i radi samo sa sistemima koji podržavaju init skriptu. Za upravljanje WebSocket procesom kao sistemskim demonom kreirajte init servisni fajl na /etc/init.d/ putanji sa sljedećim sadržajem.

nano /etc/init.d/web-vmstats

Dodajte sljedeći sadržaj.

#!/bin/sh
source function library
. /etc/rc.d/init.d/functions
start() {
                echo "Starting webvmstats process..."

/usr/local/bin/websocketd --port=8080 --staticdir=/opt/web_vmstats/ /usr/bin/vmstat -n 1 &
}

stop() {
                echo "Stopping webvmstats process..."
                killall websocketd
}

case "$1" in
    start)
       start
        ;;
    stop)
       stop
        ;;
    *)
        echo "Usage: stop start"
        ;;
esac

9. Nakon što je datoteka kreirana, dodajte dozvole za izvršavanje i upravljajte procesom pomoću prekidača start ili stop.

chmod +x /etc/init.d/web-vmstats
/etc/init.d/web-vmstats start

10. Ako je vaš zaštitni zid aktivan, uredite /etc/sysconfig/iptables datoteku zaštitnog zida i otvorite port koji koristi websocketd proces kako biste ga učinili dostupnim za vanjske veze.

nano /etc/sysconfig/iptables

Ako koristite port 8080 kao u ovom vodiču, dodajte sljedeći red u iptables datoteku nakon pravila koje otvara port 22.

-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

11. Da biste finalizirali cijeli proces, ponovo pokrenite uslugu iptables da biste primijenili novo pravilo.

service iptables restart
service web-vmstats start

Otvorite pretraživač i koristite sljedeći URL za prikaz Vmstats sistemske statistike.

http://system_IP:8080

12. Za prikaz imena, verzije i drugih detalja o vašoj trenutnoj mašini i operativnom sistemu koji na njemu radi. Idite na putanju datoteka Web-Vmstat i pokrenite sljedeće naredbe.

cd /opt/web_vmstats
cat /etc/issue.net | head -1 > version.txt
cat /proc/version >> version.txt

13. Zatim otvorite datoteku index.html i dodajte sljedeći javascript kod prije

reda.

nano index.html

Koristite sljedeći JavaScript kod.

<div align='center'><h3><pre id="contents"></pre></h3></div>
<script>
function populatePre(url) {
    var xhr = new XMLHttpRequest();
    xhr.onload = function () {
        document.getElementById('contents').textContent = this.responseText;
    };
    xhr.open('GET', url);
    xhr.send();
}
populatePre('version.txt');
                </script>

14. Da vidite konačan rezultat, osvježite web stranicu http://system_IP:8080 i trebali biste vidjeti informacije i statistiku uživo o vašoj trenutnoj mašini kao na snimcima ekrana ispod.