태그 보관물: system

system

우분투 시스템 모니터링 도구 기본 기능 등을 CPU

I는 시스템 모니터링 도구를 찾고 있어요 GUI 및 CLI 또는 웹 기반기본 기능 등을

  • CPU 사용량

  • 램 사용법

  • 스왑 사용량

  • 디스크 사용량 (공간 / I / O)

  • 열 모니터링

사용할 수있는 도구가 많이 있다는 것을 알고 있지만 이러한 기본 기능이있는 단일 도구를 찾고 있습니다.



답변

개요-시스템을 한 눈에

Glances 는 텍스트 인터페이스에서 GNU / Linux 또는 BSD 운영 체제를 모니터링 할 수있는 무료 소프트웨어 (LGPL 라이센스)입니다. Glances는 라이브러리 libstatgrab를 사용하여 시스템에서 정보를 검색하며 Python으로 개발되었습니다.

설치

터미널 ( Ctrl+ Alt+ T)을 열고 다음 명령을 실행하십시오.

Ubuntu 16.04 이상 sudo apt install glances에서는 입력 만 할 수 있지만 버전 2.3 에는이 버그가 있습니다. 그밖에:

쉬운 스크립트 설치 눈짓

curl -L https://raw.githubusercontent.com/nicolargo/glancesautoinstall/master/install.sh | sudo /bin/bash

또는

wget -O- https://raw.githubusercontent.com/nicolargo/glancesautoinstall/master/install.sh | sudo /bin/bash

수동 설치

sudo apt-get install python-pip build-essential python-dev lm-sensors
sudo pip install psutil logutils bottle batinfo https://bitbucket.org/gleb_zhulik/py3sensors/get/tip.tar.gz zeroconf netifaces pymdstat influxdb elasticsearch potsdb statsd pystache docker-py pysnmp pika py-cpuinfo bernhard
sudo pip install glances

기본 사용법

시작하려면 glances입력 단순히 glances터미널을한다.

스크린 샷

한눈에 CPU,로드, 메모리, 스왑 네트워크, 디스크 I / O 및 프로세스와 같은 시스템 리소스에 대한 많은 정보가 한 페이지에 표시됩니다. 기본적으로 색상 코드는 다음을 의미합니다.

GREEN : the statistic is “OK”
BLUE : the statistic is “CAREFUL” (to watch)
VIOLET : the statistic is “WARNING” (alert)
RED : the statistic is “CRITICAL” (critical)

Glances가 실행 중일 때 특수 키를 눌러 명령을 내릴 수 있습니다.

c: Sort processes by CPU%
m: Sort processes by MEM%
p: Sort processes by name
i: Sort processes by IO Rate
d: Show/hide disk I/O stats
f: Show/hide file system stats
n: Show/hide network stats
s: Show/hide sensors stats
b: Bit/s or Byte/s for network IO
w: Delete warning logs
x: Delete warning and critical logs
1: Global CPU or Per Core stats
h: Show/hide this help message
q: Quit (Esc and Ctrl-C also work)
l: Show/hide log messages

CPU, 램, 스왑 모니터링

스크린 샷

디스크 모니터링

스크린 샷

시스템 열 모니터링

입력 glances --help하면 -e센서 모듈 사용 (Linux 전용) 을 찾을 수 있습니다.

glances -e

스크린 샷

스크린 샷

구성 파일

GNU / Linux의 Glances 구성 파일에서 임계 값을 설정할 수 있으며 기본 구성 파일은에 있습니다 /etc/glances/glances.conf.

클라이언트 / 서버 모드

이 모니터링 도구의 또 다른 흥미로운 기능은 입력하는 것만으로 서버 모드에서 시작할 수 있다는 것입니다 glances -s. 이것은 Glances 서버가 0.0.0.0:61209에서 실행되는 것처럼 출력을 제공하고 glances -c @를 사용하여 다른 컴퓨터에서 연결할 수 있습니다. server @server는 서버의 IP 주소 또는 호스트 이름입니다.

Glances는 XML / RPC 서버를 사용하며 다른 클라이언트 소프트웨어에서 사용할 수 있습니다. 서버 모드에서 바인드 주소 (-B ADDRESS) 및 수신 TCP 포트 (-p PORT)를 설정할 수 있으며 기본 바인딩 주소는 0.0.0.0 (모든 네트워크 인터페이스에서 한 눈에 들어)이며 TCP 포트는 61209입니다. 클라이언트 모드에서는 서버의 TCP 포트 (-p 포트)를 설정할 수 있습니다. 클라이언트 / 서버 모드에서 제한은 서버 측에서 설정합니다. 버전 1.6에는 서버에 설정된 경우 서버에 액세스 할 수있는 선택적 비밀번호 (-P 비밀번호)가 도입되었습니다 (-P 비밀번호).

