понедельник, 22 ноября 2010 г.

Cacti на Debian Ububntu. Установка

[Статья в процессе разработки]
Источник:
http://feyhoa.org.ua/archives/997


Из описания утилиты становится понятным, что основным предназначением Cacti является сбор и отображения различной информации о жизнедеятельности сетевого оборудования. Cacti – позволяет мониторить сервера (Linux, Windows, Unix и многие другие платформы), роутеры, свитчи, да и практически все оборудование поддерживающее snmp протокол. Сегодня мы подробно расскажем и покажем как установить и настроить Cacti.

[ad#ad-2]
Итак мы решились, с сегодняшнего дня запускаем централизованный мониторинг наших серверов. Для решения этой задачи выбрали решение – Cacti.
Для установки Cacti в Ubuntu Linux выполняем следующие действия:

root@fox:/home/vitaliy# apt-get install cacti
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Следующие пакеты устанавливались автоматически и больше не требуются:
libopenal1 libnm-glib-vpn1 mobile-broadband-provider-info libglew1.5 libpcsclite1 dnsmasq-base libalut0 libglc0
usb-modeswitch-data ppp usb-modeswitch wpasupplicant rss-glx esound-clients modemmanager
Для их удаления используйте 'apt-get autoremove'.
Будут установлены следующие дополнительные пакеты:
libdbi0 libphp-adodb librrd4 php5-snmp rrdtool
Предлагаемые пакеты:
php5-adodb librrds-perl
НОВЫЕ пакеты, которые будут установлены:
cacti libdbi0 libphp-adodb librrd4 php5-snmp rrdtool
обновлено 0, установлено 6 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 3.461 kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 10,3 MB.
Хотите продолжить [Д/н]? y
Получено:1 http://ftp.ua.debian.org/debian/ squeeze/main libdbi0 i386 0.8.2-3 [45,2 kB]
Получено:2 http://ftp.ua.debian.org/debian/ squeeze/main libphp-adodb all 5.10-1 [556 kB]
Получено:3 http://ftp.ua.debian.org/debian/ squeeze/main librrd4 i386 1.4.3-1 [307 kB]
Получено:4 http://ftp.ua.debian.org/debian/ squeeze/main php5-snmp i386 5.3.3-3 [10,2 kB]
Получено:5 http://ftp.ua.debian.org/debian/ squeeze/main rrdtool i386 1.4.3-1 [454 kB]
Получено:6 http://ftp.ua.debian.org/debian/ squeeze/main cacti all 0.8.7g-1 [2.088 kB]
Получено 3.461 kБ за 6с (524 kБ/c)
Предварительная настройка пакетов ...
Выбор ранее не выбранного пакета libdbi0.
(Чтение базы данных ... 147290 files and directories currently installed.)
Распаковывается пакет libdbi0 (из файла .../libdbi0_0.8.2-3_i386.deb)...
Выбор ранее не выбранного пакета libphp-adodb.
Распаковывается пакет libphp-adodb (из файла .../libphp-adodb_5.10-1_all.deb)...
Выбор ранее не выбранного пакета librrd4.
Распаковывается пакет librrd4 (из файла .../librrd4_1.4.3-1_i386.deb)...
Выбор ранее не выбранного пакета php5-snmp.
Распаковывается пакет php5-snmp (из файла .../php5-snmp_5.3.3-3_i386.deb)...
Выбор ранее не выбранного пакета rrdtool.
Распаковывается пакет rrdtool (из файла .../rrdtool_1.4.3-1_i386.deb)...
Выбор ранее не выбранного пакета cacti.
Распаковывается пакет cacti (из файла .../cacti_0.8.7g-1_all.deb)...
Обрабатываются триггеры для libapache2-mod-php5 ...
Reloading web server config: apache2.
Обрабатываются триггеры для man-db ...
Настраивается пакет libdbi0 (0.8.2-3) ...
Настраивается пакет libphp-adodb (5.10-1) ...
Настраивается пакет librrd4 (1.4.3-1) ...
Настраивается пакет php5-snmp (5.3.3-3) ...
Настраивается пакет rrdtool (1.4.3-1) ...
Настраивается пакет cacti (0.8.7g-1) ...
dbconfig-common: writing config to /etc/dbconfig-common/cacti.conf

Creating config file /etc/dbconfig-common/cacti.conf with new version

Creating config file /etc/cacti/debian.php with new version
granting access to database cacti for cacti@localhost: success.
verifying access for cacti@localhost: success.
creating database cacti: success.
verifying database cacti exists: success.
populating database via sql... done.
dbconfig-common: flushing administrative password

Creating config file /etc/cacti/apache.conf with new version
Reloading web server config: apache2.



В процессе установки нас поставят в известность об изменении пути к libphp-adodb, а так же попросят ответить на несколько вопросов.

суббота, 20 ноября 2010 г.

Nagios3 + Nagiosql на Debian lanny squeeze INSTALL

Источники:
http://habrahabr.ru/blogs/linux/88293/
http://adminletters.blogspot.com/2009/09/nagios3-nagiosql-debian-lenny.html


Свой сервер мониторинга с nagios и cacti

Под катом советы по быстрому развертыванию «системы мониторинга» посредством nagios и cacti.

Предположим имеется девственно чистый сервер с предустановленным debian lenny. А нам предстоит сделать из этой бесформенной массы луна-парк с блэк джеком и девочками. Хм, хотя нет, наверное все таки нужно сделать сервер мониторинга с nagios и cacti.

Прежде всего необходимо поставить ssh сервер и mc (midnight commander), думаю комментировать зачем и почему мы это делаем излишне

debian:~# apt-get update
debian:~# apt-get install openssh-server
debian:~# apt-get install mc


Далее ставим nagios. Ставить будем «кошерным» способом, посредством apt. Это избавит нас от проблемы зависимостей, многочасового лазания в дебрях конфигурационных файлов и сократит время разворачивания системы.
И так, набираем магическую команду

debian:~# apt-get install nagios3

и, вуаля у нас уже установлен нагиос в минимальной конфигурации. Что же произошло? Менеджер пакетов просмотрел зависимости для пакета nagios3. Кроме базового пакета были установлены плагины к нагиосу, апач и много-много нужных библиотек.
Так же были созданы минимальные конфиги для нагиоса и апача. В теории все должно «работать из коробки», но как обычно приходиться пользоваться напильником.

Как мы можем увидеть, в конфиге /etc/nagios3/nagios.conf указано, что для доступа к nagios используется обыкновенная http авторизация, но к сожалению файла авторизации нет.
Дабы исправить сей скорбный факт создадим его командой

debian:~# htpasswd -c /etc/nagios3/htpasswd.users nagiosadmin
New password:
Re-type new password:
Adding password for user nagiosadmin


Cоздает нового пользователя, если без ключа -с то доовляет в список позде можно изменить доступ к сайту в файле /etc/nagios3/cgi.cfg в это файле хроняться права на доступ к нагиос.
Прошу обратить внимание, что пользователь должен быть именно nagiosadmin, а не Вася, Люся или Петручио.
Это связано, с тем что по умолчанию в nagios.cfg пользователь c доступом ко всем функциям — nagiosadmin.
После можно добавить пользователя и указать для него доступ с правами только чтение в файле /etc/nagios3/cgi.cfg отметив нового пользователя в соответсвующий строках

Включаем обработку внешних команд, вещь нужная, например для «Re-schedule the next check of this host».

debian:~# mcedit /etc/nagios3/nagios.cfg

check_external_commands=1

Изменяем пермишенсы и владельцев

debian:~# chown -R nagios.www-data /var/lib/nagios3
debian:~# chmod -R 770 /var/lib/nagios3/spool
debian:~# chmod 644 /etc/nagios3/resource.cfg


Установка nagios3 завершена. Мы можем зайти в интерфейс nagios3 набрав в Вашем любимом браузере:
http ://youre_server_ip/nagios3

NagiosQL

Теперь с чистой совестью приступим к его конфигурации. Вы можете с головой погрузиться в конфигурационные файлы и часами их править, получая неописуемое удовлетворение множественные оргазмы от данного процесса. Либо совершить акт настройки нагиоса посредством веб интерфейса. Например, применив NagiosQL.
Дабы соблюсти «кошерность» установки NagiosQL, добавим репозиторий с присобранным NagiosQL в список репозиториев.
Список репозиториев находиться в /etc/apt/sources.list:

deb http:// debian.swobspace.net lenny main
deb-src http:// debian.swobspace.net lenny main


Дальше, что бы из репозитория debian.swobspace.net получить только NagiosQL создадим файл /etc/apt/preferences

debian:~# nano /etc/apt/preferences

и в нем укажем, наши предпочтения по установке пакетов

Package: *
Pin: origin debian.swobspace.net
Pin-Priority: 200


Package: nagiosql
Pin: origin debian.swobspace.net
Pin-Priority: 600


Получаем и импортируем ключи для репозитория debian.swobspace.net
debian:~# wget http:// www.swobspace.net/wob@swobspace.net.pub.asc -O- | apt-key add -

Обновляем список пакетов
debian:~# apt-get update

Устанавливаем NagiosQL
debian:~# apt-get install nagiosql

Именно здесь Мы целиком и полностью видим преимущество «кошерного» подхода в установке пакетов, в зависимостях оказались php, mysql, необходимые модули и библиотеки. Не надо ломать голову почему не работает какая то функция, или почему не генерируется график.
Во время установки вас спросит root пароль для доступа к базе данных mysql, обязательно запишите его на листочке.

Настройка
1.Активируем установщик NagiosQL
debian:~# touch /usr/share/nagiosql/htdocs/install/ENABLE_INSTALLER

2. Заходим http://youre_server_ip/nagiosql и в интуитивно понятном веб интерфейсе выполняем установку, именно здесь и потребуется тот клочок пергамента на котором мы неясными каракулями записали root пароль от mysql. Впроцессе установки будет созданна база данных (имя базы оставить по умолчанию) в mysql, нужно задать логин и пароль с которым nagioosql будет конектиться к базе, потом указать рутовый логин(root) и пароль к базе даныых что бы установщик nagiosql создал ту самую базу. Также нада указать админский логин и пароль для администрирования nagiosql через web-браузер.


3. После удачной установки деактивируем установщик NagiosQL
debian:~# rm -f /usr/share/nagiosql/htdocs/install/ENABLE_INSTALLER
для надежности можно удалить всю папку с установщиком
debian:~# rm -rf /usr/share/nagiosql/htdocs/install

4. Добавляем в /etc/nagios3/nagios.cfg строку.
cfg_dir=/etc/nagiosql/domains/localhost

5. Создаем папку /etc/nagios/import и копируем в нее все конфиги из /etc/nagios3/conf.d и /etc/nagios-plugins/. И импортируем их в NagiosQL.
cp /etc/nagios3/commands.cfg /etc/nagios3/import/
cp /etc/nagios3/conf.d/* /etc/nagios3/import/
cp /etc/nagios-plugins/config/* /etc/nagios3/import/

Импорт данных осуществляется в меню Tools => Data import //в браузере 127.0.0.1/nagiosql

7. Обнулим конфигурацию нагиоса, она будет перезаписана nagiosql

echo > /etc/nagios3/commands.cfg
cd /etc/nagios-plugins/config
ls -1 | awk '{system("echo > "$1);}'
cd /etc/nagios3/conf.d/
ls -1 | awk '{system("echo > "$1);}'


8. Зададим пароль для админа
htpasswd -c /etc/nagios3/htpasswd.users nagiosadmin

9. Перезапускаем нагиос
/etc/init.d/nagios3 restart

Если выдает ошибки:

Total Warnings: 0
Total Errors: 3

One or more problems was encountered while running the pre-flight check...

Check your configuration file(s) to ensure that they contain valid
directives and data defintions. If you are upgrading from a previous
version of Nagios, you should be aware that some variables/definitions
may have been removed or modified in this version. Make sure to read
the HTML documentation regarding the config files, as well as the
'Whats New' section to find out what has changed.

errors in config! ... failed!
failed!


в браузере 127.0.0.1/nagiosql в Tools Nagios Control выбирите Check configuration files: "Do it"
и выполните
/etc/init.d/nagios3 restart

потом Write monitoring data "Do it"
и выполните
/etc/init.d/nagios3 restart

потом "Write additional data" "Do it"
и выполните
/etc/init.d/nagios3 restart


##############
Если ошибка при выполнении команыды /etc/init.d/nagios3 restart


Restarting nagios3 monitoring daemon: nagios3

Nagios Core 3.2.1
Copyright (c) 2009-2010 Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 03-09-2010
License: GPL

Website: http://www.nagios.org
Reading configuration data...
Error in configuration file '/etc/nagios3/nagios.cfg' - Line 145 (Illegal value for check_external_commands)
Error processing main config file!



***> One or more problems was encountered while processing the config files...

Check your configuration file(s) to ensure that they contain valid
directives and data defintions. If you are upgrading from a previous
version of Nagios, you should be aware that some variables/definitions
may have been removed or modified in this version. Make sure to read
the HTML documentation regarding the config files, as well as the
'Whats New' section to find out what has changed.

errors in config! ... failed!
failed!


Вы не указали (см.вверху) обработку внешних команд.
Включаем обработку внешних команд, вещь нужная, например для «Re-schedule the next check of this host».
debian:~# mcedit /etc/nagios3/nagios.cfg
check_external_commands=1


Перезапускаем нагиос
/etc/init.d/nagios3 restart

для того, чтобы коммнады check_alive_fast и подобные появились в конфигурации хостов, надо поменять им тип с "misc" на "check"

теперь нагиос будет доступен по адресу
http://yourhost.com/nagios3
а админка к нему
http://yourhost.com/nagiosql

вторник, 22 июня 2010 г.