Web VMStat: Nástroj pro monitorování systémových statistik v reálném čase (paměť, CPU, procesy atd.) pro Linux
Web-Vmstat je malá aplikace napsaná v jazyce Java a HTML, která zobrazuje živé statistiky systému Linux, jako je Paměť, CPU, I /O, Procesy atd. převzaté z příkazového řádku monitorování vmstat v pěkné webové stránce s grafy (SmoothieCharts) a diagramy prostřednictvím proudů WebSocket pomocí programu websocketd.
Nahrál jsem rychlou video recenzi toho, co aplikace umí na systému Gentoo.
Požadavky
V systému Linux musí být nainstalovány následující nástroje.
- wget pro načítání souborů pomocí protokolů HTTP, HTTPS a FTP.
- Textový editor Nano nebo VI CLI.
- Rozbalte extraktor archivu.
Tento tutoriál vás provede instalací aplikace Web-Vmstat na CentOS 6.5, ale postup platí pro všechny distribuce Linuxu, liší se pouze initscripts (volitelné), které vám pomohou celý proces snadněji spravovat.
Čtěte také: Monitorujte výkon Linuxu pomocí příkazů Vmstat
Krok 1: Nainstalujte Web-Vmstat
1. Než budete pokračovat v instalaci Web-Vmstat, ujistěte se, že máte ve svém systému nainstalované všechny výše uvedené požadované příkazy. K instalaci můžete použít správce balíčků, jako je yum, apt-get atd. Například v systémech CentOS používáme k instalaci příkaz yum.
yum install wget nano unzip
2. Nyní přejděte na oficiální webovou stránku Veb-Vmstat na adrese a stáhněte si nejnovější verzi pomocí tlačítka Stáhnout ZIP nebo pomocí wget stáhněte z příkazového řádku.
wget https://github.com/joewalnes/web-vmstats/archive/master.zip
3. Rozbalte stažený archiv master.zip pomocí nástroje unzip a přejděte do extrahované složky.
unzip master.zip
cd web-vmstats-master
4. Webový adresář obsahuje soubory HTML a Java potřebné pro běh aplikace ve webovém prostředí. Vytvořte adresář ve vašem systému, kde chcete hostovat webové soubory, a přesuňte veškerý webový obsah do tohoto adresáře.
Tento tutoriál používá /opt/web_vmstats/ k hostování všech webových souborů aplikace, ale můžete si ve svém systému vytvořit libovolnou cestu, která se vám líbí, jen se ujistěte, že zachováte absolutní webovou cestu.
mkdir /opt/web_vmstats
cp -r web/* /opt/web_vmstats/
5. Dalším krokem je stažení a instalace streamovacího programu websocketd. Přejděte na oficiální stránku WebSocket a stáhněte si balíček tak, aby odpovídal architektuře vašeho systému (Linux 64-bit, 32-bit nebo ARM).
Na 32bitovém systému
wget https://github.com/joewalnes/websocketd/releases/download/v0.2.9/websocketd-0.2.9-linux_386.zip
Na 64bitovém systému
wget https://github.com/joewalnes/websocketd/releases/download/v0.2.9/websocketd-0.2.9-linux_amd64.zip
6. Rozbalte archiv WebSocket pomocí příkazu unzip a zkopírujte binární soubor websocketd do cesty ke spustitelnému systému, aby byl dostupný v celém systému.
unzip websocketd-0.2.9-linux_amd64.zip
cp websocketd /usr/local/bin/
7. Nyní to můžete otestovat spuštěním příkazu websocketd pomocí následující syntaxe příkazu.
websocketd --port=8080 --staticdir=/opt/web_vmstats/ /usr/bin/vmstat -n 1
Popis každého parametru vysvětlený níže.
- –port=8080: Port používaný pro připojení pomocí protokolu HTTP – můžete použít libovolné číslo portu.
- –staticdir=/opt/web_vmstats/: Cesta, kde jsou hostovány všechny webové soubory Web-Vmstat.
- /usr/bin/vmstat -n 1: Příkaz Linux Vmstat, který aktualizuje svůj stav každou sekundu.
Krok 2: Vytvořte inicializační soubor
8. Tento krok je volitelný a funguje pouze se systémy s podporou skriptu init. Chcete-li spravovat proces WebSocket jako systémového démona, vytvořte soubor služby init na cestě /etc/init.d/ s následujícím obsahem.
nano /etc/init.d/web-vmstats
Přidejte následující obsah.
#!/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. Po vytvoření souboru přidejte oprávnění ke spuštění a spravujte proces pomocí přepínačů start nebo stop.
chmod +x /etc/init.d/web-vmstats
/etc/init.d/web-vmstats start
10. Pokud je váš Firewall aktivní, upravte soubor /etc/sysconfig/iptables firewallu a otevřete port používaný procesem websocketd, abyste jej zpřístupnili pro vnější připojení.
nano /etc/sysconfig/iptables
Pokud používáte port 8080 jako v tomto tutoriálu, přidejte následující řádek do souboru iptables za pravidlo, které otevírá port 22.
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
11. Chcete-li dokončit celý proces, restartujte službu iptables, aby se nové pravidlo uplatnilo.
service iptables restart
service web-vmstats start
Otevřete prohlížeč a pomocí následující adresy URL zobrazte systémové statistiky Vmstats.
http://system_IP:8080
12. Zobrazení názvu, verze a dalších podrobností o vašem aktuálním počítači a operačním systému, který na něm běží. Přejděte na cestu k souborům Web-Vmstat a spusťte následující příkazy.
cd /opt/web_vmstats
cat /etc/issue.net | head -1 > version.txt
cat /proc/version >> version.txt
13. Poté otevřete soubor index.html a před řádek přidejte následující kód javascript.
nano index.html
Použijte následující kód JavaScript.
<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. Chcete-li zobrazit konečný výsledek, obnovte webovou stránku http://system_IP:8080 a měli byste vidět informace a živé statistiky o vašem aktuálním počítači jako na snímcích níže.