Особенность установки Zabbix в связке с PostgreSQL на Debian 8 Jessie

Автор: Admin | 08.07.2015
1 комментарий | 8 076 views

Решил поставить 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/

 

Комментарии к посту “Особенность установки Zabbix в связке с PostgreSQL на Debian 8 Jessie

  1. Владимир

    Спасибо!!! Танцевал с бубном вокруг сервера,сначала скачал и устанавливал пакет dpkg -i zabbix-release_2.4-1+jessie_all.deb,не понравилось что прописываются репозитории opensuse и repo.zabbix и удалить их не получается.Устанавливал по этому ману,только без zabbix-frontend-php,frontend просто распаковал в /usr/share/zabbix и все завелось.

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

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