Мониторинг сервера FreeBSD: RRDtool + collectd

На новый сервер ставил систему мониторинга. Раньше я везде ставил munin, но сей час в портах munin 1.4.6 а плагины от munin 1.4.5, и графики не строятся. Начал искать альтернативу. В процессе изучения вопроса, наткнулся на связку RRDtool + collectd . RRDtool уже стоял, так как c ним работал munin, но я решил его переустановить.

cd /usr/ports/databases/rrdtool
make config

выбираю следуещее:

make install clean


Пошла устанеовка.
В конце установки следующее:

############################################################################
# See /usr/local/share/examples/rrdtool for some demonstration code #
############################################################################
===> Compressing manual pages for rrdtool-1.4.5
===> Running ldconfig
/sbin/ldconfig -m /usr/local/lib
===> Registering installation for rrdtool-1.4.5
===> SECURITY REPORT:
This port has installed the following files which may act as network
servers and may therefore pose a remote security risk to the system.
/usr/local/bin/rrdcached

This port has installed the following startup scripts which may cause
these network services to be started at boot time.
/usr/local/etc/rc.d/rrdcached

If there are vulnerabilities in these programs there may be a security
risk to the system. FreeBSD makes no guarantee about the security of
ports included in the Ports Collection. Please type ‘make deinstall’
to deinstall the port if this is a concern.

For more information, and contact details about the security
status of this software, see the following webpage:

http://www.rrdtool.org/

===> Cleaning for rrdtool-1.4.5

Для сбора статистики решил использовать collectd. Ставим:

cd /usr/ports/net-mgmt/collectd
make config

make install clean

В etc/rc.conf для автозапуска дописываем:

collectd_enable=»YES»

Ну и запускаем:

#/usr/local/etc/rc.d/collectd start
Starting collectd.
#

После запуска collectd в /var/lib/collectd/hostname.local
собирается статистика. «hostname.local» – это название будет у вас другим. Зависит от имени машины. В этой папке будут файлы вида cpu.rrd и т.п.
Создаем директорию для веб-сервера (у меня apache, через nginx пускать лень)

mkdir /usr/local/www/collectd

Создаем alias или виртуалхост для apache.
Еще прийдется отредактировать скрипт
cat /mnt/mon.sh . Он будет генерировать графики. Содержимое своего скрипта я выложу немного позже.

В /usr/local/www/collectd создаем файл index.php:

touch index.php

Добавляем задание в крон:
ee /etc/crontab

*/1 * * * * root /mnt/mon.sh > /dev/null 2>&1

Перезапустим cron:

killall -9 cron

Перезапускаем apache:

apachectl graceful

И смотрим графики:
hostname.local/collectd

У меня пока так.

http://rg74.ru/freebsd/monitoring-servera-rrdtool-collectd.html

Обновлено: 12.03.2015