Nmon performance: Бесплатный инструмент для анализа производительности AIX и Linux

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

Найджел Гриффитс, технический специалист EMEA Linux on POWER, IBM

Найджел Гриффитс (Nigel Griffiths) – технический специалист-практик EMEA Linux on POWER и руководитель группы EMEA p5 Virtualization Technical Focus Group. Он специализируется на виртуализации, производительности, измерении и инструментальных средствах работы. Найджел является сертифицированным консультантом в области ИТ. С ним можно связаться по адресу электронной почты nag@uk.ibm.com.



21.09.2009

Комментарии к применению. Инструмент nmonОФИЦИАЛЬНО НЕ ПОДДЕРЖИВАЕТСЯ. Никаких гарантий не предоставляется, поддержку от IBM по этому инструменту также получить нельзя. Если возник вопрос по nmon, можно задать его на сайте Performance Tools Forum (см. Ресурсы); ответы на этот вопрос могут впоследствии пригодиться другим пользователям. Чтобы защитить свой email от спама, необходимо сначала создать учетную запись пользователя (USER ID), это займет максимум 20 секунд.

Инструмент nmon работает на:

  • AIX® 4.1.5, 4.2.0, 4.3.2 и 4.3.3 (nmon Version 9a: функциональность этой версии не будет развиваться дальше).
  • AIX 5.1, 5.2 и 5.3 (nmon Version 10: эта версия поддерживает AIX 5.3 и компьютеры на базе POWER5™, с SMT и распределенными между микроразделами CPU.)
  • Linux® SUSE SLES 9, Red Hat EL 3 и d 4, Debian на pSeries® p5 и OpenPower™.
  • Linux SUSE, Red Hat и другие последние дистрибутивы для x86 (Intel и AMD в 32-битном режиме).
  • Linux SUSE и Red Hat на zSeries® или мэйнфрейме.

Инструмент nmon обновляется каждые 6 месяцев или при выпуске новых версий операционных систем. Чтобы вас включили в список рассылки уведомлений об обновлении, необходимо написать Найджелу Гриффитсу.

Этот инструмент удобно использовать с nmon analyser (см. Ресурсы), который читает файлы с выходными данными nmon и автоматически составляет различные графики.

Введение

Инструмент nmon разработан для специалистов по производительности AIX и Linux; используется при анализе и мониторинге данных о производительности, включая:

  • использование CPU;
  • использование памяти;
  • информацию о состоянии ядра и очереди выполнения;
  • интенсивность дискового ввода/вывода, передачи и чтения/записи данных;
  • свободное пространство на файловых системах;
  • дисковые адаптеры;
  • скорость сетевого ввода/вывода, передачи и чтения/записи данных;
  • пространство страниц и интенсивность подкачки страниц;
  • характеристики CPU и AIX;
  • главные процессоры;
  • Web-кэш IBM HTTP-серверы;
  • группы дисков, определенные пользователем;
  • подробные характеристики компьютера, ресурсы;
  • асинхронный ввод/вывод - только для AIX;
  • Workload Manager (WLM) - только для AIX;
  • диски IBM TotalStorage® Enterprise Storage Server® (ESS) - только для AIX;
  • сетевую файловую систему (Network File System, NFS);
  • изменения в Dynamic LPAR (DLPAR) - только для pSeries p5 и OpenPower для платформ AIX или Linux.

Также добавлена новая утилита, которая создает график из выходной информации nmon и gif-файлы, которые можно разместить на Web-сайте.

Подробную информацию можно найти в файле README.

Преимущества инструментального средства

Инструмент nmon может вывести всю важную для настройки производительности информацию на один экран и динамически обновлять ее. Этот эффективный инструмент работает на любом неинтеллекутальном терминале, в telnet-сеансе или по модемному соединению. Кроме того, он не сильно загружает процессор - обычно примерно на 2%. На новых компьютерах загрузка процессора может составлять менее 1%.

Данные выводятся на экран и обновляются каждые 2 секунды. Однако длину интервала между обновлениями можно изменить в большую или меньшую сторону. Если растянуть окно и отобразить данные в X Window, VNC, PuTTY или другом оконном менеджере, то инструмент nmon сможет вывести в одно окно множество информации.

Инструмент nmon может также сохранять эти данные в текстовый файл для последующего анализа и создания графиков. Вывод сохраняется в формате таблиц (.csv).

Инсталляция инструмента

