Web VMStat: Linux용 실시간 시스템 통계(메모리, CPU, 프로세스 등) 모니터링 도구
Web-Vmstat 메모리, CPU, I와 같은 실시간 Linux 시스템 통계를 표시하는 Java 및 HTML로 작성된 작은 애플리케이션입니다. /O, 프로세스 등은 websocketd 프로그램을 사용하여 WebSocket 스트림을 통해 차트(SmoothieCharts)와 다이어그램이 있는 예쁜 웹 페이지에서 vmstat 모니터링 명령줄을 인수합니다.
Gentoo 시스템에서 응용프로그램이 수행할 수 있는 작업에 대한 간단한 비디오 검토를 녹화했습니다.
요구사항
Linux 시스템에서는 다음 유틸리티를 설치해야 합니다.
- HTTP, HTTPS 및 FTP 프로토콜을 사용하여 파일을 검색하기 위한 wget입니다.
- Nano 또는 VI CLI 텍스트 편집기.
- 아카이브 추출기의 압축을 풉니다.
이 튜토리얼은 CentOS 6.5에 Web-Vmstat 애플리케이션을 설치하는 과정을 안내하지만 이 절차는 모든 Linux 배포판에 유효하며 차이점은 init 스크립트(선택 사항) - 전체 프로세스를 보다 쉽게 관리하는 데 도움이 됩니다.
참고 자료: Vmstat 명령을 사용하여 Linux 성능 모니터링
1단계: Web-Vmstat 설치
1. Web-Vmstat 설치를 진행하기 전에 위의 필수 명령이 모두 시스템에 설치되어 있는지 확인하세요. yum, apt-get 등의 패키지 관리자를 사용하여 설치할 수 있습니다. 예를 들어 CentOS 시스템에서는 yum 명령을 사용하여 설치합니다.
yum install wget nano unzip
2. 이제 Veb-Vmstat 공식 웹페이지로 이동하여 ZIP 다운로드 버튼을 사용하여 최신 버전을 다운로드하거나 wget을 사용하여 명령줄에서 다운로드합니다.
wget https://github.com/joewalnes/web-vmstats/archive/master.zip
3. unzip 유틸리티를 사용하여 다운로드한 master.zip 아카이브를 추출하고 추출된 폴더에 들어갑니다.
unzip master.zip
cd web-vmstats-master
4. 웹 디렉토리에는 웹 환경에서 애플리케이션을 실행하는 데 필요한 HTML 및 Java 파일이 들어 있습니다. 웹 파일을 호스팅하려는 시스템 아래에 디렉터리를 만들고 모든 웹 콘텐츠를 해당 디렉터리로 이동합니다.
이 튜토리얼에서는 /opt/web_vmstats/를 사용하여 모든 애플리케이션 웹 파일을 호스팅하지만 시스템에서 원하는 임의의 경로를 만들 수 있습니다. 단, 절대 웹 경로를 유지하는지 확인하세요.
mkdir /opt/web_vmstats
cp -r web/* /opt/web_vmstats/
5. 다음 단계는 websocketd 스트리밍 프로그램을 다운로드하고 설치하는 것입니다. 공식 WebSocket 페이지로 이동하여 시스템 아키텍처(Linux 64비트, 32비트 또는 ARM)에 맞는 패키지를 다운로드하세요.
32비트 시스템의 경우
wget https://github.com/joewalnes/websocketd/releases/download/v0.2.9/websocketd-0.2.9-linux_386.zip
64비트 시스템
wget https://github.com/joewalnes/websocketd/releases/download/v0.2.9/websocketd-0.2.9-linux_amd64.zip
6. unzip 명령을 사용하여 WebSocket 아카이브를 추출하고 websocketd 바이너리를 시스템 실행 파일 경로에 복사하여 사용할 수 있도록 합니다. 시스템 전체.
unzip websocketd-0.2.9-linux_amd64.zip
cp websocketd /usr/local/bin/
7. 이제 다음 명령 구문을 사용하여 websocketd 명령을 실행하여 테스트할 수 있습니다.
websocketd --port=8080 --staticdir=/opt/web_vmstats/ /usr/bin/vmstat -n 1
아래에 설명된 각 매개변수에 대한 설명입니다.
- –port=8080: HTTP 프로토콜에서 연결하는 데 사용되는 포트 – 원하는 포트 번호를 사용할 수 있습니다.
- –staticdir=/opt/web_vmstats/: 모든 Web-Vmstat 웹 파일이 호스팅되는 경로입니다.
- /usr/bin/vmstat -n 1: 매초 상태를 업데이트하는 Linux Vmstat 명령입니다.
2단계: 초기화 파일 생성
8. 이 단계는 선택 사항이며 init 스크립트 지원 시스템에서만 작동합니다. WebSocket 프로세스를 시스템 데몬으로 관리하려면 /etc/init.d/ 경로에 다음 내용을 포함하는 init 서비스 파일을 생성하세요.
nano /etc/init.d/web-vmstats
다음 내용을 추가하세요.
#!/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. 파일이 생성된 후 시작 또는 중지 스위치를 사용하여 실행 권한을 추가하고 프로세스를 관리합니다.
chmod +x /etc/init.d/web-vmstats
/etc/init.d/web-vmstats start
10. 방화벽이 활성화된 경우 /etc/sysconfig/iptables 방화벽 파일을 편집하고 websocketd 프로세스에서 사용하는 포트를 열어 외부 연결에 사용할 수 있도록 합니다.
nano /etc/sysconfig/iptables
이 튜토리얼에서처럼 포트 8080을 사용하는 경우 포트 22를 여는 규칙 뒤에 iptables 파일에 다음 줄을 추가합니다.
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
11. 전체 프로세스를 마무리하려면 iptables 서비스를 다시 시작하여 새 규칙을 적용하세요.
service iptables restart
service web-vmstats start
브라우저를 열고 다음 URL을 사용하여 Vmstats 시스템 통계를 표시하십시오.
http://system_IP:8080
12. 현재 시스템과 해당 시스템에서 실행 중인 운영 체제에 대한 이름, 버전 및 기타 세부 정보를 표시합니다. Web-Vmstat 파일 경로로 이동하여 다음 명령을 실행하세요.
cd /opt/web_vmstats
cat /etc/issue.net | head -1 > version.txt
cat /proc/version >> version.txt
13. 그런 다음 index.html 파일을 열고 줄 앞에 다음 자바스크립트 코드를 추가하세요.
nano index.html
다음 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. 최종 결과를 보려면 http://system_IP:8080 웹 페이지를 새로 고치면 아래 스크린샷과 같이 현재 컴퓨터에 대한 정보와 실시간 통계를 볼 수 있습니다.