Weebụ VMStat: Ndekọ Sistemụ Ntanetị Oge (Ncheta, CPU, Usoro, wdg) Ngwa nlekota oru maka Linux


Web-Vmstat ọ bụ obere ngwa e dere na Java na HTML nke na-egosiputa ọnụ ọgụgụ sistemụ Linux dị ndụ, dị ka Memory, CPU, I /O, Usoro, wdg. weghaara ahịrị iwu nlekota vmstat n'ime ibe weebụ mara mma nke nwere eserese (WebSocket streams site na iji mmemme websocketd.

Edekọla m nyocha vidiyo ngwa ngwa nke ihe ngwa nwere ike ime na sistemụ Gentoo.

Na sistemụ Linux, a ga-etinyerịrị ngwa ndị a.

  1. Wget maka iweghachite faịlụ site na iji HTTP, HTTPS na protocol FTP.
  2. Nano ma ọ bụ VI CLI Ederede Ederede.
  3. Mepee ihe na-ewepụta ebe nchekwa.

Nkuzi a ga-eduzi gị site na ịwụnye ngwa Web-Vmstat na CentOS 6.5, mana usoro a bara uru maka nkesa Linux niile, naanị ihe dị iche bụ naanị init scripts (nhọrọ), nke na-enyere gị aka ijikwa. ọzọ mfe dum usoro.

Gụọkwa: Nyochaa arụmọrụ Linux site na iji Iwu Vmstat

Kwụpụ 1: Wụnye Web-Vmstat

1. Tupu ịmalite ịwụnye Web-Vmstat, gbaa mbọ hụ na etinyere iwu niile achọrọ n'elu na sistemụ gị. Ị nwere ike iji njikwa ngwugwu dị ka yum, apt-get, wdg iwu iji wụnye ya. Dịka ọmụmaatụ, n'okpuru sistemụ CentOS, anyị na-eji iwu yum wụnye ya.

# yum install wget nano unzip

2. Ugbu a gaa na ibe weebụ gọọmentị Veb-Vmstat na budata ụdị kachasị ọhụrụ site na iji bọtịnụ Budata ZIP ma ọ bụ jiri wget budata site na ahịrị iwu.

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

3. Wepụta ihe ebudatara master.zip site na iji unzip utility wee banye na nchekwa ewepụtara.

# unzip master.zip
# cd web-vmstats-master

4. Akwụkwọ ndekọ weebụ na-ejide faịlụ HTML na Java chọrọ maka ngwa ahụ ka ọ na-agba na gburugburu Weebụ. Mepụta ndekọ n'okpuru sistemụ gị ebe ịchọrọ ịkwado faịlụ Weebụ wee bugharịa ọdịnaya weebụ niile na ndekọ ahụ.

Nkuzi a na-eji /opt/web_vmstats/ iji kwado faịlụ webụ ngwa niile, mana ị nwere ike mepụta ụzọ ọ bụla na-ezighi ezi na sistemụ gị masịrị gị, mee ka obi sie gị ike na ị ga-ejigide ụzọ webụ zuru oke.

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

5. Nzọụkwụ ọzọ bụ ibudata na wụnye websocketd mmemme nkwanye. Gaa na ibe WebSocket gọọmentị wee budata ngwugwu ahụ ka ọ dabara na nhazi sistemụ gị (Linux 64-bit, 32-bit ma ọ bụ ARM).

# wget https://github.com/joewalnes/websocketd/releases/download/v0.2.9/websocketd-0.2.9-linux_386.zip
# wget https://github.com/joewalnes/websocketd/releases/download/v0.2.9/websocketd-0.2.9-linux_amd64.zip

6. Wepụ ebe nchekwa WebSocket na unzipiwu wee detuo websocketd ọnụọgụ abụọ na usoro enwere ike ime ka ọ dị na sistemụ niile.

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

7. Ugbu a, ị nwere ike nwalee ya site na-agba ọsọ websocketdiwu site na iji syntax iwu a.

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

Nkọwa nke oke ọ bụla akọwara n'okpuru.

  1. –port=8080: ọdụ ụgbọ mmiri eji jikọọ na protocol HTTP - ị nwere ike iji nọmba ọdụ ụgbọ mmiri ọ bụla ịchọrọ.
  2. –staticdir=/opt/web_vmstats/: Ụzọ ebe a na-akwado faịlụ webụ-Vmstat niile.
  3. /usr/bin/vmstat -n 1: Iwu Linux Vmstat na-emelite ọkwa ya kwa sekọnd ọ bụla.

Nzọụkwụ 2: Mepụta Init File

8. Nzọụkwụ a bụ nhọrọ ma na-arụ ọrụ naanị na init script kwadoro sistemụ. Iji jikwaa usoro WebSocket dị ka daemon sistemụ mepụta faịlụ init na ụzọ /etc/init.d/ yana ọdịnaya ndị a.

# nano /etc/init.d/web-vmstats

Tinye ọdịnaya ndị a.

#!/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. Mgbe emechara faịlụ ahụ, tinye ikikere igbu ma jikwaa usoro site na iji mmalite ma ọ bụ kwụsị switches.

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

10. Ọ bụrụ na Firewall gị na-arụ ọrụ edit /etc/sysconfig/iptables faịlụ firewall wee mepee ọdụ ụgbọ mmiri nke websocketd na-eji mee ka ọ dị maka njikọ dị n'èzí.

# nano /etc/sysconfig/iptables

Ọ bụrụ na ị na-eji ọdụ ụgbọ mmiri 8080 dị ka nkuzi a gbakwunye ahịrị na-esonụ na faịlụ iptables mgbe iwu meghere ọdụ ụgbọ mmiri 22.

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

11. Iji mechaa usoro dum malitegharịa ọrụ iptables iji tinye iwu ọhụrụ.

# service iptables restart
# service web-vmstats start

Mepee ihe nchọgharị wee jiri URL na-esonụ iji gosipụta ọnụ ọgụgụ sistemụ Vmstats.

http://system_IP:8080

12. Iji gosipụta aha, ụdị na nkọwa ndị ọzọ gbasara igwe gị ugbu a na sistemụ arụmọrụ na-agba na ya. Gaa na Web-Vmstat faịlụ ụzọ wee mee iwu ndị a.

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

13. Wee mepee index.html faịlụ wee tinye koodu javascript a tupu

ahịrị.

# nano index.html

Jiri koodu Javascript na-esonụ.

<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. Ka ilele nsonaazụ ikpeazụ nweta ume http://system_IP:8080 ibe weebụ na ị ga-ahụ ozi na ọnụ ọgụgụ dị ndụ gbasara igwe gị ugbu a dị ka nseta ihuenyo dị n'okpuru.