Как я на Debian 10 переносил Zabbix 4.4 c Debian 8 и обновлял до версии 5.0

Дано. Debian 8 + Zabbix 4.4.
Хочу. Debian 10 + Zabbix 5.х.

1. Плацдарм для нового заббикса.

Действия произвожу на свежий установленный дистрибутив Debian 10.
Для начала надо выровнять версии zabbix. На исходном сервере версия 4.4, значит на сервер назначения я буду устанавливать такую же версию.

Проверить наличие php. Если нет, то:

apt -y install php php-common
apt install php php-mysql php-mysqlnd php-ldap php-bcmath php-mbstring php-gd php-pdo php-xml libapache2-mod-php
apt -y install libapache2-mod-php

Подготовка дистрибутива:

wget https://repo.zabbix.com/zabbix/4.4/debian/pool/main/z/zabbix-release/zabbix-release_4.4-1+buster_all.deb
dpkg -i zabbix-release_4.4-1+buster_all.deb
apt update

Настройка mariadb:

mysql_secure_installation

Подготовка БД для zabbix-server:

# mysql -uroot -p
password
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by 'password';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit;

zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix

Установка:

apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent

Настройка конфигурации:

nano /etc/zabbix/zabbix_server.conf
DBPassword=password

Настройка часового пояса:

/etc/zabbix/apache.conf
php_value date.timezone Europe/Riga

У меня почему-то файла /etc/zabbix/apache.conf не оказалось и я копировал его из другой рабочей версии zabbix, уже установленной.

Перезапуск сервисов и добавление в автозагрузку:

systemctl restart zabbix-server zabbix-agent apache2
systemctl enable zabbix-server zabbix-agent apache2

Копирование конфига для веб-интерфейса:

ln -s /etc/zabbix/apache.conf /etc/apache2/sites-enabled/

Открываем веб-интерфейс по адресу своего хоста (я на локальном тренировался) и завершаем установку:

http://10.10.10.172/zabbix/setup.php

Как только веб-интерфейс пустил в настройки по логину Admin и паролю по умолчанию zabbix, система готова к переносу данные. Можно сделать её копию на случай, если что-то при переносе потом пойдёт не так и чтобы не разворачивать всё по новой.

2. Подготовка пациента.

Обновляем пациента до нужной версии, которая поедет на целевой новый сервер.

rm -Rf /etc/apt/sources.list.d/zabbix.list
cd /tmp
wget https://repo.zabbix.com/zabbix/4.4/debian/pool/main/z/zabbix-release/zabbix-release_4.4-1+jessie_all.deb
dpkg -i zabbix-release_4.4-1+jessie_all.deb
apt update
service zabbix-server stop
service zabbix-agent stop
apt-get install --only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-agent
service zabbix-server start
service zabbix-agent start

tail -f /var/log/zabbix/zabbix_server.log — наблюдать за обновлением базы и должно быть в процессе сообщение database upgrade fully completed, например вот так:

7216:20201022:155130.354 completed 99% of database upgrade
7216:20201022:155131.464 completed 100% of database upgrade
7216:20201022:155131.464 database upgrade fully completed
7216:20201022:155131.472 database is not upgraded to use double precision values
7216:20201022:155131.546 server #0 started [main process]
7242:20201022:155131.550 server #1 started [configuration syncer #1]

Теперь версии у меня сравнялись: Zabbix 4.4.10.

Перенос заббикса.

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

service zabbix-server stop
mysqldump -u root -p zabbix > /var/mysqldump/zabbix.sql

Архив веб-интерфейса:

tar -czf zabbix-web.tar /usr/share/zabbix

Переношу на целевой сервер и разворачиваю дампы. Останавливаю заббикс сервер.Вливаю базу:

service zabbix-server stop
mysql -u root -p zabbix < zabbix.sql

Копирую новые файлы веб-интерфейса в /usr/share/zabbix

Запускаю сервер:

service zabbix-server start

Проверю что всё заработало.

Обновление до 5-й версии.

service zabbix-server stop
rm -Rf /etc/apt/sources.list.d/zabbix.list
cd /tmp
wget https://repo.zabbix.com/zabbix/5.1/debian/pool/main/z/zabbix-release/zabbix-release_5.1-1+debian10_all.deb
dpkg -i zabbix-release_5.1-1+debian10_all.deb
apt-get update
apt-get install --only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-agent

tail -f /var/log/zabbix/zabbix_server.log — наблюдать за обновлением базы

Получился у меня Zabbix 5.2.0rc2.

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