Инструмент представляет собой независимый бинарный файл (файлы разнятся в зависимости от используемой версии AIX или Linux), который можно инсталлировать за 5 секунд (возможно даже меньше, если быстро вводить команды). Установка проста:

  • скопировать файл nmonXXX.tar.Z на компьютер. Если используется FTP, то необходимо использовать двоичный режим. Примечание: версия XXX заменяет этот пример;
  • распаковать файл, используя команду uncompress nmonXX.tar.Z;
  • для извлечения файлов используется команда tar xvf nmonXX.tar;
  • обязательно прочитать файл README;
  • для запуска инструмента nmon можно просто ввести nmon;
  • если используется учетная запись пользователя root, следует ввести ./nmon.

Дополнительные примечания при использовании nmon 9 на AIX 4.

  1. Необходимо работать с правами пользователя root, либо позволить всем постоянным пользователям читать файл /dev/kmem при помощи следующей команды (опять же, эта команда выполняется с правами пользователя root):
    chmod ugo+r /dev/kmem
  2. Если нужны статистические данные о диске, то надо выполнить следующую команду (с правами root):
    chdev -l sys0 -a iostat=true

Как управлять инструментом в интерактивном режиме

Чтобы работать с nmon в интерактивном режиме, достаточно прочитать несколько заметок на первой странице файла README. Затем запустить инструмент и использовать односимвольные команды для получения желаемых данных. Например, чтобы получить статистические данные по CPU, памяти (Memory) и дискам (Disk), необходимо запустить nmon и ввести:

cmd

Как получить помощь при работе в интерактивном режиме

нажать клавишу h.

Дополнительная помощь.

Чтобы получить дополнительную помощь:

  • команда nmon -? выведет краткую справку;
  • команда nmon -h выведет подробную справку;
  • прочитать файл README.

Как собирать данные в файл для последующего анализа и создания графиков

Запустить nmon с флагом -f. Чтобы получить более подробную информацию, можно выполнить команду nmon -h. В качестве примера попробуем запустить nmon для сбора данных в течение одного часа с интервалом в 30 секунд:        

nmon -f -s 30 -c 120
nmon -fT -s 30 -c 120

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

<hostname>_date_time.nmon

Этот файл содержит значения, отделенные друг от друга запятыми (CVS), и может напрямую импортироваться в программу электронных таблиц. Если используется Lotus® 1-2-3, то файл предварительно нужно сортировать (для Excel-версии анализатора nmon это не требуется.) В AIX необходимо ввести следующую команду:        

sort -A mymachine_311201_1030.nmon > xxx.csv

Заметки для экономии времени.

  • Чтобы загрузить файл с данными nmon в таблицу, стоит ознакомиться с документацией на предмет загрузки CVS-файлов (.csv) в таблицы. Многие таблицы принимают эти файлы в качестве стандартных входных файлов и могут непосредственно загружать эти данные и работать с ними, либо позволяют импортировать их и работать далее. Некоторые программы электронных таблиц имеют фиксированное число строк и колонок. Чтобы избежать этой проблемы, я советую собирать не более 300 снимков данных.
  • При записи данных в файл nmon отсоединяется от оболочки для того чтобы продолжать свою работу даже в том случае, если пользователь выйдет из системы. Это означает, что может показаться, что nmon аварийно завершил свою работу, хотя при этом он просто выполняется в фоновом режиме. Чтобы убедиться в том, что nmon все еще выполняется, можно использовать команду:
    ps ?ef | grep nmon
  • Чтобы узнать, какая версия nmon подходит для использования на конкретной операционной системе, прочитайте файл README.
  • nmon Version 10 для AIX 5 более не использует /dev/kmem, так как теперь она использует только общие API. Поэтому не нужно изменять права доступа для /dev/kmem. Также нет необходимости иметь одновременно и 32-, и 64-разрядные версии nmon.
  • Для AIX 5.1, 5.2 и 5.3 используется nmon 10.
  • На AIX не сохраняйте командой lslpp -Lcq bos.?p дампы ядра на AIX 5.1 с эксплуатационным уровнем 3 (ML03). Кроме того, при обновлении до AIX 5.2 ML5 у меня пропали статистические данные WLM. Этих ошибок AIX можно избежать, используя nmon Version 10.
  • Не стоит использовать Microsoft® Windows® Telnet; также стоит использовать окно большее, чем 80x25 символов. Многие разработчики используют клиенты VNC и PuTTY для отображения данных nmon на Windows-компьютере - почему бы не поступить так же!

Новые возможности в nmon Version 10 для AIX

