Collectd

Collectd — демон для Unix-подобных операционных систем, предназначенный для сбора, передачи и хранения данных о производительности компьютеров и сетевого оборудования. Собранные данные помогают системным администраторам поддерживать общее представление о доступных ресурсах и обнаруживать текущие или потенциальные узкие места.

Первая версия демона была написана в 2005 году Флорианом Фёрстером как свободный проект с открытым исходным кодом. Позднее другие разработчики внесли множество улучшений и расширений, ставших частью проекта[2]. Большинство файлов исходного кода распространяются под лицензией GNU GPL, версия 2 (GPLv2); оставшиеся файлы размещены под другими открытыми лицензиями[3].

Что важно знать
Collectd
Тип система сбора статистики и мониторинга
Автор Флориан Фёрстер
Разработчик сообщество Collectd
Написана на C
Интерфейс командная строка, плагины
Операционные системы Unix-подобные, Linux, FreeBSD, OpenWrt
Последняя версия
Репозиторий github.com/collectd/coll…
Лицензия GPLv2
Сайт collectd.org

Возможности

Collectd реализует модульную архитектуру: сам демон обеспечивает лишь инфраструктуру для фильтрации и передачи данных, а также содержит вспомогательные функции, благодаря чему потребляет минимум системных ресурсов и может работать даже на встраиваемых устройствах, например, с OpenWrt. Сбор и хранение данных осуществляется с помощью плагинов, выполняемых в виде разделяемых библиотек[4]. Таким образом, специфичный для ОС код не попадает в основной демон. Плагины могут иметь собственные зависимости, такие как библиотеки программного обеспечения или аппаратные особенности.

Плагины для сбора данных (называемые в документации collectd «читателями») делятся на три типа:

  • Плагины операционной системы собирают сведения о загрузке процессора, использовании памяти, числе пользователей и др. Эти плагины, как правило, требуют портирования под каждую ОС и не всегда доступны для всех платформ.
  • Плагины приложений собирают сведения о производительности конкретных программ, как локально, так и удалённо, к примеру, для Apache HTTP Server. Обычно такие плагины используют дополнительные библиотеки, но зачастую независимы от ОС.
  • Универсальные плагины реализуют базовые функции, которые пользователь может применять для различных задач — например, опрос сетевого оборудования через SNMP или запуск пользовательских скриптов и программ.

Так называемые «плагины для записи» позволяют сохранять собранные данные на диск в форматах RRD или CSV, либо передавать их по сети на удалённый экземпляр демона.

Сетевая работа

В составе исходных текстов collectd присутствует так называемый сетевой плагин, предназначенный для пересылки и получения данных между экземплярами демона. В типичной сетевой конфигурации collectd запускается на каждой отслеживаемой машине-клиенте с настроенным сетевым плагином для отправки данных на один или несколько сетевых адресов. На одном или нескольких серверах запускается тот же collectd, но с параметрами для приёма данных сетевым плагином. Для их хранения на серверах часто используется плагин RRDtool[5].

Сетевой плагин использует бинарный сетевой протокол поверх UDP. Поддерживаются как IPv4, так и IPv6 на сетевом уровне. Возможен как одноадресный (point-to-point), так и групповой (point-to-group) режимы передачи данных. Поддержка аутентификации и шифрования была добавлена с версии 4.7.0 (май 2009).

Примечания

Ссылки