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).
Примечания
Ссылки
- https://collectd.org — официальный сайт (на английском)
- http://collectd.org/wiki/index.php/Table_of_Plugins — список доступных плагинов (на английском)


