Содержание

Skip to end of metadata
Go to start of metadata

Так как же поставить zabbix на Смоленск 1.6?

Требования

Zabbix построен на современном веб-сервере Apache, ведущих СУБД, и на языке сценариев PHP. В состав комплекта ПО Zabbix входят сервер и WEB-интерфейс. Для работы WEB-интерфейса Zabbix требуется следующее программное обеспечение:


ПриложениеВерсияКомментарии
Apache1.3.12 или более поздняя
PHP5.4.0 или более поздняя
Расширения PHP:
gd2.0 или более поздняяРасширение PHP GD должен поддерживать формат PNG (--with-png-dir), JPEG (--with-jpeg-dir) изображения и FreeType 2 (--with-freetype-dir).
bcmath
php-bcmath (--enable-bcmath)
ctype
php-ctype (--enable-ctype)
libXML2.6.15 или более поздняяphp-xml или php5-dom, если поставляется как отдельный пакет от поставщика.
xmlreader
php-xmlreader, если поставляется как отдельный пакет от поставщика.
xmlwriter
php-xmlwriter, если поставляется как отдельный пакет от поставщика.
session
php-session, если поставляется как отдельный пакет от поставщика.
sockets
php-net-socket (--enable-sockets). Требуется для поддержки пользовательских скриптов.
mbstring
php-mbstring (--enable-mbstring)
gettext
php-gettext (--with-gettext). Требуется для работы переводов.
ldap
php-ldap. Требуется только, если в веб-интерфейсе используется LDAP аутентификация.
ibm_db2
Требуется, если используется IBM DB2 в качестве базы для Zabbix.
mysqli
Требуется, если используется MySQL в качестве базы для Zabbix.
oci8
Требуется, если используется Oracle в качестве базы для Zabbix.
pgsql
Требуется, если используется PostgresSQL в качестве базы для Zabbix.

Обязательные требования нужны всегда, опциональные требования требуется только для поддержки определённых функций.

ТребованиеСтатусОписание
libpcreОбязательноPCRE библиотека требуется для поддержки PCRE совместимых регулярных выражений.
Наименование может отличаться в зависимости от GNU/Linux дистрибутива, например 'libpcre3' или 'libpcre1'. Обратите внимание, что необходима именно PCRE(v8.X), тогда как PCRE2(v10.X) библиотека не используется.
libeventТребуется для массового сбора метрик и IPMI мониторинга. Версия 1.4 или более новая.
Обратите внимание, что для Zabbix прокси это требование опциональное, и нужно только для IPMI мониторинга.
OpenIPMIОпциональноТребуется для поддержки IPMI
libssh2Требуется для поддержки SSH. Версия 1.0 или более новая.
fpingТребуется для элементов данных ICMP пинг.
libcurlТребуется для веб-мониторинга, мониторинга VMware и для SMTP аутентификации. Для SMTP аутентификации, требуется версия 7.20.0 или выше. Также необходима для поддержки Elasticsearch.
libiksemelТребуется для поддержки Jabber.
libxml2Требуется для мониторинга VMware.
net-snmpТребуется для поддержки SNMP.


Расчет требуемого пространства на жестком диске

Представленная ниже таблица содержит формулы для расчета требуемого пространства на жёстком диске для системы мониторинга Zabbix:

ПараметрФормула для расчетам занимаемого места(в байтах)
Конфигурация ZabbixФиксированный размер. Ориентировочно 10МБ или меньше.
Историядней*(элементов/частота обновления)*24*3600*байт
элементы : количество элементов данных
дней : количество дней хранения истории
частота обновления : среднее значение периода проверки элементов данных
байт : количество байт, требуемых для одного значения, зависит от типа базы данных, около 90 байт
Динамика измененийдней*(элементов/3600)*24*3600*байт
элементов : количество элементов данных
дней : количество дней хранения динамики изменений
байт : количество байт, требуемых для одного значения, зависит от типа базы данных, около 90 байт.
Событиядней*событий*24*3600*байт
событий : количество событий в секунду. Одно (1) событие в худшем случае.
дней : количество дней хранения событий
байт : количество байт, требуемых для одного значения, зависит от типа базы данных, около 170 байт.


Подготовка системы

Установка Apache2

В /etc/parsec/mswitch.conf в параметре zero_if_notfound указать yes:

# Return zero data instead of ENOENT/ENODATA in the absence of record
zero_if_notfound: yes

Это необходимо, чтобы пользователь СУБД, сущность которого не создана в ОС, мог входить в СУБД с нулевыми мандатными атрибутами.
Установить необходимые пакеты:

