artem
23.04.2018
10989

Nmon – Утилита для системного администратора

В этой статье установим и рассмотрим крайне полезную утилиту для диагностики системы под названием Nmon.

Nmon

Описание Nmon

Интерфейс программы

Поддерживаемые операционные системы: AIX, Linux, ARM

Эта программа с лаконичным интерфейсом может стать отличным помощником любого системного администратора и способна выдать огромное количество важной и полезной информации о загруженности центрального процессора, вывести информацию по использованию файловой системы, а так же дисков (в виде мини графиков или числовых данных), сети и.т.д

Сама программа легковесная и практически не нагружает систему. Данные выводятся на экран и обновляются каждые 2 секунды. Длину интервала между интервалами можно изменить. Так что программа предоставляет возможность сохраняться данные в текстовый файл формата csv для последующего анализа полученных данных и построение графиков.

В этой статье мы рассмотрим основные команды и возможности этой утилиты.

Установка программы

Устанавливать  данный программный продукт будем на CentOS версии 6.6. Установка выполняется при помощи пакетного менеджера yum следующей команды:

# Yum install nmon

Выполнение команды

После проверки зависимостей подтверждаем установку программы «y»

Подтверждаем

Все, можно запустить программу командой. Для запуска программы достаточно ввести следующую команду: # nmon

Стоит отметить, что если вы подключаетесь к серверу при помощи программы Putty – переключите кодировку на UTF-8, иначе будет каша из символов.

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

переходим в категорию Windows —> Translation

Смена кодировки 1

Remote character set и выбираем кодировку UTF-8.

Смена кодировки 2

Далее переходим в Session и вводим ip удаленного хоста, выбираем стандартный для ssh порт 22, вводим какое-то название сессиии в поле Save Session, чтоб в дальнейшем можно было сразу подключиться с нужными настройками. Жмем Save.

Сохраняем

Nmon

Интерфейс программы

После запуска мы видим приветственное окно программы. Снизу отображается краткое руководство по параметрам интерактивного режима (о котором будет написано ниже).

·         q – выйти из nmon;

·         h – вызов подсказки. Для того, чтоб вернуть обратно в меню – нажмите еще раз;

·         c – CPU;

·         m – память;

·         d – диски;

·         k – ядро;

·         n – сеть;

·         N – NFS;

·         j – файловая система;

·         t – top-процессы;

·         V – виртуальная память;

·         . – только активные диски/процессы;

·         v – подробный режим.

В программе имеется два режима: режим сбора данных и интерактивный режим.

Режим сбора данных (-f):

·         f  устанавливает формат вывода таблицы. Базовое значение: -s300 -c288

·         s <seconds> частота обновления экрана. Базовое значение: 2 сек

·         c <number> число обновлений. Базовое значение: 1 млн

·         d <disks> параметр отвечает за отображения количества дисков. Базовое значение: 256

·         t таблица включает в себя основные процессы;

·         x планирование мощности (15 мин на 1 день = -fdt -s 900 -c 96)

Интерактивный режим:

·         s <seconds> частота обновления экрана. Базовое значение: 2 сек

·         c <number> число обновлений. Базовое значение: по умолчанию 1 млн

·         g <filename> пользовательские группы дисков.

— file = в каждой строке: group_name <список дисков> разделены пробелом

— like: база данных sdb sdc sdd sde

— upto 1-32 групп дисков, может использоваться

·         b черно-бело оформление. По умолчанию оно цветное.

Пример команды:

# nmon –s 3 –b

Некоторые параметры системы можно просмотреть, только если запускаете ее с правами суперпользователя, учитывайте это при работе с этой программой

Рассмотрим их теперь по отдельности:

CPU (c):

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

CPU

Memory (m):

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

Memory

Disks (d):

Отображает информацию по состоянию жестких дисков и их разделов. Присутствует информация о суммарной скорости чтении и записи и все представлено в виде таблицы и графика.

Disks

Resources (r):

Здесь можно посмотреть информацию процессоре, архитектуре пк, операционной системе, а так же о типе ядра.

Resources

Kernel (k):

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

Kernel

Filesystems (j):

Выводит информацию о файловой системе в виде таблицы.

Filesystems

Network (n):

Здесь можно посмотреть информацию о сетевых интерфейсах, а так же о количестве и размеру отправленных и полученных пакетах. Так же отображает сетевые ошибки так же в таблице.

Network

NFS (N):

Отображает информацию о сетевой файловой системе.

NFS