추가 소스 : PyPI , Github , Linuxaria

최신 정보

일을 같이하는 방법을 단지 예를 들어 주주 컨테이너를 모니터링 큰 이미지

터미널 1 번에서 Glances가 서버 모드에서 실행 중이고 터미널 2 번에서 Juju 컨테이너가 실행 중이고 apt-get update터미널 3 glances -c 192.168.1.103Glances가 컨테이너 IP에 연결되어 있음

스크린 샷

CPU 사용량 살펴보기

내장 된 시스템 모니터 사용량 그래프에서 알 수 있듯이 활성 상태에서 CPU 사용량의주기 급증이 필요합니다. 그래프가 정확한 경우-한 눈에 ​​볼 때 시스템에서 약 1/4의 CPU를 포기합니다. 이것은 서버의 CPU 부하를 모니터링하는 사람들에게 효과적입니다.

CPU 사용량 살펴보기


답변

표시기 SysMonitor

Indicator-SysMonitor는 약간 수행하지만 잘 수행합니다. 설치 및 실행되면 상단 패널에 CPU 및 RAM 사용량이 표시됩니다. 단순한.

여기에 이미지 설명을 입력하십시오

여기 에서 다운로드

콘키

내가 개인적으로 좋아하는 것 중 하나

여기에 이미지 설명을 입력하십시오

Screenlet
당신은 Ubuntu Software Center에서 이용 가능한 screenlets-all 패키지에 포함 된 다양한 스타일의 CPU 및 RAM 모니터를 찾을 수 있습니다.

여기에 이미지 설명을 입력하십시오

한눈에

설치하기 위해서:

sudo apt-get install python-pip build-essential python-dev
sudo pip install Glances
sudo pip install PySensors

여기에 이미지 설명을 입력하십시오

VMSTAT

CPU, 메모리, 프로세스 등에 대한 정보를 표시합니다.

IOSTAT

이 명령 줄 도구는 CPU, 하드 디스크 파티션에 대한 I / O 정보, NFS (Network File System) 등에 대한 통계를 표시합니다. iostat를 설치하려면 다음 명령을 실행하십시오.

sudo apt-get install sysstat

보고서를 시작하려면 다음 명령을 실행하십시오.

iostat

CPU 통계 만 확인하려면 다음 명령을 사용하십시오.

iostat -c

더 많은 매개 변수를 보려면 다음 명령을 사용하십시오.

iostat --help

MPSTAT

mpstat 명령 줄 유틸리티는 프로세서 당 평균 CPU 사용량을 표시합니다. 실행하려면 다음 명령을 사용하십시오.

mpstat

프로세서 당 CPU 사용량의 경우 다음 명령을 사용하십시오.

mpstat -P ALL

사이 다르

또한 Saidar는 명령 줄을 통해 시스템 장치 활동을 모니터링 할 수 있습니다.

여기에 이미지 설명을 입력하십시오

다음 명령을 사용하여 설치할 수 있습니다.

sudo apt-get install saidar

모니터링을 시작하려면 다음 명령을 실행하십시오.

saidar -c -d 1

통계는 1 초마다 새로 고침됩니다.

GKrellM

GKrellM은 데스크탑 시스템 장치 정보 (CPU, 온도, 메모리, 네트워크 등)에 표시되는 다양한 테마를 갖춘 사용자 정의 가능한 위젯입니다.

여기에 이미지 설명을 입력하십시오

GKrellM을 설치하려면 다음 명령을 실행하십시오 :

sudo apt-get install gkrellm

Monitorix

Monitorix는 시스템 장치 모니터링을위한 웹 기반 사용자 인터페이스가있는 또 다른 응용 프로그램입니다.

여기에 이미지 설명을 입력하십시오

다음 명령으로 설치하십시오 :

sudo add-apt-repository ppa:upubuntu-com/ppa
sudo apt-get update
sudo apt-get install monitorix

이 URL을 통해 Monitorix를 시작하십시오.

http://localhost/monitorix/

 


답변

