Решил поставить Zabbix с используемой СУБД PostgreSQL на Debian 8. Время оказалось неудачное, т.к. в репах zabbix'а еще нет готовой версии для Debian 8, поэтому пришлось пройти весь путь настройки вручную.
Feature Zabbix installation with PostgreSQL database on Debian 8 Jessie
Весь процесс можно разделить на три этапа:
1. Настройка PostgreSQL
2. Настройка Apache для доступа в веб морду.
3. Настройка Zabbix
Все пакеты ставятся из стандартных репов Debian. На момент написания это:
Zabbix 2.2 - zabbix-server-pgsql (2.2.7+dfsg-2)
PostgreSQL 9.4 - postgresql-9.4 (9.4.3-0+deb8u1)
Ставится обычно:
aptitude install zabbix-server-pgsql zabbix-frontend-php
Эти пакеты ставят сам Zabbix, PostgreSQL, Apache и всю обвязку для его работы, но не настраивает их. Собственно, цель заметки - описание настройки PostgreSQL и Apache для запуска Zabbix.
PostgreSQL
Добавить в файл /etc/postgresql/9.4/main/pg_hba.conf
строку:
# TYPE DATABASE USER ADDRESS METHOD local zabbix zabbix trust
Именно в такой последовательности. Если будет ниже строки # "local" is for Unix domain socket connections only
, то права не вступят в силу.
Перезапустить postgre:
/etc/init.d/postgresql restart
На всякий случай забэкапить архивы с дампами и распаковать их:
mkdir /usr/share/zabbix-server-pgsql/gz cp /usr/share/zabbix-server-pgsql/*.gz /usr/share/zabbix-server-pgsql/gz gunzip /usr/share/zabbix-server-pgsql/*.gz
Создать пользователя zabbix, введя для него пароль, и одноименную базу:
su postgres createuser -d -S -R -P zabbix createdb -O zabbix zabbix
Залить дампы в базы (от пользователя postgres):
psql -U zabbix -f /usr/share/zabbix-server-pgsql/schema.sql zabbix psql -U zabbix -f /usr/share/zabbix-server-pgsql/images.sql zabbix psql -U zabbix -f /usr/share/zabbix-server-pgsql/data.sql zabbix
Если не развернуть дампы в базу, то из вебморды, на шаге коннекта к postgre, будет отдавать это ошибку:
The frontend does not match Zabbix database
Apache
Создать файл конфигурации для сайта zabbix:
mcedit /etc/apache2/conf-available/zabbix.conf
Заполнить этот файл следующим содержимым:
# Define /zabbix alias, this is the default <IfModule mod_alias.c> Alias /zabbix /usr/share/zabbix </IfModule> <Directory "/usr/share/zabbix"> Options FollowSymLinks AllowOverride None Order allow,deny Allow from all php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 16M php_value upload_max_filesize 2M php_value max_input_time 300 php_value date.timezone Asia/Novosibirsk </Directory> <Directory "/usr/share/zabbix/conf"> Order deny,allow Deny from all <files *.php> Order deny,allow Deny from all </files> </Directory> <Directory "/usr/share/zabbix/api"> Order deny,allow Deny from all <files *.php> Order deny,allow Deny from all </files> </Directory> <Directory "/usr/share/zabbix/include"> Order deny,allow Deny from all <files *.php> Order deny,allow Deny from all </files> </Directory> <Directory "/usr/share/zabbix/include/classes"> Order deny,allow Deny from all <files *.php> Order deny,allow Deny from all </files> </Directory>
Создать символическую ссылку этого файла и перезапустить apache:
ln -s /etc/apache2/conf-available/zabbix.conf /etc/apache2/conf-enabled/zabbix.conf /etc/init.d/apache2 restart
Дать права на каталог /etc/zabbix/
:
chmod 777 /etc/zabbix/
Иначе вебморда сругнется так:
Configuration file
"/etc/zabbix/zabbix.conf.php"
created: Fail
Zabbix
Добавить в файл /etc/default/zabbix-server
строку:
START=yes
Добавить в файл /etc/zabbix/zabbix_server.conf
строку:
DBPassword=PASSWORD
где PASSWORD - пароль на базу zabbix от пользователя zabbix, созданных на первом шаге.
Перезапустить zabbix:
/etc/init.d/zabbix-server restart
Теперь зайти на http://host/zabbix и протыкать "Next", указав учетные данные от базы, созданные на шаге настройки postgre.
Дефолтные логин:пароль для входа Admin:zabbix. Логин пишется с заглавной буквы.
Когда установка из вебморды завершилась, восстановить права на каталог /etc/zabbix/
chmod 755 /etc/zabbix/
Спасибо!!! Танцевал с бубном вокруг сервера,сначала скачал и устанавливал пакет dpkg -i zabbix-release_2.4-1+jessie_all.deb,не понравилось что прописываются репозитории opensuse и repo.zabbix и удалить их не получается.Устанавливал по этому ману,только без zabbix-frontend-php,frontend просто распаковал в /usr/share/zabbix и все завелось.