Инструкция по обновлению кластера Почты
Как обновлять Почту до версий ниже 25.4
Документация ко всем предыдущим релизам Почты собрана на странице: Документация предыдущих релизов.
Вы можете выбрать версию Почты, до которой хотите обновиться, и посмотреть соответствующее руководство по обновлению.
Дополнительная документация
Перестала работать синхронизация с Exchange после обновления до версии 1.24
Некорректная конфигурация кластера БД после обновления до версии 1.24
Не синхронизируются письма с вложениям в Exchange после обновления до версии 1.24
Предварительные условия для установки обновления
Внимание
Если версия вашей системы ниже 1.22, то сначала обновитесь до версии 1.22, далее до версии 1.24. Не пропускайте больше одной версии при обновлении. Обновите Почту до версии 25.2 или 25.3 перед обновлением на версию 25.4.
-
Убедитесь, что представители VK предоставили вам следующие данные:
- Ссылку на скачивание дистрибутива новой версии Почты.
- Пароль от архива с дистрибутивом.
-
У вас есть архитектурная схема кластера, показывающая, на каком гипервизоре какие компоненты системы установлены. Эти данные потребуются на этапе генерации новых контейнеров.
-
Перед обновлением на версию 25.4 проверьте наличие лицензий Почты на каждом домене. Отсутсвие лицензии приведет к неработоспособности продукта после обновления.
-
Перед обновлением на версию 25.4 перевыпустите сертификаты и добавьте A-записи для новых поддоменов Календаря:
shared.calendarxиshared.calendartouch. -
Выпустите сертификаты и добавьте A-записи для нового поддомена:
access. -
Чтобы Почта VK WorkSpace работала корректно, нужно установить оперативное обновление ядра ОС указанной ниже версии. Версия должна быть актуальной на момент обновления. Поддерживаемые операционные системы:
- Astra Linux SE Орел — версия 1.7.5+, версия ядра — 5.15.
- Astra Linux SE Орел — версия 1.8, версия ядра — 6.1.
- РЕД ОС — версия 7.3.5, версия ядра — 6.1.
- РЕД ОС — версия 7.3с (сертифицированная), версия ядра — 6.1.
- РЕД ОС — версия 8, версия ядра — 6.6 или 6.12.
- MosOS Arbat — версия 15.5, версия ядра — 5.14.
Обновление необходимо проводить в нерабочее время, когда приложением не пользуются сотрудники (в технологическое окно).
Внимание
Перед обновлением проверьте, что ваша система удовлетворяет требованиям к ресурсам серверов.
Шаг 1. Выполните проверку баз данных и хранилищ
Перед установкой обновления необходимо удостовериться в консистентном состоянии кластеров баз данных:
- В веб-интерфейсе установщика перейдите в Настройки -> Шардирование и репликация БД.
- Нажмите на кнопку Опросить все Overlord'ы. Таким образом будет проверено состояние баз данных.
- Авторизуйтесь в панели администратора Почты
https://biz.<main-domain>. - Перейдите в панель управления кластерами БД MySQL
https://biz.<main-domain>/orchestrator/web/clusters/. - Проверьте отсутствие ошибок в процессе репликации баз данных.
Проверьте дисковое пространство на серверах отведенных под хранилища:
- На разделах выделенных для хранения данных должно быть свободно более 15% дискового пространства и обязательно более 25 Гб.
- На всех остальных разделах должно быть занято не более 10% дискового пространства.
Шаг 2. Подготовьте новую версию к обновлению
Распакуйте zip-архив c новой версией. Используйте учетную запись пользователя, от имени которого производилась первичная установка:
- Поместите zip-архив с дистрибутивом новой версии в ту же папку, которая использовалась при первичной установке. То есть туда же, где находится файл-установщик
onpremise-deployer_linux. -
Распакуйте архив под той же учетной записью поверх имеющегося дистрибутива с заменой всех изменившихся файлов. Архив защищен паролем, который потребуется указать при распаковке.
-
Проверьте, есть ли у файла
onpremise-deployer_linuxфлаг на исполнение (x) с помощью команды: -
Если флаг отсутствует, выполните команду:
-
Выполните команду
sudo systemctl restart deployer.
Шаг 3. Настройте параметры Почты при синхронизации с Exchange
Внимание
Шаг актуален только при обновлении до версий старше 1.23 и младше 25.3.3.
Шаги ниже необходимо выполнить, если у вас настроена интеграция с Exchange. Если интеграция не настроена, то перейдите к Шагу 4.
-
Откройте для редактирования файл
$DEPLOYER_HOME/configs/rimap/zubr/picker-zubr.yaml, где$DEPLOYER_HOME— папка в которую распаковывался установщик. Например,/home/deployer: -
Добавьте сервис
- 94 # arbuzapiв раздел:Общий вид раздела после изменения:
-
Откройте для редактирования файл
$DEPLOYER_HOME/configs/rimap/envoy/envoy-rimap.yaml: -
В раздел
static_resourcesдобавьте следующие разделы: -
Откройте для редактирования файл
$DEPLOYER_HOME/configs/rimap/zubr/zubr.yaml: -
В разделы
servicesиvariablesдобавьте следующие разделы:constructor: services: - 77 # FILEDB_NONCORP - 79 # PAIRDB ... variables: filedb_noncorp_server: {{- range $k, $v := (index . "tarantool15::mfiledb").clusters }} - 127.0.77.{{$k}}:3301,127.0.77.{{$k}}:3401 {{- end }} pairdb_noncorp_server: {{- range $k, $v := (index . "tarantool15::mpairdb").clusters }} - 127.0.79.{{$k}}:3301,127.0.79.{{$k}}:3401 {{- end }} -
Выполните команду:
-
В веб-интерфейсе установщика Почты перейдите на вкладку AdminPanel.
-
Для всех контейнеров вида registry* выполните шаг upload_docker_repo.
-
Для всех контейнеров вида picker* выполните шаг up_container.
-
По очереди выполните шаг up_container для всех контейнеров rimap*.
Шаг 4. Добавьте новые контейнеры
Добавьте новые контейнеры, соблюдая распределение по гипервизорам как при первичной установке: базы данных добавить на гипервизоры с базами данных, хранилища — на гипервизоры с хранилищами и так далее.
- Перейдите в веб-интерфейс установщика
http://server-address:8888, где server-address — ip-адрес машины, на которую производится установка, либо ее доменное имя. -
Пролистайте список контейнеров, в нижней части страницы нажмите на кнопку Добавить и выберите пункт Несколько контейнеров.
Откроется всплывающее окно Выберите роли для добавления.
-
Задайте фильтры:
-
Выберите все доступные для установки контейнеры.
-
Прокрутите список контейнеров вниз и выберите гипервизоры, на которые нужно произвести установку.
-
Выберите режим генерации На каждом гипервизоре.
-
Нажмите на синюю кнопку Добавить. Всплывающее окно, в котором выполнялись предыдущие действия, закроется.
- Откройте окно добавления контейнеров, нажав Добавить -> Несколько контейнеров.
- Повторите шаги 1-6 для всех оставшихся компонентов в поле Теги.
-
Убедитесь, что все контейнеры добавлены:
- Откройте окно добавления контейнеров, нажав Добавить -> Несколько контейнеров.
- Выберите фильтр Установлено не более: 0.
- Список контейнеров, доступных для добавления, должен быть пустым.
В релизе 25.4 для некоторых БД произошла миграция с Tarantool на OneDB и с MySQL на PostgreSQL. В релизах 25.3.1 и 1.24 вышло крупное обновление для БД Tarantool — мигрировали с версии 1.5 на версию 2.11.
Поэтому отдельное внимание нужно уделить созданию новых кластеров:
- Перейдите в раздел Настройки -> Шардирование и репликация БД.
-
Количество кластеров для новых сервисов должно быть равно количеству кластеров для сервисов предыдущей версии. Нужно создать новые кластеры в соответствии со следующей таблицей:
Название в предыдущих версиях Название в 25.4 del-cancel-tar del-cancel-onedb mmqueue-tar mmqueue-onedb session-tar session-onedb evdokia-tar evdokia-onedb search-store search-store-onedb aliases-tar alisa-onedb autoreplylimiter autoreplylimiter-onedb rpopdb rpoppg seconddb secondpg fstatdb fstatpg swadb swapg gravedb gravepg bibliodb bibliopg bizdb bizpostgres avatardb avatarpg Название в предыдущих версиях Название в 25.3.1 noanswer-tar norepres Название в предыдущих версиях Название в 1.24 irina-tar irina ricotar rico hermes hermes-tnt signatar signatarng filters-tar delfi spammerdb spammerdbng abookpdd-tar commonab addrbook-tar addrbook list-mailer-tar listmailer msglink-tar msglinks -
Чтобы добавить кластер:
- Нажмите кнопку Добавить в первой строке, отмеченной красным.
- Нажмите кнопку Добавить контейнер БД. В зависимости от типа базы данных может быть добавлен один или два контейнера.
- Сохраните изменения.
- Повторите шаги 1-4 для каждой строки, отмеченной красным.
Вернитесь в верхнюю часть страницы и проверьте: отображается ли в правом верхнем углу зеленая кнопка Далее. Если зеленая кнопка Далее отображается и активна, то донастройте параметры системы. Логика: «Cледуем за кнопкой Далее то тех пор, пока она активна». Когда зеленая кнопка Далее перестанет отображаться в верхнем углу страницы, можно запускать обновление.
Как ускорить установку
Если вы планируете провести подготовительные действия днем, а непосредственную установку ночью, необходимо заранее запустить проверку и кэширование образов:
- Днем нажмите кнопку Запустить проверку в выпадающем меню рядом с кнопкой Play.
- Дождитесь завершения проверки.
- Нажмите кнопку Кэшировать образы в выпадающем меню. Это позволит сэкономить время ночной установки.
При таком подходе ночью достаточно будет нажать на кнопку Play и завершить обновление согласно инструкции.
Шаг 5. Подготовьте crow-index к обновлению
Внимание
Шаг актуален только при обновлении до версии 1.24.
Для каждого контейнера crow-index* проверьте размер БД с индексами с помощью команды:
Если размер хотя бы одного каталога с шардом более 10 Гб, то выполните следующие действия:
- В веб-интерфейсе установщика, перейдите в раздел Настройки -> Переменные окружения.
- В левом боковом меню найдите crow-index.
- Нажмите кнопку редактировать
. - Нажмите на кнопку + Добавить.
- В поле Название переменной введите
CROW_INDEX_DATABASE_SEARCH_USE_LEVELED_COMPACTION_STYLE, в поле Значение переменной введитеfalse. - Нажмите на кнопку + Добавить.
- В поле Название переменной введите
CROW_INDEX_DATABASE_CONTENT_USE_LEVELED_COMPACTION_STYLE, в поле Значение переменной введитеfalse. - Нажмите на кнопку Сохранить.
Шаг 6. Запустите обновление
Для обновления версии Почты:
- Запустите установку, нажав на кнопку Play напротив индикатора состояния.
- Подтвердите запуск автоматической установки, нажав на кнопку Запустить во всплывающем окне. В этом окне также есть возможность увеличить процент контейнеров одной роли, устанавливаемых одновременно. Допустима установка значений: 25, 50, 100. Это ускорит процесс обновления.
- Дождитесь завершения установки.
- Перейдите в панель администратора
https://biz.main-domain. - Авторизуйтесь под учетной записью администратора
admin@admin.qdit. - Убедитесь, что письма отправляются и доходят до адресата. Для проверки лучше написать письмо от одного пользователя (не от
admin@admin.qdit) другому пользователю и убедиться, что оно будет доставлено.
Шаг 7. Запустите переиндексацию данных
Внимание
Шаг актуален только при обновлении до версии 1.24.
Если на шаге 1 размеры каталогов с шардами превышали 10 Гб, то выполните следующие действия:
- В веб-интерфейсе установщика, перейдите в раздел Настройки -> Переменные окружения.
- В левом боковом меню найдите crow-index.
- Нажмите кнопку редактировать
. - Измените значение переменной
CROW_INDEX_DATABASE_SEARCH_USE_LEVELED_COMPACTION_STYLEнаtrueили удалите эту переменную. - Выполните шаг up_container для одного из контейнеров crow_index*. Например, для контейнера crow_index1.
-
Дождитесь переиндексации данных. Узнать об окончании переиндексации можно в логе
/data/shard*/LOG:** Compaction Stats [default] ** Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- L0 4/0 4.18 GB 0.0 13.6 0.0 13.6 18.5 4.9 0.0 3.1 17.2 23.4 811.17 756.92 59 13.749 203M 0 L1 11/0 5.02 GB 0.0 6.0 4.1 1.9 5.0 3.1 0.0 1.2 32.4 27.0 190.36 268.18 1 190.358 12M 1 L2 20/0 9.70 GB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 L3 27/0 13.35 GB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 L4 44/0 21.73 GB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 L5 62/0 30.74 GB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 L6 411/0 205.27 GB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 Sum 579/0 289.98 GB 0.0 19.6 4.1 15.6 23.5 8.0 0.0 3.9 20.1 24.1 1001.52 1025.09 60 16.692 216M 1 Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 ** Compaction Stats [Content] ** Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- L0 0/0 0.00 KB 0.0 0.0 0.0 0.0 1.4 1.4 0.0 1.0 0.0 27.0 51.67 11.31 3 17.225 0 0 L2 6/0 2.28 GB 0.0 2.5 2.5 0.0 2.3 2.3 0.0 0.9 48.7 44.0 53.10 8.20 1 53.099 729K 66K L3 8/0 3.01 GB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 L4 8/0 3.50 GB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 L5 36/0 17.35 GB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 L6 89/0 44.25 GB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 Sum 147/0 70.39 GB 0.0 2.5 2.5 0.0 3.6 3.6 0.0 2.7 24.7 35.6 104.77 19.51 4 26.193 729K 66K Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0В столбце Files, число после / должно быть равно 0 (кроме строки L0).
-
Повторите действия 5-6 последовательно для каждого контейнера crow-index*.
- В веб-интерфейсе установщика, перейдите в раздел Настройки -> Переменные окружения.
- В левом боковом меню найдите crow-index.
- Нажмите кнопку редактировать
. - Измените значение переменной
CROW_INDEX_DATABASE_CONTENT_USE_LEVELED_COMPACTION_STYLEнаtrueили удалите эту переменную. - Повторите действия 5-6 последовательно для каждого контейнера crow-index*.
Шаг 8. Выполните компактизацию и дефрагментацию etcd
Данный шаг не является обязательным, но рекомендуется выполнить его, чтобы сохранить скорость работы системы. После завершения обновления и миграции хранилищ метаданных:
- Перейдите в раздел Настройки -> Шардирование и репликация БД.
- Найдите БД infraetcd.
-
Кликните правой кнопкой мыши по строчке с infraetcd и нажмите кнопку Compact & defrag.
-
Найдите БД mailetcd.
-
Кликните правой кнопкой мыши по строчке с mailetcd и нажмите кнопку Compact & defrag.
Шаг 9. Проведите тестирование пользовательских интерфейсов
Чтобы убедиться, что обновление прошло успешно, рекомендуем пройти проверки из инструкции:
Как вручную проверить состояние Почты.








