Как я Zabbix спасал
Работающий исправно Zabbix это хорошо, но когда при этом еще и операционная система работает исправно еще лучше. Довольно странная ситуация произошла с сервером на котором был установлен Zabbix. Установленная Ubuntu перестала обновляться и устанавливать какие-либо новые пакеты. И решил я мигрировать на другой сервер с сохранением все настроек и версионности.
Версия установленного Zabbix была 3.4.12, найти на сайте пакет такой версии не смог, думал поставить с нуля 4.2 и настроить, но вопрос совместимости шаблонов решил не проверять.
За основу взял Ubuntu 18.04 Server и начал установку версии 3.0 с последующим апгрейдом до 3.4.
Установка Zabbix 3.0
Скачиваем пакет с репозитория и начинаем установку:
1 2 3 4 |
wget https://repo.zabbix.com/zabbix/3.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.0-2+bionic_all.deb dpkg -i zabbix-release_3.0-2+bionic_all.deb apt update apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent -y |
Переходим к базе данных:
1 2 3 4 5 |
mysql -uroot -p <strong>Вводим пароль от пользователя root</strong> create database zabbix character set utf8 collate utf8_bin; grant all privileges on zabbix.* to zabbix@localhost identified by 'no9v3pIxAA'; quit; |
Импортируем дамп в базу:
1 |
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix |
В конфигурации указываем пароль от базы:
1 2 3 |
nano /etc/zabbix/zabbix_server.conf DBPassword=no9v3pIxAA |
Настраиваем верный часовой пояс для Apache:
1 2 3 |
nano /etc/zabbix/apache.conf php_value date.timezone Europe/Moscow |
Настраиваем верный часовой пояс для Ubuntu:
1 |
cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime |
Перезапускаем и активируем службы:
1 2 |
systemctl restart zabbix-server zabbix-agent apache2 systemctl enable zabbix-server zabbix-agent apache2 |
Теперь у нас есть рабочий Zabbix, переходим к обновлению.
Обновление Zabbix 3.0 до версии 3.4
Процесс обновления представляет собой 2 стадии:
- обновление до версии 3.2
- обновление с 3.2 до версии 3.4
У меня уже была статья по обновлению Zabbix, но там я обновлял с 3.2 до 3.4.
Обновление до версии 3.2
1 2 3 4 5 6 7 8 9 10 11 |
service zabbix-server stop wget http://repo.zabbix.com/zabbix/3.2/debian/pool/main/z/zabbix-release/zabbix-release_3.2-1+stretch_all.deb dpkg -i zabbix-release_3.2-1+stretch_all.deb apt-get update apt install libcurl3 apt-get install --only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-agent service zabbix-server start |
Обновление с 3.2 до версии 3.4
1 2 3 4 5 6 7 8 9 10 |
service zabbix-server stop wget https://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+bionic_all.deb dpkg -i zabbix-release_3.4-1+bionic_all.deb apt update apt upgrade -y apt-get install --only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-agent apt install zabbix-server-mysql service zabbix-server start |
Экспорт базы старого Zabbix
Так как версионность у нас теперь идентичная полностью, переходим к экспорту старой базы и импорту в новую.
Останавливаем Zabbix:
1 |
service zabbix-server stop |
Создаем дамп базы данных на старом сервере:
1 2 3 4 5 6 7 |
appliance@zabbix:~$ mysqldump -u zabbix -p zabbix | bzip2 > dbdump.bz2 Enter password: appliance@zabbix:~$ ls dbdump.bz2 appliance@zabbix:~$ du -sh dbdump.bz2 101M dbdump.bz2 appliance@zabbix:~$ |
Полученный архив копируем на новый сервер.
Импортируем наш дамп в новую базу:
1 |
bzcat dbdump.bz2 | mysql -u zabbix -p zabbix |
При необходимости переносим шаблоны которых нет на новом сервере. (Настройка — Шаблоны)