다음은 리눅스 시스템을 모니터링하기위한 도구입니다

  1. 시스템과 같은 명령을 top, free -m, vmstat, iostat, iotop, sar, netstat등 당신은 문제를 디버깅 할 때 아무것도 이러한 리눅스 유틸리티 근처에 온다. 이 명령은 서버 내부로가는 명확한 그림을 제공합니다
  2. SeaLion : 에이전트는 # 1 (또한 ​​사용자 정의)에 언급 된 모든 명령을 실행 하며이 명령의 출력은 아름다운 웹 인터페이스에서 액세스 할 수 있습니다. 이 도구는 설치가 간단하여 수백 대의 서버에서 디버깅 할 때 편리합니다. 그리고 그 무료
  3. Nagios : 모든 모니터링 / 경고 도구의 어머니입니다. 그것은 많은 사용자 정의이지만 초보자를 위해 설정하는 것은 매우 어렵습니다. 거의 모든 중요한 Linux 지표를 다루는 nagios 플러그인이라는 도구 세트가 있습니다.
  4. 무닌
  5. 서버 밀도 : 중요한 Linux 메트릭을 수집하고 사용자가 자체 플러그인을 작성할 수있는 클라우드 기반 유료 서비스입니다.
  6. 새로운 유물 : 또 다른 잘 알려진 호스팅 모니터링 서비스.
  7. 자 빅스

답변

지난 몇 년 동안 나는 다음을 사용했다.

시스템로드 표시기

여기에 이미지 설명을 입력하십시오

Software Center 에서 사용 가능


답변

상단

top은 CPU / RAM 사용량, 전체 CPU / RAM 사용량 등을 포함한 모든 프로세스를 나열하는 소프트웨어 모니터링입니다. 또한 대부분 기본적으로 설치됩니다

멈춤

htop은 top의 확장 버전과 같습니다. 위의 모든 기능이 있지만 자식 프로세스를보고 모든 표시를 사용자 정의 할 수 있습니다. 색상도 있습니다.

아이오 톱

iotop은 특히 하드 리브 I / O 모니터링을위한 것입니다. 모든 프로세스를 나열하고 읽기 및 쓰기에 대한 하드 드라이브 사용량을 보여줍니다.


답변

sysmon 을 시도 할 수 있습니다 . Glances만큼 화려하지는 않지만 매우 간단하고 사용하기 쉽습니다.

더러워지고 파이썬에서 약간의 스크립팅을하고 싶다면 파이썬을 사용하여 시스템을 모니터링하는 몇 가지 기본 사항을 시작하십시오.

psutil대부분의 것을 모니터링 하려면 외부 모듈이 필요합니다 . 소스에서 빌드하는 대신 외부 모듈 설치 프로그램을 사용하는 것이 가장 쉽습니다.

참고 :이 예제는 Python 2.7로 작성되었습니다.

sudo apt-get install pip
sudo pip install psutil

이제 모듈을 설치 했으므로 코딩을 시작할 수 있습니다.

먼저이라는 파일을 만듭니다 usage.py.

gedit ~/usage.py

가져 오기로 시작 psutil

import psutil

그런 다음 CPU 코어가 실행중인 백분율을 모니터하는 함수를 작성하십시오.

def cpu_perc():

    cpu_perc = psutil.cpu_percent(interval=1, percpu=True)
    for i in range(len(cpu_perc)):
        print "CPU Core", str(i+1),":", str(cpu_perc[i]), "%"

조금만 자세히 살펴 보자.

첫 번째 줄 cpu_num = psutil.cpu_percent(interval=1, percpu=True)은 CPU의 코어가 실행중인 백분율을 찾아서라는 목록에 할당합니다 cpu_perc.

여기이 루프

for i in range(len(cpu_num)):
    print "CPU Core", str(i+1),":", str(cpu_perc[i]), "%"

각 CPU 코어의 현재 백분율을 인쇄하는 for 루프입니다.

RAM 사용량을 추가하겠습니다.

라는 함수를 만듭니다 ram_perc.

def ram_perc():
    mem = psutil.virtual_memory()
    mem_perc = mem.percent
    print "RAM: ", mem_perc, "%"

psutil.virtual_memory 컴퓨터의 RAM에 대한 다른 사실을 포함하는 데이터 세트를 제공합니다.

다음으로 네트워크에 대한 몇 가지 사실을 추가 할 수 있습니다.

def net():
    net = psutil.net_io_counters()
    mbytes_sent = float(net.bytes_sent) / 1048576
    mbytes_recv = float(net.bytes_recv) / 1048576
    print "MB sent: ", mbytes_sent
    print "MB received: ", mbytes_recv

psutil.net_io_counters()바이트 단위로 보내고받는 패킷에 대한 정보 만 제공 하므로 일부 변환이 필요했습니다.

스왑 공간에 대한 정보를 얻으려면이 함수를 추가하십시오.

def swap_perc():
    swap = psutil.swap_memory()
    swap_perc = swap.percent

이것은 매우 간단합니다.

온도는 어려우므로 하드웨어에 어떤 기능이 작동하는지 알아 내기 위해 직접 조사해야 할 수도 있습니다. 특정 파일의 내용을 표시해야합니다.

