apt-get install -y collectd
Открываем конфиг:
vi /etc/collectd/collectd.conf
Стандартно ведется мониторинг следующих параметров: батарея, процессор, диск, энтропия, сеть, irq, load, memory, processes, swap, users. Дополнительные датчики Вы можете найти по адресу: http://collectd.org/wiki/index.php/Table_of_Plugins При этом метрики отписываются в RRD файлы (папка с ними здесь: /var/lib/collectd/rrd), а логи пишутся в SysLog. Такой расклад дел я считаю полностью оптимальным :)
Я предлагаю отключить все, кроме мониторинга cpu, load и memory (по соображениям снижения нагрузки на систему от мониторинга), поэтому комментируем диезом (#) все остальные строки LoadPlugin (кроме syslog и rrdtool, разумеется).
Также удаляем файлы данных от уже ненужных плагинов:
rm /var/lib/collectd/rrd/domain.ru/* -rf
Применяем настройки:
/etc/init.d/collectd restart
Разработчики collectd многократно обращают внимание на то, что collectd только сохраняет данные, но никаким образом их не отрисовывает, для этого служат CGI скрипты (к слову, оба из них генерируют графики на лету и не требуют временных файлов и крон-задач, но с поправкой на нагрузку) /usr/share/doc/collectd/examples/collection.cgi и /usr/share/doc/collectd/examples/collection3, при этом Интернеты утверждают, что тот, что с 3кой - более продвинута версия скрипта без тройки :) Будем ставить более новый :)
Ставим его зависимости:
apt-get install librrds-perl libconfig-general-perl libhtml-parser-perl
Копируем файлы скрипта визуализации в папку Апача с поддержкой ExecCgi
cp -R /usr/share/doc/collectd/examples/collection3/ /var/www/cgi-bin
Теперь открываем URL: http://domain.ru/cgi-bin/collection3/bin/index.cgi и наслаждаемся результатом :) Либо же идем и юзаем альтернативы, например: http://auxesis.github.com/visage/ и вот (подробное описание VIsage) http://holmwood.id.au/~lindsay/2009/09/08/graphing-collectd-statistics-in-the-browser-with-visage/
Кроме генерации графиков на лету есть возможность генерировать графики вручную посредством скрипта: /usr/share/doc/collectd/examples/collectd2html.pl, который вызывается следующим образом:
cd
mkdir rrd
cd rrd
perl /usr/share/doc/collectd/examples/collectd2html.pl --data-dir=/var/lib/collectd/rrd/`hostname`/load
После этого будут сгенерированы папка и файл, содержащие html код и изображения с графиками за разные временные отрезки (load-1day.png load-1hour.png load-1month.png load-1week.png):
1.domain.ru.dir 1.domain.ru.html
А вот мануалы по написанию своих плагинов на Перле: http://collectd.org/wiki/index.php/Plugin:Perl и http://collectd.org/documentation/manpages/collectd-perl.5.shtml
источники: http://linuxpoison.blogspot.com/2010/01/collectd-linux-system-statistics.html и http://collectd.org/wiki/index.php/First_steps
Спасибо за статью, только пришлось еще libregexp-common-perl установить что бы заработало.
ReplyDeleteУ меня вроде и без него было ок, но все равно спасибо, при случае проверю :)
ReplyDeleteотличная статья. но вот только не могу понять почему некоторые плагины не начинают работать. типа apache или mysql
ReplyDelete