Новые возможностиОписание
ЗапускНебольшой сценарий оболочки, называемый "nmon", который запускает правильную версию nmon. Надо просто поместить этот сценарий и исполняемые файлы nmon в переменную $PATH и ввести: nmon. Эта версия компилируется только в 32-разрядном режиме. Поэтому она может выполняться на 32- и 64-разрядном аппаратном обеспечении. Эта возможность позволит упростить установку и запуск nmon.
N = NFSПоддержка NFS - новая возможность в nmon 10.
p = PartitionsЭтот флаг предназначен для разделов, распределенных по CPU - только для p5/AIX5.3.
C = CPUЭта опция для компьютеров с более чем 32 процессорами; максимум - 128 логических процессоров.
c = CPUПодробности использования физического процессоров - для платформ POWER5, работающих под управлением AIX 5.3 со средой распределенных CPU.
S = SubclassДля подклассов WLM используется по мере необходимости.
a = Disk adaptersДетальная информация о дисковых адаптерах, например их полный тип.
r = ResourcesТактовая частота процессора в MГц.
k = KernelПредоставляет несколько новых полей.
L = Large pagesПредоставляет статистическую информацию о больших страницах памяти - для высокопроизводительных систем.
D = DiskПредоставляет больше информации о дисках, размерах дисков, свободной памяти, группах томов, адаптеров и т. д.
n = NetworkПредоставляет подробную информацию о сетевом адаптере, MTU и ошибках.
m = MemoryПредоставляет подробную информацию о том, как используется память - системой (ядра), процессами или она является активной виртуальной памятью.
-BЭта опция используется при запуске nmon для удаления ненужных полей.

Пример вывода nmon 10 для AIX 5

Рисунок 1 является примером окна вывода. Он показывает открытое окно в AIX 5, которое заполнено полезной информацией.

Рисунок 1. Простой вывод в nmon 10 для AIX 5
Рисунок 1. Простой вывод в nmon 10 для AIX 5

Рисунок 2 иллюстрирует подробности использования CPU (рассматривается компьютер на платформе POWER5 с четырьмя процессорами и включенным режимом SMT), памяти, а также статистические данные о внутреннем состоянии ядра и дисковую статистику. Примечание: логический раздел (LPAR) 6 раз воспользовался своим правом на половину ресурсов процессора.

Рисунок 2. Подробности использования процессора
Рисунок 2. Подробности использования процессора

Рисунок 3 показывает подробную информацию о сети, статистические данные NFS-системы и использование журналируемой файловой системы.

Рисунок 3. Подробная информация о сети
Рисунок 3. Подробная информация о сети

Статистические данные по микроразделам с общими процессорами платформы POWER5 показаны на рисунке 4.

Рисунок 4. Подробности LPAR
Рисунок 4. Подробности LPAR

Рисунок 5 иллюстрирует детали Linux-версии nmon, показывая статистические данные о CPU (два процессора POWER5 на компьютере с активизированным SMT), LPAR, об использовании памяти, статистику по использованию сети, использованию файловой системы и дисков. Примечание: использовать физический процессор для LPAR можно только на SUSE SLES9 Service Pack 1 и Red Hat EL 4 Update 1.

Рисунок 5. Linux-версия nmon
Рисунок 5. Linux-версия nmon

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

Рисунок 6. Linux-версия nmon. Продолжение
Рисунок 6. Linux-версия nmon. Продолжение

Загрузка инструмента

nmon можно загрузить следующими способами:

Ресурсы

Научиться

Получить продукты и технологии

  • nmon: загрузка nmon и сопутствующих инструментов.(EN)
  • IBM trial software: ознакомительные версии программного обеспечения для разработчиков, которые можно загрузить прямо со страницы сообщества developerWorks.(EN)

Обсудить

Комментарии

developerWorks: Войти

Обязательные поля отмечены звездочкой (*).


Нужен IBM ID?
Забыли Ваш IBM ID?


Забыли Ваш пароль?
Изменить пароль

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Профиль создается, когда вы первый раз заходите в developerWorks. Информация в вашем профиле (имя, страна / регион, название компании) отображается для всех пользователей и будет сопровождать любой опубликованный вами контент пока вы специально не укажите скрыть название вашей компании. Вы можете обновить ваш IBM аккаунт в любое время.

Вся введенная информация защищена.

Выберите имя, которое будет отображаться на экране



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

Отображаемое имя должно иметь длину от 3 символов до 31 символа. Ваше Имя в системе должно быть уникальным. В качестве имени по соображениям приватности нельзя использовать контактный e-mail.

Обязательные поля отмечены звездочкой (*).

(Отображаемое имя должно иметь длину от 3 символов до 31 символа.)

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Вся введенная информация защищена.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=AIX и UNIX
ArticleID=429918
ArticleTitle=Nmon performance: Бесплатный инструмент для анализа производительности AIX и Linux
publish-date=09212009