Инструкция по установке обновлений VK Teams 24.3 на одну виртуальную машину
Назначение документа
В данной инструкции описана установка обновлений VK Teams на одну виртуальную машину.
Обновить VK Teams можно двумя способами:
Документ предназначен для использования администраторами организации.
Внимание
Если последнее обновление VK Teams проводилось более трех версий назад, свяжитесь с технической поддержкой для помощи с обновлением.
Обновление VK Teams при помощи тестовой виртуальной машины
Для обновления VK Teams при помощи тестовой виртуальной машины необходимо выполнить шаги, представленные ниже.
Внимание
Все команды в консоли выполняются под пользователем root.
Подготовка к обновлению
-
Составьте и сохраните список нестандартных настроек, выполненных без применения команды
premsetup.py --install
. Это настройки, которые выполнялись вручную и не могут быть выполнены при инсталляции, например, особые настройки S3 или LDAP. Их нужно будет выполнить повторно вручную после обновления системы. -
Если необходимо, подготовьте свежую версию конфигурационного файла инсталляции /usr/local/etc/premsetup/defaults.yaml. Например, в случае изменения настроек LDAP, обновления SSL-сертификатов и т. д.
-
Создайте копию конфигурационных файлов в разделе data боевой машины, запустив скрипт подготовки к обновлению:
-
Если у вас настроена интеграция с Почтой VK WorkSpace, при обновлении VK Teams до версии 23.10 и выше необходимо добавить query-параметр
wv=1
в конфигурационный файл /usr/local/nginx-im/html/myteam/myteam-config.json.Данный параметр должен быть указан в url конфига в секциях:
-
services
→config
→mail
→url
-
services
→config
→mail
→compose_url
"services": { "config": { ... "mail": { "url": "https://e.yourmaildomain.ru/api/v1/user/webauth/vkteams?wv=1", "compose_url": "https://e.<your_mail_domain>.ru/compose/?wv=1", ... }
Внимание
Параметр
wv=1
должен быть добавлен в /usr/local/nginx-im/html/myteam/myteam-config.json до того, как клиентские приложения будут обновлены до версии 23.10 и выше. Иначе почта в клиентском приложении будет работать некорректно. -
Шаг 1. Создание тестовой виртуальной машины
В рамках обновления необходимо поднять тестовую виртуальную машину с новой версией системы из OVA-файла:
-
Создайте тестовую виртуальную машину с отдельным IP-адресом.
-
Остановите тестовую виртуальную машину.
-
Замените раздел data на тестовой машине копией раздела data с боевой машины.
-
Запустите тестовую машину.
-
Восстановите /usr/local/etc/premsetup/defaults.yaml:
-
В файле /usr/local/etc/premsetup/defaults.yaml замените внешний IP-адрес сервиса на адрес тестовой виртуальной машины. Остальные настройки не меняются.
-
Выполните команду для инициализации всех сервисов:
-
Проверьте /usr/local/etc/premsetup/defaults.yaml на ошибки командой:
-
При отсутствии ошибок в предыдущих пунктах для запуска процесса обновления выполните команду:
-
Обновите конфигурацию, вернув специфичные для данной инсталляции настройки. Например, настройки S3 при использовании внешнего сервиса.
-
Выполните перезагрузку машины
Шаг 2. Тестирование
Тестирование новой виртуальной машины выполняется в два этапа: сначала на старых версиях клиентского ПО, затем на новых версиях клиентского ПО.
Для тестирования мобильных клиентов может быть использовать специальный DNS-сервер, который позволяет подменять IP-адрес для отдельных имен хостов.
Шаг 3. Обновление продуктовой системы
Обновление системы выполняется через замену образа.
Любые нестандартные настройки, выполненные после инсталляции рабочей системы, необходимо восстанавливать вручную. Процесс обновления заключается в замене корневого раздела рабочей системы новым:
-
На тестовой виртуальной машине выполните следующие действия:
1.1. Замените IP-адрес системы на боевой IP-адрес в сетевых настройках ОС. Как правило, это файлы ifcfg-*, route-* в каталоге /etc/sysconfig/network-scripts/.
1.2. Замените внешний IP-адрес в конфигурационных файлах сервисов:
-
Остановите тестовую машину.
-
Скопируйте root-раздел от тестовой машины в продуктовый (туда, где работает продуктовая инсталляция).
-
Остановите боевую машину.
-
Подключите копию root-раздела от тестовой машины к боевой.
-
Проверьте /usr/local/etc/premsetup/defaults.yaml на ошибки (команда не вносит изменения в настройки системы):
-
При отсутствии ошибок в предыдущих пунктах выполните:
-
Перезагрузите систему на боевой машине:
Система готова к работе.
Обновление VK Teams без использования тестовой виртуальной машины
Для обновления VK Teams без использования тестовой виртуальной машины необходимо выполнить шаги, представленные ниже.
Внимание
Все команды в консоли выполняются под пользователем root.
Подготовка к обновлению
- Распакуйте из OVA-файла образ root-диска в формате .vmdk.
- Составьте и сохраните список нестандартных настроек, выполненных без применения команды
premsetup.py --install
. Это настройки, которые выполнялись вручную и не могут быть выполнены при инсталляции, например, особые настройки S3 или LDAP. Их нужно будет выполнить повторно вручную после обновления системы. -
На виртуальной машине создайте бэкап конфигурационного файла сети в разделе data:
-
Создайте копию конфигурационных файлов VK Teams в разделе data виртуальной машины, запустив скрипт подготовки к обновлению:
-
Если у вас настроена интеграция с Почтой VK WorkSpace, при обновлении VK Teams до версии 23.10 и выше необходимо добавить query-параметр
wv=1
в конфигурационный файл /usr/local/nginx-im/html/myteam/myteam-config.json.Данный параметр должен быть указан в url конфига в секциях:
-
services
→config
→mail
→url
-
services
→config
→mail
→compose_url
"services": { "config": { ... "mail": { "url": "https://e.yourmaildomain.ru/api/v1/user/webauth/vkteams?wv=1", "compose_url": "https://e.<your_mail_domain>.ru/compose/?wv=1", ... }
Внимание
Параметр
wv=1
должен быть добавлен в /usr/local/nginx-im/html/myteam/myteam-config.json до того, как клиентские приложения будут обновлены до версии 23.10 и выше. Иначе почта в клиентском приложении будет работать некорректно. -
Обновление
-
Остановите виртуальную машину и сделайте снапшот.
-
В настройках виртуальной машины отключите диск с root-разделом.
-
Подключите диск с root-разделом новой версии в формате .vmdk.
-
Запустите виртуальную машину.
-
Восстановите конфигурационный файл сети из бэкапа:
-
Перезапустите сетевую службу:
-
Проверьте корректность внешнего IP-адреса виртуальной машины в интерфейсе:
-
Восстановите конфигурационные файлы VK Teams из бэкапа:
-
Произведите инициализацию сервисов VK Teams:
-
Проверьте конфигурационный файл инсталляции /usr/local/etc/premsetup/defaults.yaml на ошибки:
-
При отсутствии ошибок в предыдущих пунктах выполните:
-
Перезагрузите виртуальную машину:
Система готова к работе.
Дата обновления документа: 09.11.2023 г.