Обновление с версии 1.2.0
Обновление Pult до версии 2.0.0
Версия pult 2.0.0 основана на zabbix 7.0.6. В данной версии был добавлен новый тип данных binary, поэтому для корректного обновления требуется совершить ряд действий.
0. Создайте бекап конфигурационной БД
Перед обновлением мы рекомендуем сделать бекап данных из БД postgresql/mysql. Так же сделайте резервную копию конфигурационных файлов или docker-compose.yaml файла.
1. Если вы используете Clickhouse в качестве хранилища для исторических данных.
В данном случае необходимо добавить новую таблицу history_bin перед обновлением инсталляции. Воспользуйтесь WEB интерфейсом clickhouse ( доступен по порту 8123 ), либо подключиться к БД pult с помощью clickhouse-client. Далее выберите БД pult и выполните запрос для создания новой таблицы:
use pult;
CREATE TABLE IF NOT EXISTS pult.history_bin (itemid UInt64, clock UInt64 CODEC(Delta, LZ4), ns UInt64 CODEC(T64, LZ4), value String) ENGINE = MergeTree() PARTITION BY toYYYYMM(CAST(clock as date)) ORDER BY (itemid, clock) TTL (CAST(clock as date)) + INTERVAL 6 MONTH;
1.1 Если вы не используете Clickhouse
В данном случае, можете перейти к следующим шагам, система самостоятельно обновит схему СУБД.
2. Обновление образов pult сервера и его основных компонентов
Если вы используете docker версию pult, то вам необходимо обновить версию контейнера в docker-compose.yaml файле.
- Замените версию у всех образов ( pult-server, pult-web ) на 7.0.6
services:
pult-server:
image: registry.pult.chislitellab.ru:8123/full/server-pgsql-ol9:7.0.6
Так же, если вы используете clickhouse, необходимо указать новый тип bin, в переменной ZBX_HISTORY_CLICKHOUSE_STORAGE_TYPES у pult server и в переменной ZBX_HISTORY_CLICKHOUSE_TYPES у pult-web
ZBX_HISTORY_CLICKHOUSE_TYPES: "dbl,uint,str,text,log,bin"
ZBX_HISTORY_CLICKHOUSE_STORAGE_TYPES: "uint,dbl,str,log,text,bin"
Переменные могут быть указаны в docker-compose.yaml файле или в .env файлах, путь до которых вы сможете найти в композ файле.
Обратите внимание! В версии 2.0.0 была добавлена новая переменная ZBX_HISTORY_CLICKHOUSE_NS_DISABLE, которая отключает хранение информации о времени получения данных в наносекундах. Это значительно экономит место в clickhouse БД, но перед преминением ознакомьтесь с подробностями в changelog.
- После внесения изменений в docker-compose файле, необходимо загрузить новые версии компонентов pult.
docker compose pull pult-server pult-web
Если вы столкнулись с ошибкой авторизации, то сначала необходимо выполнить команду docker login, указав свою учётную запись и адрес репозитория:
docker login -u test_user registry.pult.chislitellab.ru:8123
- Пересоздайте контейнеры pult-server и pult-web
docker compose up -d pult-server pult-web
После пересоздания, запустится новая версия ПО, которая автоматически обновит СУБД до версии zabbix 7.0.6
2.1 Обновление pult server из пакетов
- Создайте рервную копию конфигурационных файлов в каталоге
/etc/zabbix/* - Удалите пакеты pult-server, pult-web.
- Скачайте из нашего репозитория новые версии пакетов и инсталлируйте их.
- Проверьте корректность конфигурационных файлов. Убедитесь что все настройки системы, параметры подключения к СУБД и другая конфигурация системы осталась без изменений.
- Если используете clickhouse, добавьте в параметр
HistoryStorageClickhouseTypesновый тип данных bin. В качестве разделителя используйте запятую. - Запустите pult server и веб интерфейс и проверьте в логах, что обновление схемы БД прошло успешно.
3. Обновление компонента Report server.
Конфигурация report сервера в этом релизе не изменялась, однако произошли значительные изменения в API системы мониторинга. Для работы сервера отчётов, его необходимо обновить до версии 2.0.0.
- Если используете docker версию, необходимо изменить тег образа на 2.0.0 и пересоздать контейнер:
root# cat docker-compose.yaml
report-server:
restart: always
image: registry.pult.chislitellab.ru:8123/report-server:2.0.0
root# docker compose pull report-server
root# docker compose up -d report-server
- Если вы используете версию устанавливающуюся из пакета, загрузите новую версию пакета из нашего репозитория и сделайте копию конфигурационного файла. Удалите старую версию пакета и установите новую. После этого проверьте конфигурационный файл и при необходимости восстановите его из бекапа.