Инструкция по обновлению системы TEGU¶
- Содержание
- Инструкция по обновлению системы TEGU
Нотация версий¶
Версии программного обеспечения имеют следующий формат:
<мажорная версия>.<минорная версия>.<номер сборки>
❗ КРИТИЧЕСКИЕ ПРЕДУПРЕЖДЕНИЯ¶
1. Изменение структуры базы данных (БД)
При первом запуске новой версии программа автоматически проводит миграцию структуры БД, полагаясь на то, что все предыдущие изменения уже применены.
- Следствие: Вы можете обновляться сразу до последней актуальной версии, пропуская промежуточные этапы.
2. Запрет отката (даунгрейд)
Обновление к более старой версии категорически запрещено. Это может привести к нарушению целостности базы данных и сделать восстановление возможным только через резервную копию. Мы настоятельно не рекомендуем вмешиваться в структуру БД вручную.
3. Действия при зависании процесса обновления
Если в процессе обновления система начала тормозить или зависать:
- НЕ ОСТАНАВЛИВАЙТЕ ни процесс TEGU, ни PostgreSQL.
- Немедленно напишите в техническую поддержку или позвоните нам.
- Техническая поддержка предоставляется только для актуальных версий.
4. Требования к сети
Перед обновлением убедитесь в стабильности сетевого соединения между нодами TEGU и сервером базы данных. Разрыв связи может вызвать ошибки миграции почтовых ящиков.
- Проверьте логи PostgreSQL на наличие ошибок подключения (например:
failed to connect ... tls error).
Подготовка к обновлению¶
Системные требования¶
-
Пакет postgresql-contrib
На сервере PostgreSQL должен быть установлен пакетpostgresql-contrib.Проверка установки:
apt list --installed | grep postgresВ выводе должна присутка строка:
postgresql-contrib/stable,now ... [установлен]
Если пакет отсутствует, установите его до начала обновления. -
Версия PostgreSQL
Начиная с версии TEGU 1.62 минимально допустимая версия PostgreSQL — 14. Убедитесь, что СУБД обновлена до 14-й версии и выше перед апдейтом TEGU. -
Лицензирование (с версии 1.61.26)
Доступ к обновлениям имеют только владельцы действующих сертификатов поддержки. Если лицензия истекла, необходимо сначала обновить ключ, иначе TEGU не запустится (ошибка отразится в логах).
Резервное копирование¶
Обязательно выполните полную резервную копию текущей базы данных сервера.
Получение дистрибутива¶
Скачайте актуальную версию сборки с одного из ресурсов:
Пошаговое обновление¶
Шаг 1. Остановка сервиса
Остановите почтовый сервис на всех нодах кластера:
systemctl stop tegu.service
Шаг 2. Подготовка файлов
Перейдите в директорию /opt и распакуйте скачанный архив:
cd /opt
tar xvzf tegu-ent-v1.xx.yy-x86_64.tar.gz
Шаг 3. Копирование компонентов
Перейдите в созданную папку с дистрибутивом (название будет соответствовать версии, например tegu-ent-v1.xx.yy-x86_64):
cd /opt/tegu-ent-v1.xx.yy-x86_64
Скопируйте исполняемые файлы в системные директории:
cp bin/* /opt/tegu/bin/
cp sbin/* /opt/tegu/sbin/
Шаг 4. Настройка прав (CAP_NET_BIND)
Для корректной работы от непривилегированного пользователя необходимо выполнить команду:
setcap CAP_NET_BIND_SERVICE=+eip /opt/tegu/sbin/tegu
(Убедитесь, что путь /opt/tegu/sbin/tegu соответствует вашей структуре).
Шаг 5. Запуск и проверка
Запустите обновленный сервис:
systemctl start tegu.service
Проверьте статус службы:
systemctl status tegu.service
Ожидаемый результат: Active: active (running)
❗ ФИНАЛЬНОЕ ПРЕДУПРЕЩЕНИЕ¶
НЕ ПЕРЕЗАГРУЖАЙТЕ НОДЫ!
Не выполняйте перезагрузку серверов сразу после обновления. В момент запуска TEGU автоматически запускаются процессы миграции базы данных. Перезагрузка в этот момент прервет процесс и может привести к повреждению данных. Дождитесь полной стабилизации системы.