VK WorkSpace On-Premise logo
Помощь
Обновлена 20 октября 2026 г. в 14:33

Установка обновлений на одну машину

Как обновлять Почту до версий ниже 26.3

Документация ко всем предыдущим релизам Почты собрана на странице: Документация предыдущих релизов.

Вы можете выбрать версию Почты, до которой хотите обновиться, и посмотреть соответствующее руководство по обновлению.

Дополнительная документация

Как обновить SSL-сертификаты

Миграция zepto-del-remove

Как подготовить Почту к обновлению на версию 26.3.1?

Предварительные условия для установки обновления

  1. Убедитесь, что представители VK предоставили вам ссылку на скачивание дистрибутива новой версии Почты.

  2. Обновление необходимо проводить в нерабочее время, когда приложением не пользуются сотрудники (в технологическое окно).

  3. Проверьте наличие лицензий Почты на каждом домене. Отсутсвие лицензии приведет к неработоспособности продукта после обновления.

  4. Перед обновлением на версию 26.3 перевыпустите сертификаты и добавьте A-записи для поддомена: projects.

  5. Проверьте дисковое пространство:

    • На разделах выделенных для хранения данных должно быть свободно более 15% дискового пространства и обязательно более 25 Гб.
    • На всех остальных разделах должно быть занято не более 10% дискового пространства.
  6. Чтобы Почта 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.
  1. При обновлении Почты отключите сервисы kesl и auditd. Они могут создавать значительную нагрузку на сервера.

Шаг 1. Переключите все Tarantool на консолидированные

  1. Нажмите на значок иконка и перейдите в раздел Продукты.

  2. Включите продукт Консолидация серверов Tarantool и все дочерние продукты.

    Filters

  3. Нажмите кнопку Сохранить внизу страницы.

  4. Запустите автоматическую установку со всеми проверками.

  5. Удалите все роли, помеченные желтым цветом.

Шаг 2. Подготовьте новую версию к обновлению