sudo apt update
sudo apt install apache2 libapache2-mod-php7.0 postgresql-9.6 php7.0-pgsql

Настройка Apache2

В /etc/php/7.0/apache2/php.ini удалить символ '"точка с запятой" перед параметром date/timezone и дописать часовой пояс, например Europe/Moscow

/etc/php/7.0/apache2/php.ini
[Date]
date.timezone = Europe/Moscow

Отредактировать /etc/hosts

/etc/hosts
127.0.0.1	localhost
#127.0.1.1	astra16
192.168.32.218	astra16.example.com	astra16

Если не нужна авторизация pam или gss, то в /etc/apache2/apache2.conf указать параметр:

/etc/apache2/apache2.conf
AstraMode off

Перезапустить apache2

sudo systemctl reload apache2

Настройка PostgreSQL

Отредактировать /etc/postgresql/9.6/main/pg_hba.conf:

/etc/postgresql/9.6/main/pg_hba.conf
# TYPE  DATABASE        USER            ADDRESS                 METHOD
local	zabbix			zabbix									trust
# IPv4 local connections:
host	zabbix			zabbix			127.0.0.1/32			trust

Перезапустить кластер:

sudo systemctl restart postgresql@9.6-main

Создать пользователя и базу zabbix:

sudo -u postgres psql

CREATE DATABASE ZABBIX;
CREATE ROLE zabbix with login password '12345678';
GRANT ALL ON DATABASE zabbix to zabbix;
\q

Установка Zabbix

Установить zabbix:

sudo apt install zabbix-frontend-php zabbix-server-pgsql

Импортировать шаблон БД zabbix:

gunzip -c /usr/share/doc/zabbix-server-pgsql/create.sql.gz > create.sql
psql -U zabbix -d zabbix -f create.sql

Если при выполнении команды psql -U zabbix -d zabbix -f create.sql происходит ошибка:

psql: СБОЙ: error obtaining MAC configuration for user "zabbix"

то для устранения ошибкивыполнить следующие команды:

usermod -a -G shadow postgres
setfacl -d -m u:postgres:r /etc/parsec/macdb
setfacl -R -m u:postgres:r /etc/parsec/macdb
setfacl -m u:postgres:rx /etc/parsec/macdb
setfacl -d -m u:postgres:r /etc/parsec/capdb
setfacl -R -m u:postgres:r /etc/parsec/capdb
setfacl -m u:postgres:rx /etc/parsec/capdb
pdpl-user -l 0:0 zabbix

И выполнить команду psql -U zabbix -d zabbix -f create.sql повторно.
Перезапустить apache2

sudo systemctl reload apache2

Включить zabbix:

sudo systemctl enable zabbix-server
sudo systemctl start zabbix-server

Далее открыть браузер и продолжить установку

Ввести: astra16.example.com/zabbix и нажать Next Step

Убедиться, что все обязательные компоненты установлены корректно (ОК):

Ввести данные для доступа к БД:

Назвать сервер уникальным именем:

Проверить информацию:

Установщик сообщит, что установка успешно завершена, а конфигурация сохранена:

Успех!

Для входа ввести:

логин: Admin
пароль: zabbix

Настройка Zabbix

Перейти в Administration → Users → Admin


Выбрать язык "Русский" и нажать update:


Перейти в Настройка → Узлы и нажать на надпись "Деактивировано" напротив Zabbix Server.
Это включит сбор информации с сервера.

Установка и настройка zabbix агента

Установка агента очень проста:

sudo apt install zabbix-agent

Для настройки агента  в строке Server указать адрес сервера:

/etc/zabbix/zabbix_agentd.conf
### Option: Server
#	List of comma delimited IP addresses, optionally in CIDR notation, or hostnames of Zabbix servers.
#	Incoming connections will be accepted only from the hosts listed here.
#	If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally and '::/0' will allow any IPv4 or IPv6 address.
#	'0.0.0.0/0' can be used to allow any IPv4 address.
#	Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.domain
#
# Mandatory: no
# Default:
# Server=

Server=192.168.32.218

Перезапустить агента:

sudo systemctl restart zabbix-agent

На сервере перейти в Настройки → Узлы → Создать узел, после чего указать Название, отображаемое имя и IP-адрес:


Перейти в Шаблоны, в строке начать печатать "lin..."


Из полученного списка выбрать Template OS Linux и нажать Добавить, Затем кнопку Добавить

Компьютер добавлен в список узлов для проверки.

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