Средства мониторинга системы для Ubuntu

128

Я ищу инструменты для системного мониторинга, которые являются GUI и Cli или веб-сайтами , которые включают Основные Функции таких как

  • Использование ЦП

  • Использование Ram

  • Использование обмена

  • Использование диска (пробел / I / O)

  • Мониторинг тепла

Я знаю, что есть много инструментов, которые я могу использовать, но я ищу один инструмент, который имеет эти основные функции.

    
задан Qasim 10.05.2013 в 09:13
источник

14 ответов

160

Взгляды - взгляд на вашу систему

Glances - бесплатное программное обеспечение (лицензированное под LGPL) для мониторинга вашей операционной системы GNU / Linux или BSD из текста интерфейс. Glances использует библиотеку libstatgrab для извлечения информации из вашей системы и разрабатывается в Python.

Установка

Откройте терминал ( Ctrl + Alt + T ) и выполните следующие команды:

Из Ubuntu 16.04 и выше вы можете просто набрать sudo apt install glances , но версия 2.3 имеет эту ошибку . Else:

Установка Easy Script Взгляд

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, Load, Memory, Swap Network, Disk I / O и Processes на одной странице, по умолчанию цветовой код означает:

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, Ram, Swap Monitoring

Мониторинг дисков

Мониторинг системного тепла

Если вы наберете glances --help , вы найдете ( -e Включить модуль датчиков (только для Linux))

glances -e

Файл конфигурации

Вы можете установить свои пороговые значения в файле конфигурации Glances, в GNU / Linux, файл конфигурации по умолчанию находится в /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 (Glances будет прослушивать все сетевые интерфейсы), а порт TCP - 61209. В клиентском режиме вы можете установить TCP-порт сервера (-p-порт). В режиме клиент / сервер ограничения устанавливаются на стороне сервера. Версия 1.6 вводит необязательный пароль для доступа к серверу (-P пароль), который, если он установлен на сервере, также должен использоваться на клиенте.

Дополнительные источники: PyPI , Github , Linuxaria

Update

Мониторинг контейнера juju, например, как выглядят вещи Большие изображения

В терминале № 1 В режиме сервера отображаются взгляды, в терминале № 2 загружен контейнер juju apt-get update & amp; В терминале 3 glances -c 192.168.1.103 Glances подключен к контейнеру ip

    
ответ дан Qasim 10.05.2013 в 10:00
источник
30

Индикатор-SysMonitor

Индикатор-SysMonitor делает немного, но делает это хорошо. После установки и запуска он отображает использование ЦП и ОЗУ на вашей верхней панели. Простой.

Загрузите здесь

Конки

Один из моих личных фаворитов

скринлет вы найдете кучу разных моделей процессоров и мониторов RAM, включенных в экраны - весь пакет, доступный в программном центре Ubuntu.

Взгляды

Для установки:

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

VMSTAT

Отображает информацию о процессоре, памяти, процессах и т. д.

IOSTAT

В этом инструменте командной строки будут отображаться статистические данные о вашем CPU, информации о вводе / выводе для разделов жесткого диска, сетевой файловой системе (NFS) и т. д. Чтобы установить iostat, выполните следующую команду:

sudo apt-get install sysstat

Чтобы запустить отчет, запустите эту команду:

iostat

Чтобы проверить статистику CPU, используйте следующую команду:

iostat -c

Для получения дополнительных параметров используйте следующую команду:

iostat --help

MPSTAT

Утилита командной строки mpstat будет отображать среднее использование ЦП на процессор. Чтобы запустить его, просто используйте эту команду:

mpstat

Для использования ЦП на процессор используйте следующую команду:

mpstat -P ALL

саидар

Сайдар также позволяет отслеживать действия системных устройств через командную строку.

Вы можете установить с помощью этой команды:

sudo apt-get install saidar

Чтобы начать мониторинг, запустите эту команду:

saidar -c -d 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

Запустите Monitorix через этот URL-адрес:

http://localhost/monitorix/

    

ответ дан Maythux 08.03.2014 в 09:43
18

Ниже приведены инструменты для мониторинга системы Linux

  1. Системные команды, такие как top , free -m , vmstat , iostat , iotop , sar , netstat и т. д. Ничто не приближается к этой утилите linux при отладке проблемы. Эта команда дает вам четкое изображение, которое находится внутри вашего сервера.
  2. SeaLion : Агент выполняет все команды, упомянутые в # 1 (также определенные пользователем), и выходы этих команд могут быть доступны в красивом веб-интерфейсе. Этот инструмент удобен при отладке на сотнях серверов, поскольку установка проста. И БЕСПЛАТНО
  3. Nagios : она является матерью всех инструментов мониторинга / оповещения. Это очень много настроек, но очень сложно настроить для новичков. Существуют наборы инструментов, называемые плагинами nagios, которые охватывают практически все важные показатели Linux.
  4. Munin
  5. Плотность сервера: платная услуга на основе облачных вычислений, которая собирает важные показатели в Linux и дает пользователям возможность создавать собственные плагины.
  6. Новая реликвия: еще одна хорошо известная служба мониторинга.
  7. Zabbix
