Установка Zabbix из исходников в FreeBSD

Установка Zabbix из исходников в FreeBSD

ZABBIX — свободная система для мониторинга сети и отслеживания статусов разнообразных сервисов компьютерной сети, серверов и сетевого оборудования, написанная Алексеем Владышевым на C (сервер), PHP (веб-интерфейс), Java (Java gateway).

Можно выделить 2 очень хороших сервиса для мониторинга:
Nagios
Zabbix

Что можно сказать по поводу Nagios.

Достоинства Nagios:
1. Все настройки сохраняются в файлы конфигур;
2. Мониторинг осуществляется с помощью плагинов;
3. Плагины в основе архитектуры.

Чем хорош Nagios:
1. Простота написания конфигураций файлов. С легкостью конфигурируются с использованием многих программ;
2. Можно писать комментарии с датой ( что очень нужно и полезно);
3. Есть много плагинов на все случаи жизни, даже от разных программистов.

Что можно сказать по поводу Zabbix.

Достоинства Zabbix:
1. Все конфиги а так же вся история сохранены в БД;
2. Мониториться все через постоянно запущенного сервис;

Чем хорош Zabbix:

1. Конфигурируеться через хороший интерфейс и с использованием API;
2. Все настройки сохранены в БД и изменения применяются мгновенно;
3. Встроенные богатые средства визуализации;
4. Поддержка JMX и мониторинг с сохранениями в логи в базовой поставке;
5. Крутая поддержка юзерских параметров(порогов, оповещений, реакций);
6. Много уже готовых решений в Zabbix.

Недостатки я не буду рассматривать. Могу отметить то что эти 2 мониторинга очень крутые, выбирать вам что вы будите юзать. Я рассмотрю именно заббекс, позже думаю установлю и нагиОС ( чтобы самому сделать сравнения). И так начнем Установка Zabbix из исходников в FreeBSD:
Создадим юзера для того чтобы из под него можно было запустить заббикс и добавим его в группу:

# pw groupadd zabbix
# pw useradd zabbix -c "zabbix Server" -d /dev/null -g zabbix -s /sbin/nologin

После этого необходимо создать БД, сделать можно несколькими способами:

shell> mysql -u<uname> -p<pass>
              mysql -u root -p captain  
mysql> create database zabbix character set utf8;
mysql> quit;
shell> mysql -u<uname> -p<pass> zabbix < database/mysql/schema.sql
mysqldump -u zabbix -p zabbix < schema.sql
# остановитесь здесь, если вы создаете базу данных для Zabbix прокси
shell> mysql -u<uname> -p<pass> zabbix < database/mysql/images.sql
shell> mysql -u<uname> -p<pass> zabbix < database/mysql/data.sql

Кто не понял что написано выше, опишу более подробно:

# mysql -u root -p
-> CREATE DATABASE zabbix;
-> GRANT ALL ON zabbix.* TO zab IDENTIFIED BY 'PASS';
-> FLUSH PRIVILEGES;
-> quit;
# cat /usr/local/src/zabbix/zabbix-2.2.2/database/mysql/schema.sql | mysql -u root -p zabbix
# cat /usr/local/src/zabbix/zabbix-2.2.2/database/mysql/images.sql | mysql -u root -p zabbix
# cat /usr/local/src/zabbix/zabbix-2.2.2/database/mysql/data.sql | mysql -u root -p zabbix

Если кому то И это не понятно, то поставьте и используйте phpmyadmin ( мне удобней так!), по этому Вы выбираете как это лучше вам сделать и выполняете.

Заходим на офф сайт и качаем последнюю версию исходников, я буду использовать Zabbix Sources  2.2.2:

# cd /usr/local/src/ && mkdir zabbix && cd zabbix
# wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.2.2/zabbix-2.2.2.tar.gz/download
# mv download zabbix-2.2.2.tar.gz && tar zxf zabbix-2.2.2.tar.gz && cd zabbix-2.2.2

Для просмотра всех доступных опция конфигурирования, выполните в папке извлеченных исходных кодов Zabbix:
# ./configure —help

Для конфигурирования исходников в Zabbix сервера и агента, можете заюзать:
# ./configure —enable-server —enable-agent —with-mysql —enable-ipv6 —with-net-snmp —with-libcurl

Для конфигура исходников в Zabbix сервера (с PostgreSQL и т.д.), вы сможете юзнуть:
# ./configure —enable-server —with-postgresql —with-net-snmp

Для конфигура исходников в Zabbix прокси (с SQLite и т.д.), используйте:
# ./configure —prefix=/usr —enable-proxy —with-net-snmp —with-sqlite3 —with-ssh2

Я буду использовать что то типа этого:

 ./configure --prefix=/usr/local/zabbix22 --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl

И соберем все это добро)) выполнив :

# make install && make clean

Просмотреть и отредактировать файлы конфигов:

1. Отредактируем файл конфигура Zabbix агента, для этого:
# ee/usr/local/etc/zabbix_agentd.conf

Если вы конфигурили по моему, то этот файлик будет лежать(дальше описываю как делал я и какие файлы правил):

# ee /usr/local/zabbix22/etc/zabbix_agentd.conf

В этом конфиг файле необходимо сконфигурить для каждого хоста на котором установлен zabbix_agentd (вы должны указать IP адрес Zabbix сервера. Подключения с остальных хостов будут отклонены).