Прежде чем запустить автоматическое обновление Почты:

  1. Используйте учетную запись пользователя, от имени которого производилась первичная установка.

  2. Распакуйте zip-архив c новой версией. Используйте учетную запись пользователя, от имени которого производилась первичная установка:

    # Если на машину не установлен unzip, скачиваем его:sudo apt-get install unzipexport UNZIP_DISABLE_ZIPBOMB_DETECTION=trueunzip -o <имя_архива>
  3. Поместите архив deployer.tar с дистрибутивом новой версии в ту же папку, которая использовалась при первичной установке. То есть туда же, где находится файл-установщик onpremise-deployer_linux.

  4. Распакуйте архив под той же учетной записью поверх имеющегося дистрибутива с заменой всех изменившихся файлов:

    tar -xf deployer.tar
  5. Проверьте, есть ли у файла onpremise-deployer_linux флаг на исполнение (x) с помощью команды:

    ls -la <путь к каталогу с файлом>`.
  6. Если флаг отсутствует, выполните команду:

    chmod +x onpremise-deployer_linux
  7. Распакуйте архив со статическими файлами:

    tar -xf static.tar.gz
  8. Скопируйте архив Docker-репозитория:

    cp registry/mail/dockerRepo.tar source/
  9. Скопируйте файлы md5:

    cp registry/mail/dockerRepo.md5 source/
  10. Выполните команду sudo systemctl restart deployer.

  11. Перейдите в веб-интерфейс установщика http://server-address:8888, где server-address — ip-адрес машины, на которую производится установка, либо ее доменное имя.

  12. Пролистайте список контейнеров и в нижней части страницы нажмите на кнопку Сгенерировать автоматически.

    GenerateAutomatically

  13. Вернитесь в верхнюю часть страницы и проверьте, отображается ли в правом верхнем углу зеленая кнопка Далее.

Как перенести роль cld-unzipper на StatefulSet

  1. Удалите текущий compute cld-unzipper:

    1. Найдите cld-unzipper в списке compute'ов.

    2. Подключитесь по SSH к серверу, на котором установлен deployer, и в файле /home/deployer/computes.yaml удалите блок роли cld-unzipper:

      - role: cld-unzipper  hostname: cld-unzipper3  podK8SParams:    cluster: ext-k8s1    replicas:      min: 1      max: 1      dc:        dc1:          min: 1          max: 1        dc2:          min: 1          max: 1  zone: ""
    3. Удалите deployment cld-unzipper в каждом контексте k8s:

      export KUBECONFIG=/home/deployer/.kube/ext-k8s<номер ext-k8s с лейблом local-k8s>.configkubectl delete deployment cld-unzipper -n <namespace, указанный в настройках kubernetes> --context=dc-<наименование dc>kubectl get cm -n <namespace, указанный в настройках kubernetes> -o name | grep cld-unzipper | xargs kubectl delete -n <namespace, указанный в настройках kubernetes>kubectl delete svc -n <namespace, указанный в настройках kubernetes> cld-unzipper-headless-service
    4. Выполните команду sudo systemctl restart deployer.

  2. В веб-интерфейсе установщика, на главной странице нажмите кнопку Добавить и выберите пункт Несколько подов.

  3. В столбце Роль введите cld-unzipper.

  4. Выберите контейнер доступный для установки.

  5. Выберите гипервизор, на который нужно произвести установку.

  6. Нажмите на синюю кнопку Добавить. Всплывающее окно, в котором выполнялись предыдущие действия, закроется.

  7. Выполните шаг up_container для добавленных cld-unzipper.

Шаг 3. Добавьте хранилище секретов

В релизе 26.3 секреты из main.yaml хранятся в vault — специализированном хранилище секретов от HashiCorp. Это хранилище типа «ключ-значение», данные в котором хранятся в зашифрованном виде. Для отказоустойчивости несколько инстансов vault объединяются в кластер по алгоритму распределенного консенсуса (RAFT).

Для начала работы с хранилищем его необходимо инициализировать: при инициализации указывается, сколько ключей для разблокировки (unseal keys) сгенерировать и сколько из них требовать для распечатки. Инициализация возвращает токен суперпользователя (rootToken) и ключи для распечатки (unseal keys), которые необходимы для дальнейшей работы с хранилищем.

Каждый перезапуск vault приводит его в состояние «запечатан» (sealed), и его надо распечатать (unseal).

Пример работы с ключами

Есть 10 доверенных сотрудников, при создании хранилища мы создаем 10 ключей и раздаем каждому сотруднику по одному ключу. Чтобы распечатать хранилище, будем требовать 3 ключа. Поэтому, когда нужно будет распечатать vault, нам потребуется 3 сотрудника, чтобы его распечатать.

Чтобы добавить и инициализировать хранилище:

  1. Нажмите кнопку Добавить внизу главной страницы веб-интерфейса установщика.

  2. Выберите опцию Хранилище секретов.

  3. Выберите контейнер vault с помощью чекбокса.

  4. В списке гипервизоров отметьте гипервизоры, на которых будут размещены инстансы vault.

  5. Нажмите на кнопку Добавить.

  6. Запустите автоматическую установку — после ее завершения инстансы vault будут запущены.

  7. Перейдите в раздел Обслуживание -> Хранилище секретов или по адресу http://server-ip-address:8888/service/vault.

  8. Если vault устанавливается впервые, нажмите кнопку Инициализировать Хранилище и задайте параметры инициализации:

    • Всего ключей для распечатывания — сколько ключей сгенерировать.
    • Минимум ключей для распечатывания — сколько ключей потребуется ввести для распечатки (unseal) хранилища. Значение не должно превышать общее количество ключей.
    • Сохранить ключи в Deployer — включите опцию, чтобы установщик сохранил ключи и мог распечатывать хранилище в автоматическом режиме.
  9. После инициализации в веб-интерфейсе отобразятся ключи для распечатки и токен суперпользователя. Сохраните эту информацию.

При инициализации установщик автоматически распечатает хранилище. Если вы обновляете инсталляцию с версии 26.2.3, миграция старых секретов из main.yaml произойдет автоматически.

Распечатка хранилища

Если при инициализации вы включили опцию Сохранить ключи в Deployer, установщик будет автоматически распечатывать хранилище при каждом своем перезапуске и запуске задачи up_container. В этом случае ключи для распечатывания сохраняются на машине с установщиком в файле /home/deployer/workmail/.secStoreKeys.yaml. Если установщику не удалось распечатать хранилище, установка будет заблокирована.

Чтобы распечатать хранилище вручную:

  1. Перейдите на страницу http://server-ip-address:8888/service/vault.
  2. В блоке Распаковка Хранилища секретов введите ключи, полученные при инициализации.
  3. Нажмите кнопку Распаковать (unseal).

В кластерной установке инициализация выполняется только на одном инстансе vault — остальные инстансы подключатся к нему и инициализируются самостоятельно. Распечатка выполняется на каждом инстансе.

Проверка состояния хранилища

На странице http://server-ip-address:8888/service/vault отображается состояние каждого инстанса vault: запущен ли он, инициализирован, запечатан или распечатан, готов ли к работе. Также отображаются «Количество ключей для распечатывания», «Количество необходимых секретов» и «Количество доступных секретов» — последние два значения должны совпадать.

Инстанс готов к работе, когда он запущен, инициализирован и распечатан, а количество доступных секретов совпадает с количеством необходимых.

Установщик автоматически проверяет актуальность секретов при каждом перезапуске и распечатке хранилища и при необходимости мигрирует или добавляет их.

Шаг 4. Запустите обновление

Для обновления версии Почты:

  1. Запустите установку, нажав на кнопку Play напротив индикатора состояния.

    Play

  2. Подтвердите запуск автоматической установки, нажав на кнопку Запустить во всплывающем окне.

  3. Дождитесь завершения установки.

  4. Перейдите в панель администратора https://biz.main-domain.

  5. Авторизуйтесь под учетной записью администратора admin@admin.qdit.

  6. Убедитесь, что письма отправляются и доходят до адресата. Для проверки лучше написать письмо от одного пользователя (не от admin@admin.qdit) другому пользователю и убедиться, что оно будет доставлено.

Шаг 5. Выполните компактизацию и дефрагментацию etcd

Данный шаг не является обязательным, но рекомендуется выполнить его, чтобы сохранить скорость работы системы. После завершения обновления и миграции хранилищ метаданных:

  1. Перейдите в раздел Настройки → Шардирование и репликация БД.
  2. Найдите БД infraetcd.
  3. В строчке с infraetcd, в колонке Действия нажмите на иконку с тремя точками и нажмите кнопку Compact & defrag.
  4. Найдите БД mailetcd.
  5. В строчке с mailetcd, в колонке Действия нажмите на иконку с тремя точками и нажмите кнопку Compact & defrag.

Шаг 6. Проведите тестирование пользовательских интерфейсов

Чтобы убедиться, что обновление прошло успешно, рекомендуем пройти проверки из инструкции:
Как вручную проверить состояние Почты.

Не проходит up_container у контейнеров cube

Если при обновлении для роли cube не проходит шаг up_container, то в каждом из контейнеров swapg нужно выполнить шаг init_db_fixtures, даже если он помечен зеленым цветом и подписью done.


Технический писатель: Груздев Никита

Была ли статья полезна?