Вторник, 26.11.2024, 21:25 Вы вошли как Гость | Группа "Гость" | RSS
 

 
Главная | Форум | Чат | Информация для пользователей
[Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
20 системных инструментов мониторинга в Linux.
slackbuild Дата: Вторник, 28.02.2012, 18:01 | Сообщение # 1
Свой человек
Группа: Пользователь
Сообщений: 11
Репутация: 0 []
Статус: Offline
.: Дополнительные данные :.
Бог форума
Вам нужно контролировать функциональные характеристики Linux-сервера? Попробуйте для этого описанные ниже встроенные команды и несколько дополнительных инструментальных средств. В большинстве дистрибутивов Linux есть масса средств мониторинга. Эти средства измеряют характеристики, которые можно использовать для получения информации об активности системы. Вы можете воспользоваться этим инструментарием для поиска причин возникновения проблемы с производительностью. Ниже перечислены лишь некоторые команды из большого числа тех, которые нужны при анализе системы и отладке сервера для поиска следующих проблем:
Узкие места общего характера
Узкие места, связанные с диском (дисковой памятью)
Узкие места, связанные с процессором и оперативной памятью
Узкие места, связанные с сетью
№ 1: top – команда выдачи данных об активности процессов
Программа top динамически выдает в режиме реального времени информации о работающей системе, т.е. о фактической активности процессов. По умолчанию она выдает задачи, наиболее загружающие процессор сервера, и обновляет список каждые пять секунд.

Рис.1: Linux команда - top
Наиболее часто используемые горячие клавиши
При работе команды top можно воспользоваться следующими полезными горячими клавишами:
Горячая клавиша Использование
t Включение и выключение выдачи на экран суммарных данных.
m Включение и выключение выдачи на экран информации об использовании памяти.
A Сортировка строк по максимальному потреблению различных системных ресурсов. Полезна для быстрой идентификации задач, для которых в системе не хватает ресурсов.
f Вход в меню интерактивного конфигурирования данных, выдаваемых на экран командой top. Полезна для настройки команды top для выполнения специфической задачи.
o Позволяет вам интерактивно задавать порядок строк, выдаваемой командой top.
r Изменение приоритета процессов с помощью команды renice.
k Удаление процесса с помощью команды kill.
z Переключение между цветным / монохромным вариантом выдачи изображения.

№ 2: vmstat – активность системы, информация о системе и аппаратных ресурсах
Команда vmstat выдает информационный отчет о активности процессов, памяти, свопинга, поблочного ввода/вывода, прерываний и процессора.
# vmstat 3
Пример вывода данных:
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 2540988 522188 5130400 0 0 2 32 4 2 4 1 96 0 0
1 0 0 2540988 522188 5130400 0 0 0 720 1199 665 1 0 99 0 0
0 0 0 2540956 522188 5130400 0 0 0 0 1151 1569 4 1 95 0 0
0 0 0 2540956 522188 5130500 0 0 0 6 1117 439 1 0 99 0 0
0 0 0 2540940 522188 5130512 0 0 0 536 1189 932 1 0 98 0 0
0 0 0 2538444 522188 5130588 0 0 0 0 1187 1417 4 1 96 0 0
0 0 0 2490060 522188 5130640 0 0 0 18 1253 1123 5 1 94 0 0
Выдача статистики использования памяти
# vmstat -m
Получение данных об активности / неактивности страниц памяти
# vmstat -a
Ссылки:Как выявить узкие места в Линукс-системе, исследуя использование ресурсов?
№ 3: w – определяем, кто зарегистрирован и что они делают
Команда w выдает информацию о том, какие пользователи сейчас находятся в системе и какие процессы запущены от их имени.
# w username
# w vivek
Пример вывода данных:
17:58:47 up 5 days, 20:28, 2 users, load average: 0.36, 0.26, 0.24
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.1.3.145 14:55 5.00s 0.04s 0.02s vim /etc/resolv.conf
root pts/1 10.1.3.145 17:43 0.00s 0.03s 0.00s w
№ 4: uptime – сообщает, как долго работает система
Команду uptime можно использовать с тем, чтобы определить, как долго работает сервер. Выдаются: текущее время, сколько времени работает система, сколько в текущий момент зарегистрировано пользователей и какова средняя нагрузка на систему в последние 1, 5 и 15 минут.
# uptime
Выдаются данные:
18:02:41 up 41 days, 23:42, 1 user, load average: 0.00, 0.00, 0.00
1 можно рассматриваться как оптимальное значение нагрузки. Нагрузка может меняться от системы к системе. Для системы с одним процессором приемлемым может считаться значение от 1 до 3, для мультипроцессорных систем – от 6 до 10.
№ 5: ps – список процессов
Команда ps выдаст краткий список текущих процессов. Для того, чтобы выбрать все процессы, используете параметр -A или –e:
# ps -A
Пример вывода данных:
PID TTY TIME CMD
1 ? 00:00:02 init
2 ? 00:00:02 migration/0
3 ? 00:00:01 ksoftirqd/0
4 ? 00:00:00 watchdog/0
5 ? 00:00:00 migration/1
6 ? 00:00:15 ksoftirqd/1
....
.....
4881 ? 00:53:28 java
4885 tty1 00:00:00 mingetty
4886 tty2 00:00:00 mingetty
4887 tty3 00:00:00 mingetty
4888 tty4 00:00:00 mingetty
4891 tty5 00:00:00 mingetty
4892 tty6 00:00:00 mingetty
4893 ttyS1 00:00:00 agetty
12853 ? 00:00:00 cifsoplockd
12854 ? 00:00:00 cifsdnotifyd
14231 ? 00:10:34 lighttpd
14232 ? 00:00:00 php-cgi
54981 pts/0 00:00:00 vim
55465 ? 00:00:00 php-cgi
55546 ? 00:00:00 bind9-snmp-stat
55704 pts/1 00:00:00 ps
Команда ps подобна команде top, но выдает больше информации.
Показать больше данных
# ps -Al
Для того, чтобы включить режим максимальной выдачи данных (будут показаны аргументы командной строки, переданные в процесс):
# ps -AlF
Показать потоки (LWP и NLWP)
# ps -AlFH
Показать потоки после процессов
# ps -AlLm
Выдать список всех процессов на сервере
# ps ax
# ps axu
Выдать дерево процессов
# ps -ejH
# ps axjf
# pstree
Выдать информацию о параметрах безопасности
# ps -eo euser,ruser,suser,fuser,f,comm,label
# ps axZ
# ps -eM
Показать каждый процесс для пользователя Vivek
# ps -U vivek -u vivek u
Настроить выдачу данных в формате, определенном пользователем
# ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
# ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
# ps -eopid,tt,user,fname,tmout,f,wchan
Показывать ID процессов, запущенных под Lighttpd
# ps -C lighttpd -o pid=
или
# pgrep lighttpd
или
# pgrep -u vivek php-cgi
Показать имя для PID 55977
# ps -p 55977 -o comm=
Выдать 10 процессов, потребляющих наибольшее количество памяти
# ps -auxf | sort -nr -k 4 | head -10
Выдать 10 процессов, потребляющих наибольший ресурс процессора
# ps -auxf | sort -nr -k 3 | head -10
№ 6: free – использование памяти
Команда free показывает общее количество свободной и используемой системой физической памяти и памяти свопинга, а также размеры буферов, используемые ядром.
# free
Пример вывода данных:
total used free shared buffers cached
Mem: 12302896 9739664 2563232 0 523124 5154740
-/+ buffers/cache: 4061800 8241096
Swap: 1052248 0 1052248

№ 7: : iostat – средняя загрузка процессора, активность дисков
Команда iostat выдает статистику использования процессора, а также статистику ввода/вывода для устройств, разделов и сетевых файловых систем (NFS).
# iostat
Пример вывода данных:
Linux 2.6.18-128.1.14.el5 (www03.nixcraft.in) 06/26/2009
avg-cpu: %user %nice %system %iowait %steal %idle
3.50 0.09 0.51 0.03 0.00 95.86
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 22.04 31.88 512.03 16193351 260102868
sda1 0.00 0.00 0.00 2166 180
sda2 22.04 31.87 512.03 16189010 260102688
sda3 0.00 0.00 0.00 1615 0

№ 8: sar – сбор и выдача данных о системной активности
Команда sar используется для сбора информации о системной активности и выдачи ее в виде отчета или ее сохранения. Чтобы увидеть значение считчика сетевой активности, введите:
# sar -n DEV | more
Для того, чтобы увидеть значения счетчиков сетевой активности, начиная с 24-го:
# sar -n DEV -f /var/log/sa/sa24 | more
С помощью команды sar Вы можете также выдавать данные в режиме реального времени:
# sar 4 5
Пример вывода данных:
Linux 2.6.18-128.1.14.el5 (www03.nixcraft.in) 06/26/2009
06:45:12 PM CPU %user %nice %system %iowait %steal %idle
06:45:16 PM all 2.00 0.00 0.22 0.00 0.00 97.78
06:45:20 PM all 2.07 0.00 0.38 0.03 0.00 97.52
06:45:24 PM all 0.94 0.00 0.28 0.00 0.00 98.78
06:45:28 PM all 1.56 0.00 0.22 0.00 0.00 98.22
06:45:32 PM all 3.53 0.00 0.25 0.03 0.00 96.19
Average: all 2.02 0.00 0.27 0.01 0.00 97.70

№ 9: mpstat – использование мультипроцессора
Команда mpstat выводит данные об активности каждого имеющегося в наличие процессора, процессор 0 будет первым. Команда mpstat -P ALL выводит данные о среднем использовании ресурсов для каждого из процессоров:
# mpstat -P ALL
Пример вывода данных:
Linux 2.6.18-128.1.14.el5 (www03.nixcraft.in) 06/26/2009
06:48:11 PM CPU %user %nice %sys %iowait %irq %soft %steal %idle intr/s
06:48:11 PM all 3.50 0.09 0.34 0.03 0.01 0.17 0.00 95.86 1218.04
06:48:11 PM 0 3.44 0.08 0.31 0.02 0.00 0.12 0.00 96.04 1000.31
06:48:11 PM 1 3.10 0.08 0.32 0.09 0.02 0.11 0.00 96.28 34.93
06:48:11 PM 2 4.16 0.11 0.36 0.02 0.00 0.11 0.00 95.25 0.00
06:48:11 PM 3 3.77 0.11 0.38 0.03 0.01 0.24 0.00 95.46 44.80
06:48:11 PM 4 2.96 0.07 0.29 0.04 0.02 0.10 0.00 96.52 25.91
06:48:11 PM 5 3.26 0.08 0.28 0.03 0.01 0.10 0.00 96.23 14.98
06:48:11 PM 6 4.00 0.10 0.34 0.01 0.00 0.13 0.00 95.42 3.75
06:48:11 PM 7 3.30 0.11 0.39 0.03 0.01 0.46 0.00 95.69 76.89

№ 10: pmap – использование процессами оперативной памяти
Команда pmap выдает данные о распределении памяти между процессами. Использование этой команды позволит найти причину узких мест, связанных с использованием памяти.
# pmap -d PID
Для того, чтобы получить информацию об использовании памяти процессом с pid # 47394, введите:
# pmap -d 47394
Пример вывода данных:
47394: /usr/bin/php-cgi
Address Kbytes Mode Offset Device Mapping
0000000000400000 2584 r-x-- 0000000000000000 008:00002 php-cgi
0000000000886000 140 rw--- 0000000000286000 008:00002 php-cgi
00000000008a9000 52 rw--- 00000000008a9000 000:00000 [ anon ]
0000000000aa8000 76 rw--- 00000000002a8000 008:00002 php-cgi
000000000f678000 1980 rw--- 000000000f678000 000:00000 [ anon ]
000000314a600000 112 r-x-- 0000000000000000 008:00002 ld-2.5.so
000000314a81b000 4 r---- 000000000001b000 008:00002 ld-2.5.so
000000314a81c000 4 rw--- 000000000001c000 008:00002 ld-2.5.so
000000314aa00000 1328 r-x-- 0000000000000000 008:00002 libc-2.5.so
000000314ab4c000 2048 ----- 000000000014c000 008:00002 libc-2.5.so
.....
......
..
00002af8d48fd000 4 rw--- 0000000000006000 008:00002 xsl.so
00002af8d490c000 40 r-x-- 0000000000000000 008:00002 libnss_files-2.5.so
00002af8d4916000 2044 ----- 000000000000a000 008:00002 libnss_files-2.5.so
00002af8d4b15000 4 r---- 0000000000009000 008:00002 libnss_files-2.5.so
00002af8d4b16000 4 rw--- 000000000000a000 008:00002 libnss_files-2.5.so
00002af8d4b17000 768000 rw-s- 0000000000000000 000:00009 zero (deleted)
00007fffc95fe000 84 rw--- 00007ffffffea000 000:00000 [ stack ]
ffffffffff600000 8192 ----- 0000000000000000 000:00000 [ anon ]
mapped: 933712K writeable/private: 4304K shared: 768000K
Последняя строка очень важна:
mapped: 933712Kобщее количество памяти, отведенного под файлы
writeable/private: 4304Kобщее количество приватного адресного пространства
shared: 768000Kобщее количество адресного пространства, которое данный процесс использует совместно другими процессами.

№ 11 и № 12: netstat и ss – сетевая статистика
Команда netstat выдает информацию о сетевых соединениях, таблицах маршрутизации, статистике по интерфейсам, маскарадинге соединений и многоадресных рассылках. Команда ss используется для выдачи в дамп статистики о сокетах. Она позволяет выдавать информацию, аналогичную выдаваемой командой netstat.

№13: iptraf – сетевая статистика в режиме реального времени
Команда iptraf запускает цветной интерактивный монитор, следящий за сетевыми IP. Этот монитор сетевых IP базируется на команде ncurses, которая выдает различную сетевую статистику, в том числе информацию о TCP, ведет подсчет UDP, выдает сведения о ICMP и OSPF, информацию о нагрузке на Ethernet, статистику по узлам сети, данные об ошибках контрольных сумм пакетов IP и многое другое. Монитор предоставляет в удобном для чтения виде следующие данные:
Статистику сетевого трафика по TCP подключениям
Статистику IP трафика по сетевым интерфейсам
Статистику сетевого трафика по протоколам
Статистику сетевого трафика по портам TCP/UDP и по размерам пакетов
Статистику сетевого трафика по адресам протоколов второго уровня


Рис.02; Общая статистика по интерфейсам: статистика трафика IP по сетевым интерфейсам


Рис.03: Статистика сетевого трафика по TCP подключениям

№14: tcpdump – детальный анализ сетевого трафика
Команда tcpdump – простая команда, выдающая дамп сетевого трафика. Однако, вам нужно хорошо понимать протоколы TCP/IP для того, чтобы использовать это средство. Например, для того, чтобы показать информацию о трафике DNS, введите следующее:
# tcpdump -i eth1 'udp port 53'
Для того, чтобы показать все IPv4 HTTP пакеты, идущие на порт и с порта 80, т.е. выдать только те пакеты, которые содержат данные, и, например, не учитывать пакеты SYN и FIN и пакеты ACK-only, введите следующее:
# tcpdump 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'
Для того, чтобы показать все сессии FTP для адреса 202.54.1.5, введите следующее:
# tcpdump -i eth1 'dst 202.54.1.5 and (port 21 or 20'
Для того, чтобы показать все сессии HTTP для адреса 192.168.1.5, введите следующее:
# tcpdump -ni eth0 'dst 192.168.1.5 and tcp and port http'
Введите следующую команду и используйте для просмотра подробностей программу анализа wireshark:
# tcpdump -n -i eth1 -s 0 -w output.txt src or dst port 80
№ 15: strace – системные вызовы
Трассировка системных вызовов и сигналов. Это средство полезно для отладки веб сервера и решения других серверных проблем. О том, как использовать это средство и для чего нужна трассировка процессов, смотрите по ссылкеstrace.
№ 16: Директорий /Proc – различная статистика ядра
В директории /proc имеется подробная информация о различных устройствах и ядре Linux. Подробности смотрите вдокументации Linux kernel /proc. Самые общие примеры:
# cat /proc/cpuinfo
# cat /proc/meminfo
# cat /proc/zoneinfo
# cat /proc/mounts
№ 17: Nagios – мониторинг сервера и сети
Nagios– популярное open source приложение, предназначенное для мониторинга компьютерных систем и сетей. Вы можете легко следить за всеми своими хостами, сетевым оборудованием и сервисами. Приложение может посылать предупреждающее сообщение, когда что-то идет не так, как надо, а затем – еще одно, когда ситуация исправляется. Имеется приложениеFAN- "Fully Automated Nagios" ("Полностью автоматизированный Nagios"). Назначение FAN – обеспечить установку Nagios, в том числе и инструментария, предоставляемого сообществом Nagios. FAN распространяется в виде CD образа в стандартном формате ISO, что упрощает установку сервера Nagios. Вдобавок на дистрибутиве имеется масса инструментальных средств, повышающих практическую отдачу от использования Nagios.
№ 18: Cacti – инструментальное веб приложение, используемое для мониторинга
Пакет Cacti является полностью сетевым графическим решением, созданным для добавления графической оболочки к мощному средству хранения данных RRDTool. В пакете Cacti уже "из коробки" имеются средства быстрой регистрации, графические шаблоны с расширенными возможностями, множество методов для сбора данных и пользовательские функции управления. Все это помещено в интуитивно понятный и удобный для использования интерфейс, что имеет смысл при установке в локальных сетях вплоть до сложных сетей с сотнями устройств. Пакет предоставляет данные о сети, процессоре, памяти, зарегистрированных пользователях, серверах Apache, DNS и многое другое. По следующей ссылке смотрите описание,как под CentOS / RHEL установить и сконфигурировать сетевое графическое средство Cacti.
№ 19: KDE System Guard – графический монитор, выдающий сведения о системе в режиме реального времени
KSysguard – сетевое приложение для KDE, осуществляющее мониторинг системы и задач. Это средство может работать в ssh сессии. В нем имеется масса возможностей, например, такие, как клиент/серверные технологии, что позволяет осуществлять мониторинг локальных и удаленных хостов. В графической оболочке используются так называемые сенсоры, которые собирают информацию, выдаваемую приложением. Сенсор может возвращать либо простое значение, либо более сложно сформированные данные, например, таблицы. Для каждого вида данных предлагается один или несколько вариантов выдачи данных. Изображаемые данные сгруппированы в виде отдельных листов, которые можно сохранять и загружать независимо друг от друга. Таким образом, KSysguard не только менеджер простых задач, но также и мощное средство для управления большим серверным хозяйством.


Рис.05: KDE System Guard (рисунок взят из Википедии)

№ 20: Gnome System Monitor – графическое средство выдачи информации о системе в режиме реального времени
Приложение System Monitor позволит вам получить базовую информацию о системе, а также следить за системными процессами, использованием системных ресурсов и системными файлами. Вы также можете использовать System Monitor для изменения характеристик своей системы. Хотя это не такое мощное приложение, как System Guard для KDE, оно предоставляет основную информацию, которая может быть полезной для пользователей – новичков:
Отображается различная основная информация об аппаратном и программном обеспечении компьютера
Версия ядра Linux
Версия GNOME
Аппаратные средства
Установленная оперативная память
Процессоры и их скорость
Статус системы
Имеющееся в наличии дисковое пространство
Процессы
Память и пространство своппинга
Использование сети
Файловые системы
Список всех смонтированных файловых систем вместе с основной информацией о каждой из них


Рис.6: Приложение Gnome System Monitor
  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума
Последнии темы Читаемые темы Лучшие пользователи Новые пользователи
  • Я был ТУТ! (24)
  • Наши кнопки (0)
  • Общие правила на сайте (0)
  • Описание различных видео форматов (0)
  • Шаблоны оформления новостей (2)
  • Как вы нашли наш сайт? (8)
  • Сектор Газа, все только о них... (1)
  • Какие хорошие комедии вы видели? (5)
  • Вакансии по разделам на www.7x.net.ua (0)
  • Приглашаем! Журналистов, Риперов... (0)
  • Я был ТУТ! (24)
  • Как вы относитесь к сериалу Звёздные врата: SG-1 (17)
  • Фото приколы. (16)
  • Конкурс на лучший баннер (11)
  • Красивый шаблон для системы uCoz (10)
  • Досчитаем до 100 (9)
  • Анимированное меню (9)
  • Как вы нашли наш сайт? (8)
  • Видео приколы. (8)
  • Увеличь количество посещений своего сайта (7)
  • Grinya
  • A1rBoRnE
  • Chibcha
  • DarkSpirit
  • Змей
  • Fantom
  • Borman
  • Worlak
  • Mister_Coob
  • Anatoliy
  • ZoYOping
  • LeoFreskos
  • Avalancheflu
  • Candyktg
  • Portableddx
  • olemit
  • Valeron83Oping
  • AviorT
  • Blendermog
  • Holographictkx
  • ()


    Copyright MyCorp © 2024 Хостинг от uCoz