2.Отредактируем файл конфига Zabbix сервера:
# ee /usr/local/etc/zabbix_server.conf

В моем случае:

# ee /usr/local/etc/zabbix/zabbix_server.conf
# /usr/local/zabbix22/etc/zabbix_server.conf

Ищем и расскоментируем все эти строки:

ListenPort=10051 
HousekeepingFrequency=2 
SenderFrequency=60
DebugLevel=3 
Timeout=5
UnreachablePeriod=90
PidFile=/var/tmp/zabbix_server.pid 
LogFile=/var/log/zabbix/zabbix_server.log 
LogFileSize=1
AlertScriptsPath=/home/zabbix/bin/ 
FpingLocation=/usr/local/sbin/fping 
DBHost=localhost 
DBName=zabbix
DBUser=root
DBPassword=captain
DBSocket=/tmp/mysql.sock

Все! Больше нечего я не изменял в конфиге! Выложу готовый конфиг попозже, как настрою все себе=)

Я не знаю где этот конфиг должен лежать, прочитал что /usr/local/etc,  но для уверенности еще отредактировал точно так же в:

# ee /usr/local/zabbix22/etc/zabbix_server.conf

Если у вас установлен Zabbix прокси, то подредактируйте файл конфигурации  Zabbix прокси :
# ee /usr/local/etc/zabbix_proxy.conf

У меня это :

# ee /usr/local/zabbix22/etc/zabbix_proxy.conf

После того как настроили ( поправили) конфиги добавим А-запись для узла в нужную зону вашего DNS-сервере:

# less /etc/namedb/slave/domain.local | grep monitoring

monitoring IN A 192.168.0.1

Добавляем сервис в автозагрузку:

# echo 'zabbix_server_enable=YES' >> /etc/rc.conf

Создадим файлик для лога:

# touch /var/log/zabbix_agentd.log
# chown zabbix:zabbix /var/log/zabbix_agentd.log

Запуск демонов:

Запустить zabbix_server на стороне сервера:

# /usr/local/zabbix22/sbin/zabbix_server

Запустите zabbix_agentd на всех наблюдаемых машинах:

# /usr/local/zabbix22/sbin/zabbix_agentd

Если Вы устанавливали Zabbix прокси, то стартаните тоже zabbix_proxy:

# /usr/local/zabbix22/sbin/zabbix_proxy

Проверочка:

# sockstat | grep zabbix

zabbix-grep

Установка Zabbix из исходников в FreeBSD ЗАВЕРШЕНА! Сейчас установим веб интерфейс ( удобный способ работать с заббиксом):
Все нужные для этого компоненты находятся в папке с сорцами у меня они лежат в /usr/local/src/zabbix/zabbix-2.2.2/frontends/php/ но перед тем как скопировать их, я создам папку и скопирую их туда:

# mkdir /home/captain/www/zabbix
# cp -a . /home/captain/www/zabbix

Теперь можно приступать к установке для этого перейдите по пути :
http://your_IP/zabbix/setup.php а, у меня:
ПС: если не помните какой ИП, то смотрите какой ИП указывали в апаче в конфиге httpd.conf в директиве: ServerName.
http://192.168.244.133/zabbix/setup.php

Увидите следующее:

zabbix-2.2 установка из исходников для freeBSD

zabbix-2.2 установка из исходников для freeBSD

После чего жмем «Next». После чего увидите требованию к сервису и если у Вас все хорошо, увидите следующее:

zabbix-2.2-install

zabbix-2.2-install

А если требование не выполнены, то увидите нечто такое как было у меня:

zabbix-2.2-install-step2

zabbix-2.2-install-step2

Я нашел требования которые должны удовлетворить наш сервис, посмотреть и ознакомится можно на этой картинке:

zabbix-2.2-install-step2(3)

zabbix-2.2-install-step2(3)

Если все это выполнили и работает, жмем «Next» и увидим следующий скрин, на нем нужно ввести БД (которую уже создали и юзера с паролем):

zabbix-2.2-install-step3

zabbix-2.2-install-step3

После того как ввели данные жмем как всегда на «некст» и видим следующий скрин на котором Вы должны ввести некоторую информацию( Host, Port, Name):

zabbix-2.2-install-step4

zabbix-2.2-install-step4

Нажимаем «Next» и видим пред завершение нашей настройки «Посмотрим результаты настроек»:

zabbix-2.2-install-step5

zabbix-2.2-install-step5

После чего качаем файл конфигурации и кидаем его в папку conf/ — как видно по скрину:

zabbix-2.2-install-step6

zabbix-2.2-install-step6

На этом наша настройка завершена — поглядим последний скриншот:

zabbix-2.2-install-step7

zabbix-2.2-install-step7

 

Завершающим этапом будет ввод логина и пароля на веб интерфейс zabbix. По умолчанию юзер- Admin, а его пасс- zabbix.

zabbix-2.2-install-step8

zabbix-2.2-install-step8

Веб-интерфейс Zabbix готов! Установка Zabbix из исходников в FreeBSD завершена, по этому если есть вопросы и пожелания пишите мне в комментарии, я отвечу по мере возможности и смогу помочь. Спасибо.

 

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.