ответ дан stylusbrook 20.11.2013 в 13:30
9

В течение последних нескольких лет я использовал:

Индикатор загрузки системы

из Software Center

    
ответ дан david6 22.02.2014 в 21:50
7

верхний

top контролирует программное обеспечение, перечисляя все процессы с использованием ЦП / ОЗУ, общее использование ЦП / ОЗУ и многое другое Также он по умолчанию установлен по умолчанию

HTOP

htop похож на расширенную версию top. Он имеет все функции сверху, но вы можете видеть дочерние процессы и настраивать отображение всего. Он также имеет цвета.

iotop

iotop предназначен специально для мониторинга ввода / вывода жесткого диска В нем перечислены все процессы и показано использование их жесткого диска для чтения и записи.

    
ответ дан BeryJu 10.05.2013 в 10:43
4

Возможно, вы захотите попробовать sysmon . Хотя это и не так интересно, как Glances, он очень прост и прост в использовании.

Если вы хотите получить грязную информацию и сделать небольшой скрипт на python, вот некоторые основы системного мониторинга с Python, чтобы вы начали.

Для мониторинга большинства вещей вам понадобится внешний модуль, называемый psutil . Проще всего использовать установщик внешнего модуля вместо создания из источника.

Примечание. Эти примеры написаны на Python 2.7

sudo apt-get install pip
sudo pip install psutil

Теперь, когда у нас установлены модули, мы можем начать кодирование.

Сначала создайте файл с именем usage.py .

gedit ~/usage.py

Начните с импорта psutil

import psutil

Затем создайте функцию для мониторинга процента, на котором запущены ваши ядра процессора.

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_perc .

Этот цикл прямо здесь

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

- это цикл for, который выводит текущий процент каждого из ваших ядер процессора.

Давайте добавим использование ОЗУ.

Создайте функцию с именем ram_perc .

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

psutil.virtual_memory дает набор данных, содержащий разные факты об ОЗУ на вашем компьютере.

Затем вы можете добавить некоторые факты о своей сети.

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 

Надеюсь, это поможет! Прокомментируйте, если у вас есть вопросы.

Ссылка

    
ответ дан calthecoder 13.06.2015 в 20:43
2

В пакете systat есть инструмент, называемый sar , который делает все, что вам нужно. Он также может собирать исторические данные, чтобы вы могли видеть, что произошло некоторое время назад.

    
ответ дан Grzegorz Żur 10.05.2013 в 13:22
2

SeaLion может быть удобным инструментом, поскольку у него есть встроенные команды для мониторинга производительности вашего сервера, а также вы можете добавлять свои собственные команды , scirpts и log output. Очень легко настроить и выяснить, что пошло не так в определенное время.

    
ответ дан Adam Johnson 08.07.2014 в 07:48
1

Я рекомендую Ссылка

Очень простая настройка и минимальное использование ресурсов.

    
ответ дан Ronny 27.05.2013 в 12:30
1

Существует встроенный инструмент, называемый gnome-system-monitor . Он может делать все, что вы упомянули, кроме мониторинга тепла.

    
ответ дан menixator 08.03.2014 в 10:18
1

Nagios, кажется, самый популярный и настраиваемый, но я бы не выбрал его для графического интерфейса.

Решение с открытым исходным кодом Zabbix контролирует все, что вы упомянули, а также предоставляет графики, основанные на времени для мониторинга производительности.

Если вы ищете еще более чистый графический интерфейс, проверьте Zenoss. Zenoss - это инструмент с открытым исходным кодом, основанный на веб-интерфейсах, но предлагающий аналитику услуг и анализ причинно-следственных связей с помощью собственного инструментария.     

ответ дан ShaneCar 03.12.2015 в 10:33
1
  1. Команда free - это самая простая и простая в использовании команда для проверки использования памяти в linux / ubuntu.

    free -m
    
  2. Для проверки использования памяти необходимо прочитать файл /proc/meminfo .

    cat /proc/meminfo
    
  3. Команда vmstat с опцией s .

    vmstat -s
    
  4. Команда top обычно используется для проверки памяти и использования процессора за процесс.

    top
    
  5. Команда htop также показывает использование памяти вместе с различными другими деталями.

    htop
    
  6. Узнать аппаратную информацию об установленной ОЗУ.

    sudo dmidecode -t 17
    
ответ дан hennamusick 30.01.2017 в 12:23
0

проверить утилиту мониторинга eginnovations Linux - Ссылка

веб-интерфейс, простой в установке и даже поддержка виртуализации Linux.

    
ответ дан Mark Smith 27.12.2013 в 01:00
0

Думаю, вам стоит взглянуть на Agentless Monitor от AppPerfect, который охватывает различные аспекты мониторинга например мониторинг приложений JAVA / J2EE, мониторинг серверов, мониторинг базы данных, мониторинг транзакций, мониторинг сети, мониторинг журналов и мониторинг системы. Он бесплатный и простой в использовании.

    
ответ дан Steve Young 03.03.2017 в 12:17