Посмотрите, что на самом деле происходит под капотом, с помощью этих инструментов

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

Чтобы принимать обоснованные решения об изменениях в вашей системе, вам необходимо уметь выявлять проблемы и проверять достоверные данные.

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

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

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

1. iotop

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

Вы просто не можете получить исходные числа с помощью традиционного инструмента, такого как top. Когда вы используете iotop, вы получаете именно то, на что это похоже: взгляд на процессы и использование системы, ориентированный на ввод-вывод.

Вы можете использовать это для множества целей, но самая важная из них - увидеть использование диска и отметить потенциальные узкие места. Объединение этого инструмента с другими инструментами, такими как top или htop, дает вам более полное представление о том, что происходит на вашем компьютере.

Я бы не советовал использовать iotop для тестирования скорости. Хотя вы получаете четкое представление о том, сколько операций ввода-вывода использует каждый процесс, он больше ориентирован на мониторинг в реальном времени, а не на повторное тестирование. Если вы заинтересованы в тестировании ввода-вывода, я бы попробовал инструмент под названием fio.

2. htop

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

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

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

Если вы думаете, что что-то перегружает все ядра в вашей системе, и вы открываете htop, вы увидите довольно много красного. Это быстро и кратко.

3. IPTraf

Это невероятно полезный инструмент для диагностики сетевых проблем. С помощью этого инструмента вы можете отслеживать весь сетевой трафик, проходящий через вашу систему. Вы можете настроить фильтры для определенных интерфейсов или типов трафика (например, для определенного TCP-порта). Это очень похоже на Wireshark, за исключением того, что он намного легче и может работать без графического интерфейса.

Вы можете делать изящные вещи, например получать статистическую разбивку трафика по общему размеру пакета:

Вы можете сделать что-то подобное с инструментами командной строки, такими как tcpdump или tshark, но этот инструмент управляется меню, и в нем гораздо проще ориентироваться. Если вам нравится интерактивная фильтрация и просмотр своего трафика, то IPTraf меняет правила игры.

4. Монит

Это один из самых универсальных и надежных инструментов мониторинга, которые вы можете использовать в Linux. Monit существует уже много лет и может быть настроен множеством способов для поддержки различных типов пороговых значений и предупреждений о производительности.

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

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

В Monit даже есть удобный легкий веб-интерфейс для демона, который с первого взгляда показывает, что происходит:

Независимо от того, управляете ли вы одним сервером или парком, Monit - один из самых простых, наиболее эффективных и экономичных (бесплатных!) Способов следить за состоянием вещей.

Заключение

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