Friday, October 18, 2019

Zabbix: установка оффлайн

Всем привет!
Сегодня устанавливаем Zabbix в оффлайн режиме. Как обычно в оф. документации все просто, проверим - так ли это. Для данной задачи используется сервер с CentOs'ом, который имеет доступ в интернет, чтобы можно было скачать нужные пакеты, и второй сервер без доступа к интернету. На этот сервер и будем устанавливать заббикс.
Для начала берем все нужное(загружаем в папку tmp):
yum install --downloadonly --downloaddir=/tmp /
zabbix40-server-mysql /
zabbix40-web-mysql /
zabbix40-agent /
yum install createrepo -y --downloadonly --downloaddir=/tmp 

Возможно, что еще понадобятся и эти зависимости: deltarpm, python-deltarpm
С помощью createrepo сделаем репозитарий из локальной нашей папки с загруженными пакетами:

createrepo /custom_repo/
Перенесем туда все пакеты, далее переподключаем репозиторий.
yum clear all
yum repolist 

Загрузили, перенесли все пакеты на второй сервер.
Приступаем к установке и сразу же получаем ошибку:
Error: Package: zabbix40-server-mysql-4.0.12-1.el7.x86_64 (LocalRepo)
           Requires: libcrypto.so.10(OPENSSL_1.0.2)(64bit)

Версия openssl требует обновления.
Бежим качаем 2 пакета(на текущий момент такая версия):
openssl-1.0.2k-19.el7.x86_64.rpm
openssl-libs-1.0.2k-19.el7.x86_64.rpm
Далее удаляем старый openssl, обновляем openssl-libs(зависимости) и устанавливаем новую версию openssl. Продолжаем установку:
yum install zabbix40-server-4.0.12-1.el7.noarch.rpm

Далее все гут, едем дальше.
yum install  zabbix40-web-4.0.12-1.el7.noarch.rpm
Получаю ошибку:
Error: Package: php-5.4.16-46.el7.x86_64 (LocalRepo)
           Requires: httpd-mmn = 20120211x8664


Отсутствует httpd - идем качаем зависимости:
yum install httpd -y --downloadonly --downloaddir=/tmp
yum install apr.x86_64 -y --downloadonly --downloaddir=/tmp
yum install apr-util -y --downloadonly --downloaddir=/tmp
yum install httpd-tools -y --downloadonly --downloaddir=/tmp
yum install mailcap -y --downloadonly --downloaddir=/tmp
Продолжаем установку httpd:

yum install httpd

yum install zabbix40-web-4.0.12-1.el7.noarch.rpm 

Далее идет установка СУБД, я устанавливаю MariaDB.

 yum install mariadb-server-5.5.64-1.el7.x86_64.rpm

Если вы получаете ошибки такого рода:
#systemctl status mysql
● mysql.service
   Loaded: not-found (Reason: No such file or directory)
   Active: inactive (dead)
# mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)

Значит у вас не запущен сервер СУБД - проверьте тот ли пакет вы установили и запустите службу. 

systemctl start mariadb.service
Создаем БД и импортируем скрипты для работы(строго по порядку):
shell> mysql -uroot -p<пароль> 
mysql> create database zabbix character set utf8 collate utf8_bin; 
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '<пароль>'; 
mysql> quit;

shell> cd database/mysql 
shell> mysql -uzabbix -p<пароль> zabbix < schema.sql
shell> mysql -uzabbix -p<пароль> zabbix < images.sql 
shell> mysql -uzabbix -p<пароль> zabbix < data.sql

В конфиге сервера /etc/zabbix/zabbix_server.conf указываем настройки сервера:
DBHost=localhost 
DBName=zabbix 
DBUser=zabbix 
DBPassword=zabbix_pass
Запускаем сервер
systemctl start zabbix-server
Не забываем включить его в автозапуск
systemctl enable zabbix-serverЕсли у вас на этом же сервере стоит и агент, то включаем его:
systemctl enable zabbix-agent.service 
Вносим изменения в настройки httpd и php. Например, date.timezone = Europe/Moscowр, у меня конфиги из папки http не считывались и возникла ошибка:
Time zone for PHP is not set (configuration parameter "date.timezone").
Поэтому пришлось поправить этот параметр в /etc/php.ini
date.timezone = Europe/Moscow
Запускаем httpd и браузером заходим на адрес сервера http://ip-servera/zabbix
Заполняем все поля, указывваем параметры подклюбчения, имя сервера и другие настройки.
Установка на этом завершена. Логин-пароль по умолчанию Admin/zabbix. 

Успехов!

No comments:

Post a Comment