Книжная ученость — украшение, а не фундамент (М. Монтень).

Мониторинг производительности Linux с Grafana

FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...

Статья опубликована: 27 октября 2017

Мониторинг производительности Linux с Grafana
Мы потратили немного времени, настраивая Linux (в нашем случае, CentOS) в качестве домашнего маршрутизатора из – за фрустрации с домашними маршрутизаторами, доступными на рынке. Это было и хорошее упражнение и немного ностальгии от наших ранних дней с Linux. После того, как мы закончили знакомство с основами настройки, мы хотели найти способ для отслеживания различных статистических данных, таких как сетевой трафик, использование дискового пространства, и т. д. Почтенные Cacti, конечно, вариант, но это чувство немного наследие в наши дни. Мы предпочитаем использовать более новый инструмент с более современным видом. Это то, что привело нас к Grafana. Это основное пошаговое руководство для того, как мы установили его. Это базовая установка, которая включает в себя collectd, InfluxDB, и Grafana на том же хосте.

Мониторинг производительности Linux с Grafana

Collectd

Что, вы думали, что мы сразу запустим Grafana? Нам нужны данные, чтобы собрать первый, и самый лучший способ сделать это на CentOS, через collectd.

Самый простой способ получить collectd на CentOS, это через репозиторий Epel. Если вы новичок в CentOS или не знакомы с Fedora EPEL repo, эта команда все, что нужно для начала работы :

 

Теперь, когда EPEL repo включен, достаточно легко установить collectd таким же образом:

 

Есть другие плагины collectd доступные в Epel, но основой достаточно для наших целей. Мы хотели бы призвать вас исследовать доступные плагины, если базовый модуль не отвечает вашим потребностям.

Теперь, когда установлен collectd, нам нужно настроить его для отправки данных. Collectd генерирует статистику, но мы должны установить его где-нибудь, чтобы Grafana мог использовать его.

В /etc/collectd.conf есть несколько пунктов, которые нам нужно настроить. В глобальной секции, раскомментируйте строки для Hostname, BaseDir, PIDFile, PluginDir, и TypesDB. Вам нужно изменить Hostname, но по умолчанию должно быть хорошо для всех остальных. Это должно выглядеть примерно так:

 

Теперь, когда мы имеем основную информацию приложения, нам нужно включить плагин, которые мы хотим использовать. Так, например, у нас есть syslog, cpu, disk, interface, load, memory, и network, раскомментируйте их. Их значения по умолчанию хороши для всего, кроме сети. Сетевой модуль используется для передачи данных нашему сборщику данных, который в данном случае является InfluxDB. Сетевой плагин нужно будет указывать на ваш InfluxDB сервер. Потому что мы делаем все локально в этом примере, мы указываем на localhost. Он должен выглядеть следующим образом:

 

InfluxDB

Теперь, когда мы закончили с collectd, мы должны настроить InfluxDB, чтобы он тянул в collectd данные генерации. Поскольку InfluxDB не в Epel, мы должны вытащить его из своего хранилища. Команда ниже позволяет легко:

 

Как только это будет сделано, установите пакет с yum install influxdb, теперь она готова к настройке. Есть еще несколько деталей, которые мы должны изменить в конфигурационном файле /etc/influxdb/influxdb.conf.

В разделе [HTTP] вашего /etc/influxdb/influxdb.conf, установите enabled = true and bind-address = “:8096”. Он должен выглядеть следующим образом:

 

Затем перейдите в раздел [[collectd]] и настройте его следующим образом:

 

На данный момент, мы можем идти вперед и запустить обе службычтобы убедиться, что они работают должным образом. Для начала включим collectd и убедимся, что он отправляет данные. Как и в других сервисах, для этого мы будем использовать system. В приведенном ниже примере вы увидите команды, используемые и выходные данные запущенного демона collectd.

 

Теперь, когда collectd работает, запустите InfluxDB и убедитесь, что он может собрать данные из collectd.

 

Как мы можем видеть в выводе выше, служба работает, и данные собираются. Отсюда, единственное, что осталось сделать,  это представить его через Grafana.

Grafana

Чтобы установить Grafana, мы создадим еще один репозиторий, как мы это делали с InfluxDB. К сожалению, люди Grafana не держат версии релиз отдельно в repo, так это выглядит, как будто мы с помощью EL6 repo, даже если мы делаем эту работу на EL7.

 

Теперь, когда хранилище находится на месте и включено, мы можем установить Grafana, так же, как мы это делали с другими: yum install grafana. Как только это будет сделано, мы можем начать работать над конфигурацией. Для этого урока мы только собираемся установить имя пользователя и пароль администратора, потому что мы делаем это для учебника и одного экземпляра пользователя. Я бы абсолютно рекомендую вам прочитать документы, если вы хотите, чтобы начать делать немного больше с Grafana.

Для выполнения этого достаточно базовую конфигурацию, просто раскомментировать линии admin_user и admin_password в разделе [security] в файле /etc/grafana/grafana.ini и установить собственные значения. В этом случае мы используем admin/admin, потому что это то, что вы делаете в примерах, не так ли?

 

Мониторинг производительности Linux с GrafanaТеперь вы можете начать Grafana с systemctl start grafana-server и настроить его через веб – интерфейс. После того, как вы войти в первый раз, вам будет предложено настроить несколько вещей, в том числе источник данных и приборную панель. Потому что мы делаем все это на локальном хосте, вы сможете обмануть и использовать настройки источника данных в скриншоте. Не волнуйтесь, мы почти там, и там только немного осталось сделать.

Если у вас есть настроенный источник данных, вам будет предложено создать свою первую панель. Хотя можно, конечно, сделать это, немного пугающим для первого запуска с Grafana. Простым решением этой проблемы является импорт одного из шаблонов на сайте Grafana. Мы использовали https://grafana.com/dashboards/554. Он предоставляет хорошую группу метрик и графиков в качестве основы для использования и построения.

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


Читайте также

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close