Top processes (t):

В виде таблицы отображает список процессов, по каждому процессу показывает количество занятой оперативной памяти и.т.д.

Top processes

Virtual memory (V):

Отображает информацию о виртуальной памяти и разделе подкачки.

Virtual memory

Verbose hints (v):

Показывает информацию о ресурсах в плане безопасности, степень предупреждения и опасности в процентах.

Verbose hints

CPU long-term (l)

Позволяет на наглядном графике посмотреть загруженность процессора.

CPU long-term

Сбор и сохранение данных с помощью nmon

Как говорилось выше, этот инструмент позволяет не только просматривать состояние системы в реальном времени, но и имеет возможность сохранять собранные данные в файл. Это может оказать полезной функцией, если необходимо проанализировать состояние системы за определенный отрезок времени.

Предположим, что нам требуется 20 «снимков», делать которые мы будем один раз в 30 секунд. Это можно организовать  с помощью следующей команды:

# nmon -f -s 30 -c 20

Пояснение по команде:

-f –Этот ключ указывает, что данные надо записать в файл (файл с расширением .nmon)
-s – С помощью этого ключа задаем промежутки времени между снимками (в секундах).

– Количество снимков.

Через 10 минут после выполнения команды в текущей директории окажется файл который можно будет проанализировать. Для этого можно использовать утилиту nmonchart, которая создаст из него веб-страницу удобную для анализа полученных данных.

Пример графика

Автоматизация сбора данных:

Если необходимо организовать регулярный сбор данных о показателях работы сервера, то, можно воспользоваться заданиями cron.
Сначала создадим простой скрипт и назовем его nmon.sh. Содержимое скрипта будет следующим:

#! /bin/sh
nmon -f -s 30 -c 20

Создаем скрипт 1

После чего сохраняем полученный скрипт и не забудьте обязательно дать ему разрешение на исполнение с помощью команды chmod u+x nmon.sh. Теперь откроем файл crontab для редактирования командой crontab -e и введём следующее:

30 11 * * * ~/nmon.sh

После сохранения изменений, задание cron будет выполняться ежедневно, в 11:30 утра. Вы, конечно, подставите сюда то время, которое вам нужно, получив в своё распоряжение удобный инструмент для выявления причин неполадок серверов.

Создаем скрипт 2

Утилита nmon может стать отличным помощником для любого администратора.

Книга 101 функция Asterisk
Познакомьтесь с возможностями Asterisk. Найдите инструменты, которые помогут вашей компании развиваться.
Скачать книгу
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Остались вопросы?

Я - Першин Артём, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.

VoIP оборудование


ближайшие курсы

10 доводов в пользу Asterisk

Распространяется бесплатно.

Asterisk – программное обеспечение с открытым исходным кодом, распространяется по лицензии GPL. Следовательно, установив один раз Asterisk вам не придется дополнительно платить за новых абонентов, подключение новых транков, расширение функционала и прочие лицензии. Это приближает стоимость владения станцией к нулю.

Безопасен в использовании.

Любое программное обеспечение может стать объектом интереса злоумышленников, в том числе телефонная станция. Однако, сам Asterisk, а также операционная система, на которой он работает, дают множество инструментов защиты от любых атак. При грамотной настройке безопасности у злоумышленников нет никаких шансов попасть на станцию.

Надежен в эксплуатации.

Время работы серверов некоторых наших клиентов исчисляется годами. Это значит, что Asterisk работает несколько лет, ему не требуются никакие перезагрузки или принудительные отключения. А еще это говорит о том, что в районе отличная ситуация с электроэнергией, но это уже не заслуга Asterisk.

Гибкий в настройке.

Зачастую возможности Asterisk ограничивает только фантазия пользователя. Ни один конструктор шаблонов не сравнится с Asterisk по гибкости настройки. Это позволяет решать с помощью Asterisk любые бизнес задачи, даже те, в которых выбор в его пользу не кажется изначально очевидным.

Имеет огромный функционал.

Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.

Интегрируется с любыми системами.

То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.

Позволяет телефонизировать офис за считанные часы.

В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.

Отличная масштабируемость.

Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.

Повышает управляемость бизнеса.

Asterisk дает не просто набор полезных функций, он повышает управляемость организации, качества и комфортности управления, а также увеличивает прозрачность бизнеса для руководства. Достичь этого можно, например, за счет автоматизации отчетов, подключения бота в Telegram, санкционированного доступа к станции из любой точки мира.

Снижает расходы на связь.

Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.