디스크 사용은 온도보다 훨씬 쉽습니다. 모니터링하려는 디스크 (예 🙂 /를 특정 기능을 통해 전달하기 만하면됩니다.

def disks():
    if len(sys.argv) > 1:
        for disk in range(1, len(sys.argv)):
            tmp = psutil.disk_usage(sys.argv[disk])
            print sys.argv[disk], "\n"
            print "Megabytes total: ",
            print str(float(tmp.total) / 1048576)
            print "Megabytes used: ",
            print str(float(tmp.used) / 1048576)
            print "Megabytes free: ",
            print str(float(tmp.free) / 1048576)
            print "Percentage used: ",
            print tmp.percent, "\n"

원래 출력 psutil.disk_usage않습니다,

>>>psutil.disk_usage('/')
sdiskusage(total=21378641920, used=4809781248, free=15482871808, percent=22.5)

하지만 당신은 또한 단지받을 수 total, used, free, 또는 percent.

완성 된 프로그램 : (위에 언급 된 기능들이 결합 됨)

import psutil, os, sys
mem_perc = 0 #init var
swap_perc = 0 #init var
mbytes_sent = 0 #init var
mbytes_recv = 0 #init var
cpu_perc = 0 #init var
swap = 0 #init var
mem = 0 #init var
net = 0 #init var



def disp(degree):
    global cpu_perc
    global swap
    global swap_perc
    global mem
    global mem_perc
    global net
    global mbytes_sent
    global mbytes_recv

    cpu_perc = psutil.cpu_percent(interval=1, percpu=True)
    swap = psutil.swap_memory()
    swap_perc = swap.percent
    mem = psutil.virtual_memory()
    mem_perc = mem.percent
    net = psutil.net_io_counters()
    mbytes_sent = float(net.bytes_sent) / 1048576
    mbytes_recv = float(net.bytes_recv) / 1048576

    os.system('clear') #clear the screen

    print "-"*30
    print "CPU"
    print "-"*30
    print "CPU Temperature: " , degree, "'C"
    for i in range(len(cpu_perc)):
        print "CPU Core", str(i+1),":", str(cpu_perc[i]), "%"

    print "-"*30
    print "MEMORY"
    print "-"*30
    print "RAM: ", mem_perc, "%"
    print "Swap: ", swap_perc, "%"
    print "-"*30
    print "NETWORK"
    print "-"*30
    print "MB sent: ", mbytes_sent
    print "MB received: ", mbytes_recv
    print "-"*30
    print "DISKS"
    print "-"*30

    if len(sys.argv) > 1:
        for disk in range(1, len(sys.argv)):
            tmp = psutil.disk_usage(sys.argv[disk])
            print sys.argv[disk], "\n"
            print "Megabytes total: ",
            print str(float(tmp.total) / 1048576)
            print "Megabytes used: ",
            print str(float(tmp.used) / 1048576)
            print "Megabytes free: ",
            print str(float(tmp.free) / 1048576)
            print "Percentage used: ",
            print tmp.percent, "\n"

def main():
    print("Press Ctrl+C to exit")
    while True:
        temp = open("/sys/class/thermal/thermal_zone0/temp").read().strip().lstrip('temperature :').rstrip(' C')
        temp = float(temp) / 1000
        disp(temp)

main()

회선 temp = open("/sys/class/thermal/thermal_zone0/temp").read().strip().lstrip('temperature :').rstrip(' C')이 하드웨어 구성에서 작동하지 않을 수 있습니다.

명령 행에서이 프로그램을 실행하십시오. 명령 줄에서 모니터 할 디스크를 인수로 전달하십시오.

$ python usage.py /

Press Ctrl+C to exit

------------------------------
CPU
------------------------------
CPU Temperature:  39.0 'C
CPU Core 1 : 4.8 %
CPU Core 2 : 1.0 %
CPU Core 3 : 0.0 %
CPU Core 4 : 4.9 %
------------------------------
MEMORY
------------------------------
RAM:  33.6 %
Swap:  6.4 %
------------------------------
NETWORK
------------------------------
MB sent:  2.93382358551
MB received:  17.2131490707
------------------------------
DISKS
------------------------------
/

Megabytes total:  13952.484375
Megabytes used:  8542.6640625
Megabytes free:  4678.5703125
Percentage used:  61.2

/media/calvin/Data

Megabytes total:  326810.996094
Megabytes used:  57536.953125
Megabytes free:  269274.042969
Percentage used:  17.6

도움이 되었기를 바랍니다! 궁금한 점이 있으면 의견을 말하십시오.

https://github.com/calthecoder/sysmon-1.0.1


답변

패키지 systat 에는 sar원하는 모든 기능을 갖춘 도구 가 있습니다. 또한 과거 데이터를 수집하여 얼마 전에 무슨 일이 있었는지 확인할 수 있습니다.