Существует несколько сторонних инструментов, которые могут добавить расширенные возможности для мониторинга трафика CentOS. В этом руководстве мы сосредоточимся на тех, которые упакованы в основные репозитории CentOS и репозиторий Fedora EPEL.
Всегда будут ситуации, когда у Администратора (по той или иной причине) остаются только инструменты в основных репозиториях CentOS. Большинство обсуждаемых утилит предназначены для использования администратором с оболочкой физического доступа. При мониторинге трафика с помощью доступного веб-интерфейса лучше всего использовать сторонние утилиты, такие как ntop-ng или Nagios (вместо воссоздания таких возможностей с нуля).
Для дальнейшего изучения обоих настраиваемых решений для веб-интерфейса, ниже приведены несколько ссылок для начала исследований.
Мониторинг трафика для сценариев LAN / WAN
Nagios
Nagios существует уже долгое время, поэтому он испытан и опробован. В какой-то момент все это было бесплатно и с открытым исходным кодом, но с тех пор оно перешло в решение Enterprise с платными моделями лицензирования, чтобы удовлетворить потребность в совершенствовании Enterprise. Следовательно, прежде чем планировать какие-либо развертывания с помощью Nagios, убедитесь, что лицензионные версии с открытым исходным кодом будут соответствовать вашим потребностям или планируйте расходы с учетом корпоративного бюджета.
Большинство программного обеспечения для мониторинга трафика Nagios с открытым исходным кодом можно найти по адресу: https://www.nagios.org
Для краткой истории Nagious, вот официальная страница истории Nagios: https://www.nagios.org/about/history/
ntopng
Еще один замечательный инструмент, позволяющий контролировать пропускную способность и трафик через веб-интерфейс, называется ntopng . ntopng похож на утилиту Unix ntop и может собирать данные для всей локальной или глобальной сети. Предоставление веб-интерфейса для администрирования, настройки и создания диаграмм упрощает использование для всех ИТ-отделов.
Как и Nagious, ntopng предлагает как открытые, так и платные корпоративные версии. Для получения дополнительной информации о ntopng , пожалуйста, посетите веб-сайт: http://www.ntop.org/
Установите Fedora EPEL Repository ─ Дополнительные пакеты для Enterprise Linux
Чтобы получить доступ к некоторым необходимым инструментам для мониторинга трафика, нам необходимо настроить нашу систему CentOS для использования репозитория EPEL.
Репозиторий EPEL официально не поддерживается и не поддерживается CentOS. Тем не менее, группа добровольцев Fedora Core поддерживает его для работы с пакетами, обычно используемыми профессионалами Enterprise Linux, не входящими ни в CentOS, ни в Fedora Core, ни в Red Hat Linux Enterprise.
Осторожно —
Помните, что репозиторий EPEL не является официальным для CentOS и может нарушать совместимость и функциональность на производственных серверах с общими зависимостями. Учитывая это, рекомендуется всегда тестировать на непроизводственном сервере, на котором выполняются те же сервисы, что и на производстве, перед развертыванием на критической системе.
Действительно, самое большое преимущество использования репозитория EHEL перед любым другим сторонним репозиторием с CentOS заключается в том, что мы можем быть уверены, что двоичные файлы не испорчены. Рекомендуется не использовать репозитории из ненадежного источника.
Учитывая все вышесказанное, официальный репозиторий EPEL настолько распространен в CentOS, что его легко установить через YUM.
[root@CentOS rdc]# yum -y install epel-release Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: repo1.dal.innoscale.net * extras: repo1.dal.innoscale.net * updates: mirror.hmc.edu Resolving Dependencies --> Running transaction check ---> Package epel-release.noarch 0:7-9 will be installed --> Finished Dependency Resolution Dependencies Resolved --{ condensed output }--
После установки репозитория EPEL мы захотим обновить его.
[root@CentOS rdc]# yum repolist Loaded plugins: fastestmirror, langpacks epel/x86_64/metalink | 11 kB 00:00:00 epel | 4.3 kB 00:00:00 (1/3): epel/x86_64/group_gz | 170 kB 00:00:00 (2/3): epel/x86_64/updateinfo | 753 kB 00:00:01 (3/3): epel/x86_64/primary_db --{ condensed output }--
На этом этапе наш EPEL-репозиторий должен быть настроен и готов к использованию. Начнем с установки nload для мониторинга пропускной способности интерфейса.
Инструменты, на которых мы сосредоточимся в этом уроке:
- nload
- NTOP
- ifstst
- iftop
- vnstat
- чистые свиньи
- Wireshark
- TCP Dump
- Трассировка
Все они являются стандартными для мониторинга трафика в Linux Enterprises. Использование каждого диапазона от простого до продвинутого, поэтому мы лишь кратко обсудим такие инструменты, как Wireshark и TCP Dump.
Установите и используйте nload
С нашими репозиториями EPEL, установленными и настроенными в CentOS, мы теперь сможем установить и использовать nload . Эта утилита предназначена для составления графика пропускной способности каждого интерфейса в режиме реального времени.
Как и большинство других базовых установок, nload устанавливается через менеджер пакетов YUM.
[root@CentOS rdc]# yum -y install nload Resolving Dependencies --> Running transaction check ---> Package nload.x86_64 0:0.7.4-4.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved =============================================================================== =============================================================================== Package Arch Version Repository Size =============================================================================== =============================================================================== Installing: nload x86_64 0.7.4-4.el7 epel 70 k Transaction Summary =============================================================================== =============================================================================== Install 1 Package Total download size: 70 k Installed size: 176 k Downloading packages: --{ condensed output }--
Теперь у нас установлен nload , и использовать его довольно просто.
[root@CentOS rdc]# nload enp0s5
nload будет контролировать указанный интерфейс. В этом случае enp0s5 интерфейс Ethernet в режиме реального времени от терминала для загрузки сетевого трафика и использования полной полосы пропускания.
Как видно, nload будет отображать как входящие, так и исходящие данные из указанного интерфейса, наряду с предоставлением физического представления потока данных с помощью хеш-меток «#».
Изображенный скриншот представляет собой простую веб-страницу, загружаемую некоторым фоновым трафиком демона.
Общие параметры командной строки для nload —
команда | действие |
---|---|
-a | Временной период |
-t | Интервал обновления времени в миллисекундах, по умолчанию 500 |
-u | Устанавливает отображение измерения трафика h |
-U | Устанавливает единицы измерения общего входящего / исходящего трафика те же параметры, что и -u |
Стандартный синтаксис для nload —
nload [options] <interface>
Если интерфейс не указан, nload автоматически захватит первый интерфейс Ethernet. Давайте попробуем измерить общий объем данных в мегабайтах и текущие скорости передачи данных в мегабитах.
[root@CentOS rdc]# nload -U M -u m
Данные, поступающие в / из текущего интерфейса, измеряются в мегабитах в секунду, и каждая строка «Ttl», представляющая общее количество данных, вводимых / выводимых, отображается в мегабайтах.
nload полезен для администратора, чтобы увидеть, сколько данных прошло через интерфейс и сколько данных в настоящее время поступает / выходит из указанного интерфейса.
Чтобы увидеть другие интерфейсы без закрытия nload, просто используйте клавиши со стрелками влево / вправо. Это будет циклически перебирать все доступные интерфейсы в системе.
Можно контролировать несколько интерфейсов одновременно с помощью ключа -m —
[root@CentOS rdc]# nload -u K -U M -m lo -m enp0s5
загрузка мониторинга двух интерфейсов одновременно (lo и enp0s5) —