Кластерная установка Почты 26.3
Назначение документа
В документе описана процедура кластерной установки Почты. Минимальной отказоустойчивой конфигурацией для установки почтовой системы считается кластер на 9 машин.
Требования к администраторам
- Знание Linux на уровне системного администратора.
- Знание основ работы Систем управления базами данных (СУБД).
- Знание основ работы служб каталогов (Directory Service).
- Понимание основ контейнеризации.
- Знание основ работы сетей и сетевых протоколов.
- Знание основных инструментов для работы в командной строке: bash, awk, sed.
- Знание основ работы инфраструктуры доставки почты.
Дополнительная документация
Инструкция по установке обновлений на кластер
Что делать, если при входе в панель администратора появляется ошибка «Неверный пароль»
Как обновить лицензионный ключ
Установщик не может получить доступ до гипервизора
Настройка интеграции с LDAP-каталогами
Как настроить геораспределенную почту
Схема тестового кластера
Вне зависимости от размера кластера нужно соблюдать следующее соотношение виртуальных машин:
Минимальная отказоустойчивая конфигурация на 8 машин, которая будет описана в документе, выглядит таким образом:
- 1 ВМ отводится под мониторинг.
- 2 ВМ — под фронты.
- 2 ВМ — под базы данных.
- 3 ВМ — под хранилища.
Примечание
С релиза 26.3 Почта VK WorkSpace устанавливается с использованием среды контейнеризации Kubernetes. Рекомендуется выделять минимум 1 ВМ — под control plane ноду.
Дистрибутив Почты и файл onpremise-deployer_linux должны находиться на гипервизоре, отведенном под мониторинг.
Технические требования
Перед установкой убедитесь, что инфраструктура соответствует требованиям к инфраструктуре Почты VK WorkSpace. Там описаны поддерживаемые операционные системы, требования к CPU, виртуализации, дискам и сети, протоколы и порты, DNS-записи, SSL-сертификаты, настройки ОС, SELinux, антивирус и синхронизация времени, а также то, что нужно подготовить до начала установки.
Требования к ресурсам серверов
Внимание
Требования ниже не учитывают работу антивируса, DLP и других дополнительных систем устанавливаемых на сервера. Требования учитывают только базовые функции, если вы хотите включить дополнительные Продукты, то предварительно проконсультируйтесь с представителем VK о дополнительных системных требованиях.
По вопросам создания сайзинг-модели специально для вашей компании обратитесь к представителям VK. Минимальные технические параметры для 8 машин:
- Установщик + мониторинг: 16 vCPU, 24 GB RAM, 570 GB SSD.
- Фронт №1: 24 vCPU, 48 GB RAM, 570 GB SSD.
- Фронт № 2: 24 vCPU, 48 GB RAM, 570 GB SSD.
- База данных №1: 16 vCPU, 32 GB RAM, 570 GB SSD.
- База данных №2: 16 vCPU, 32 GB RAM, 570 GB SSD.
- Хранилище №1: 8 vCPU, 16 GB RAM, 570 GB SSD.
- Хранилище №2: 8 vCPU, 16 GB RAM, 570 GB SSD.
- Хранилище №3: 8 vCPU, 16 GB RAM, 570 GB SSD.
Также потребуется минимум одна виртуальная машина под Control Plane ноду Kubernetes кластера. Если вы используете несколько дата центров для инсталляции, то для каждого понадобится минимум одна нода Control Plane. Причем количество машин под Control Plane должно быть нечетным.
Рекомендация
Используйте процессоры Intel Xeon Gold 6140 и новее.
Требования к дискам (SSD, HDD, IOPS, задержки) приведены в разделе Какие диски использовать для сервисов.
Этапы установки
Весь процесс установки можно разделить на два этапа:
- В командной строке на сервере выполняются действия для запуска установщика.
- Последующая установка производится в специальном веб-интерфейсе.
Действия в командной строке на сервере
Шаг 1. Создайте пользователя deployer
При кластерной установке вам нужно создать пользователя deployer и скопировать ssh-ключи на всех виртуальных машинах в кластере. Необязательно добавлять один и тот же ssh-ключ, главное, чтобы ВМ с установщиком имела доступ по ssh к другим ВМ в кластере. Ниже алгоритм, который надо выполнить на ВМ с установщиком. На остальных машинах нужно создать пользователя deployer и скопировать ssh-ключи. /home/deployer/.ssh и /home/deployer/.ssh/authorized_keys должны быть с правами 600
-
В командной строке выполните последовательность команд:
sudo -i # Задаем пароль и создаем пользователя deployer DEPLOYER_PASSWORD=PASSWORD useradd -G astra-admin -U -m -s /bin/bash deployer echo deployer:"$DEPLOYER_PASSWORD" | chpasswd # Игнорируем ошибку "НЕУДАЧНЫЙ ПАРОЛЬ: error loading dictionary" # в случае, если она появилась # Перелогиниваемся под пользователем deployer sudo -i -u deployer ssh-keygen -t rsa -N "" # Нажимаем Enter (согласиться с вариантом по умолчанию) # Копируем ssh-ключ в нужную директорию cat /home/deployer/.ssh/id_rsa.pub >> /home/deployer/.ssh/authorized_keys chmod 600 /home/deployer/.ssh/authorized_keys # Опционально: проверяем, что сами к себе можем зайти без пароля ssh deployer@localhost exitsudo -i # Задаем пароль и создаем пользователя deployer DEPLOYER_PASSWORD=PASSWORD useradd -G wheel -U -m -s /bin/bash deployer echo deployer:"$DEPLOYER_PASSWORD" | chpasswd # Перелогиниваемся под пользователя deployer sudo -i -u deployer ssh-keygen -t rsa -N "" # Нажимаем Enter (согласиться с вариантом по умолчанию) # Копируем ssh-ключ в нужную директорию cat /home/deployer/.ssh/id_rsa.pub >> /home/deployer/.ssh/authorized_keys chmod 600 /home/deployer/.ssh/authorized_keys # Опционально: проверяем, что сами к себе можем зайти без пароля ssh deployer@localhost exitВнимание
Вся дальнейшая установка будет производиться под созданным пользователем deployer. Если вы планируете устанавливать под другим пользователем, это необходимо учитывать при дальнейшей установке. Также пользователь должен иметь права администратора.
-
Выполните команду
sudo visudo. -
В файле
/etc/sudoersуберите # в начале следующей строки: -
Выйдите из Vim c сохранением файла.
То же самое можно сделать с помощью редактора nano:
sudo EDITOR=nano visudo
# Находим нужную строку, удаляем # в ее начале
# Выходим из nano c сохранением изменений
Шаг 2. Распакуйте дистрибутив
Примечание
Перед распаковкой убедитесь, что архив скачался без повреждений. Как это сделать, описано в разделе Как проверить целостность скачанного дистрибутива?.
-
Распакуйте дистрибутив под пользователя deployer (в директорию
/home/deployer). Вы можете распаковать архив с дистрибутивом и в другую папку или создать подпапку. Нет разницы, каким архиватором пользоваться. Ниже приведен пример для unzip: -
Если при создании пользователя вы следовали инструкциям из Шага 1, то вам не нужно создавать директорию `/home/deployer', она уже создана.
-
Распакуйте основной архив deployer.tar:
-
Создайте директорию для статики и распакуйте архив:
-
Подготовьте Docker-репозиторий
-
Скопируйте файлы md5:
Шаг 3. Проверьте инфраструктуру с помощью InfraKit
Внимание
Начиная с релиза 26.2 проверки машин стали обязательными. Установщик при запуске из веб-интерфейса использует InfraKit для выполнения этих проверок. Рекомендуется запустить проверку вручную до начала установки, чтобы заранее выявить проблемы с оборудованием, настройками ОС и сетью.
InfraKit входит в состав дистрибутива. Отдельно скачивать его не нужно. После распаковки дистрибутива на сервере, где будет запускаться установщик, файлы InfraKit расположены по следующим путям:
- Запускаемый файл:
/home/deployer/configs/infrakit/infrakit-bin - Файл конфигурации:
/home/deployer/configs/infrakit/project-spec.yaml
Чтобы запустить проверку:
-
Откройте файл
/home/deployer/configs/infrakit/project-spec.yamlи настройте параметры подключения к серверам в секцииhostsв простом или расширенном формате. Подробнее смотрите в разделе Форматы описания хостов. -
Выполните команду на сервере с распакованным дистрибутивом, заменив
на внешний IP-адрес этого сервера: -
После завершения проверок отчёт выводится в консоль. В нём указан статус каждой проверки и описание ошибок при их возникновении.
InfraKit проводит следующие проверки:
| Название проверки | Что проверяется |
|---|---|
| Проверка ОС | Дистрибутив, версия ядра и параметры ядра |
| Проверка CPU | Архитектура, количество ядер, частота, наличие обязательных инструкций |
| Проверка памяти | Общий объём и характеристики оперативной памяти |
| Проверка гипертрейдинга | Состояние Hyper-Threading на процессоре |
| Проверка виртуализации | Тип виртуализации (KVM, VMware и др.) |
| Проверка SSH доступа | Возможность входа по SSH-ключу |
| Проверка sudo без пароля | Возможность выполнения команд sudo без ввода пароля |
| Проверка SELinux | Статус SELinux (включён/выключён) |
| Проверка места на диске | Размеры и параметры файловых систем |
| Проверка IOPS | Производительность дисковой подсистемы |
| Проверка портов | Доступность и состояние обязательных портов |
| Проверка DNS | DNS-серверы и записи |
| Проверка tuned | Активный профиль tuned |
| Проверка swap | Наличие и состояние swap |
Дополнительная информация о работе с InfraKit и расшифровке его отчетов представлена в разделе Проверки инфраструктуры.
Шаг 4. Разрешите Port Forwarding
Для корректной работы установщика в настройках SSH на всех машинах должен быть разрешен TCP Forwarding. Чтобы изменить настройку TCP Forwarding, нужно в файле /etc/ssh/sshd_config установить следующее значение:
Шаг 5. Запустите установщик как сервис
Установщик onpremise-deployer_linux рекомендуется запускать как сервис. При таком запуске не придется прибегать к дополнительным мерам (screen, tmux, nohup), позволяющим установщику продолжить работу в случае потери соединения по SSH.
Важно
Для подключение администратора к веб-интерфейсу установщика используется порт 8888. Рекомендуется настроить защиту порта через firewall либо наложенными средствами (TLS-proxy).
Не рекомендуется оставлять установщик включенным, если вы не проводите работы по установке и настройке системы. Запустили установщик → Провели установку → Выключили установщик. Если нужна донастройка системы, то снова включите установщик.
Чтобы запустить установщик как сервис, выполните команду (подходит для Astra Linux и РЕД ОС):
sudo ./onpremise-deployer_linux -concurInstallLimit 5 \
-serviceEnable -serviceMake -serviceUser deployer
По умолчанию выставлен лимит в 5 потоков, при необходимости вы можете увеличить количество потоков до 10, однако это увеличит и нагрузку на систему. Использование более чем 10 потоков не рекомендуется.
Ответ в случае успешного запуска установщика выглядит следующим образом:
Примечание
Невозможность включения службы rsyslog не повлияет на корректность работы сервиса.
Если веб-интерфейс не открывается по адресу http://server-ip-address:8888, то проверьте журналы:
И убедитесь, что порт 8888 слушают:
Действия в веб-интерфейсе установщика
- Перейдите в веб-интерфейс установщика, в адресной строке браузера укажите адрес:
http://server-ip-address:8888. Если перейти по этому адресу не удается, убедитесь, что firewall был отключен. -
На стартовой странице нажмите на кнопку Установить.
Шаг 1. Добавьте лицензионный ключ
-
Введите лицензионный ключ или укажите путь к файлу лицензии .lic.
-
Нажмите кнопку Сохранить.
- Нажмите на кнопку Далее.
Информацию о том, как обновить лицензионный ключ или проверить сроки действия лицензий по продуктам VK WorkSpace, вы сможете найти в разделе с дополнительной документаци.
Шаг 2. Выберите продукты и компоненты
- Включите флаги Диск VK WorkSpace и Почта VK WorkSpace.
- Нажмите на кнопку Далее.
-
Включите нужные вам компоненты в разделе Почта.
Внимание
Если вы хотите настроить геораспределенную почту, то обязательно включите ее сразу. При этом одновременно с Распределённой инсталляцией нельзя включить продукт Интеграция с другими инсталляциями VK WorkMail.
Для функционирования распределенной инсталляции необходимо, чтобы продукт был включен на всех инсталляциях, которые вы хотите объединить. И он должен быть включен при первичной установке. Если вы включите продукт после установки, то инструкция по настройке геораспределенной почты не сработает.
Продукт Описание Система Antispam Комплекс сервисов, анализирующих письма и помечающих их как спам. Подробнее: Как включить Антиспам систему Система доставки обновлений антиспама Сервис обновления сигнатурных баз Антиспама с серверов VK Календарь Обязательный продукт. Продукт VK WorkSpace для управления календарями и событиями Календарь. Миграция календарей по протоколу EWS Миграция календарей пользователей из внешних систем для работы в VK WorkSpace. Миграция производится по протоколу EWS Календарь. Интеграция календаря с TrueConf (сервер) Календарь. Интеграция календаря с TrueConf (плагин) Для создания ссылок на звонки TrueConf при планировании встреч Календарь. Бот календаря для мессенджера VK WorkSpace Настройки для автоматической отправки уведомлений о событиях Календаря в бот мессенджера VK WorkSpace Календарь. Планшеты для переговорных комнат Extron Бронирование и управление переговорными комнатами через планшеты Extron в Календаре VK WorkSpace Поддержка протокола CardDAV Синхронизации контактов между почтовой системой и клиентскими приложениями API больших вложений VK WorkMail Обязательный продукт. Набор сервисов для хранения больших вложений почты Система расширенных транспортных правил Настройки для управления потоками входящих и исходящих писем в целях усиления безопасности Управление размерами ящиков и политиками хранения писем в почтовых ящиках Beta. Назначение групповых политик хранения на отдельные группы пользователей Импорт данных из Microsoft Exchange Сервис получения из MS Exchange in-place архивов, пользовательских правил обработки почты из MS Exchange Распределённая инсталляция Возможность настройки связей между отдельно развёрнутыми инсталляциями для управления маршрутизацией почты, просмотра занятости пользователей в календарях и объединения контактов в общую адресную книгу. Неприменимо для инсталляции, развёрнутой в минимально рабочей конфигурации на одной виртуальной машине. Подробнее: Геораспределенная Почта VK WorkSpace Поддержка режима катастрофоустойчивости 2 ЦОД + witness Дает возможность установить VK WorkSpace в катастрофоустойчивой конфигурации на двух ЦОД и дополнительном сервере, не находящемся в этих двух ЦОД Экспорт событий во внешний брокер (Kafka) Позволяет настроить экспорт событий во внешнюю Kafka для дальнейшей аналитики Редактирование данных в AD Beta. Сервис редактирования данных в Active Directory Управление автоудалением писем Beta. Настройки управления автоматическим удалением писем Бот новых почтовых сообщений для для мессенджера VK WorkSpace Уведомления о новых полученных письмах будут отправляться в бот мессенджера VK WorkSpace Автоматическое удаление старых писем Deprecated. Дает возможность настраивать автоматическое удаление старых писем. Устаревшая функциональность Компактная версия некоторых сервисов Компактная версия сервисов, обрабатывающих почтовые очереди Интеграция с другими инсталляциями VK WorkSpace Deprecated. Устаревшая версия геораспределенной Почты VK WorkSpace. Не поддерживается и не рекомендуется к включению Поиск писем во всех ящиках Опция поиска и удаления писем во всех ящиках в интерфейсе Админпанели Поддержка протокола POP3 Система отправки push-уведомлений на мобильные устройства Анализ логов доставки почты Beta. Набор сервисов для логирования почты. Хранит в базе данных сведения о получателе, отправителе, теме письма и времени прохождения сообщения через сервера внутри установки Примечание
Есть компоненты, настройка которых производится в административной панели (
biz.<почтовый домен>), но включить их нужно при установке. Например, Система расширенных транспортных правил и Система миграции Диска VK WorkSpace из внешних сервисов. -
Нажмите на кнопку Далее.
-
Включите нужные вам компоненты в разделе Диск.
Продукт Описание Система миграции Диска VK WorkSpace из внешних сервисов Beta. После включения опции появится возможность мигрировать в VK WorkSpace файлы из Microsoft OneDrive, Google Drive, NextCloud Система проверки файлов Диска через DLP Beta. Настройки дополнительной проверки файлов Диска с помощью внешней DLP-системы для повышения уровня безопасности Интеграция с антивирусом по протоколу ICAP Дает возможность интегрировать сторонние антивирусные системы с VK WorkSpace -
Нажмите на кнопку Далее.
-
Включите нужные вам компоненты в разделе Администрирование.
Внимание
Для инсталляций до 100000 пользователей необходимо включить облегченную версию аудита на PostgreSQL. По умолчанию в Почте включен продукт Система аудита действий пользователя на основе ScyllaDB, она предназначена для инсталляций, где пользователей больше 100000.
Продукт Описание Аутентификация v26.2.0 Обязательный продукт. Настройка способов входа и защиты аккаунтов Аутентификация v26.2.0. Единый вход (SSO) Вход в систему через внешний сервис идентификации (IdP) Аутентификация v26.2.0. Вход через Kerberos Вход через Kerberos для пользователей корпоративной сети Вход через Kerberos. Blitz (внешний) Beta Вход через Kerberos. Keycloak (внутри инсталляции) v17.0.1 Вход через Kerberos. Keycloak (внешний) Аутентификация v26.2.0. Двухфакторная аутентификация Дополнительная проверка личности при входе Двухфакторная аутентификация. Коды подтверждения в VK WorkSpace Получение кодов подтверждения в VK WorkSpace при входе в систему Аудит действий пользователя Сервисы записи и чтения действий пользователей, хранилище действий пользователей (ScyllaDB) Аудит действий пользователя. Дублирование действий пользователей во внешние хранилища Нужно, чтобы хранить историю операций пользователей отдельно от почтовой системы Система BI-аналитики Beta Система BI-аналитики. Kafka внутри инсталляции 16 GB RAM, 8 vCPU Консолидация серверов Tarantool Переключает тарантулы выбранных групп на консолидированные Базы Данных Включение обратной совместимости с версиями VK WorkSpace для определенных сервисов, ранее поддерживающих только работу с MySQL. Базы Данных. Использовать MySQL Инструменты разработки Включает дополнительные сервисы для тестирования системы, например, генерирование аккаунтов Поддержка Российских криптографических стандартов (ГОСТ TLS) Beta. Позволяет VK WorkSpace работать с российскими криптографическими стандартами: ГОСТ Р 34.12-2015 (шифрование) и ГОСТ Р 34.10-2012 (электронные подписи). Это необходимо для обеспечения безопасного соединения Система групповых политик Beta Система групповых политик. Kafka внутри инсталляции 16 GB RAM, 8 vCPU Встроенное хранилище образов контейнеров Хранения образов контейнеров почтовой системы внутри вашей инфраструктуры VK Kubernetes Beta. Возможность развертывания в среде контейнеризации Kubernetes Резервное копирование (бэкап) Средства резервного копирования данных диска, почты, календарей, профилей пользователей и адресных книг Мониторинг Набор сервисов, обеспечивающих хранение метрик сервисов в базе данных Prometheus и визуализацию данных с помощью Grafana Мониторинг. Экспортер метрик из Victoria Metrics в Zabbix Сервис, обеспечивающий отправку данных из Victoria Metrics и Node Exporter в Zabbix Сбор и отправка метрик Сборщики и трансляторы Graphite и Prometheus-метрик Прогноз и контроль объёма почтового хранилища Beta. Мониторинг заполнения хранилища почты Интеграция с редактором «МойОфис» по протоколу WOPI Отменить проверку контейнеров OneDB после запуска Редактор «Р7-Офис» внутри инсталляции Позволяет использовать встроенный в VK WorkSpace редактор «Р7-Офис». Требует дополнительных ресурсов системы Интеграция с редактором «Р7-Офис» по протоколу WOPI Аудит действий пользователя (облегчённая версия) Сервисы записи и чтения действий пользователей, хранилище действий пользователей (PostgreSQL) Аудит действий пользователя (облегчённая версия). Дублирование действий пользователей во внешние хранилища Нужно, чтобы хранить историю операций пользователей отдельно от почтовой системы Ядро объектного хранилища S3 Обязательный продукт. Сервисы, обеспечивающие хранение любых неструктурированных данных по протоколу S3 Ядро объектного хранилища S3. Ядро распределённого файлового хранилища Обязательный продукт. Отвечает за логику распределения данных по узлам, целостность и отказоустойчивость хранилища Ядро объектного хранилища S3. Внешний S3 как хранилище для Почты и Диска Позволяет хранить письма, вложения писем, поисковые сниппеты и файлы Диска во внешнем S3-хранилище вместо встроенного. Часть хранилищ метаданных при этом остаётся внутри инсталляции. Включить продукт можно только при первичной установке, отключить его после включения нельзя. Подробнее: Как подключить внешний S3 как хранилище для Почты и Диска Интеграция почты с мессенджером VK WorkSpace -
Включите продукты VK Kubernetes и Логирование. Логирование позволяет сохранять историю логов пода, но потребуется больше дискового пространства.
-
Нажмите на кнопку Далее.
Шаг 3. Добавьте гипервизоры (серверы)
В релизе 26.2 появилась возможность использовать готовые шаблоны для создания кластерных инсталляций продуктов VK WorkSpace. Шаблоны позволяют автоматизировать следующие шаги при установке:
Ниже будут описаны шаги для ручной настройки машин и для шаблонов.
Как заполнять поле Приватный ключ?
-
В поле Приватный ключ выберите Добавить новый ключ.
-
В поле Имя ключа введите название ключа для его дальнейшей идентификации, например: deployerRSA.
- Перейдите в консоль.
- Выполните команду
cat ~/.ssh/id_rsaи скопируйте ключ. -
Затем вставьте его в поле Приватный ключ. Его нужно указать полностью, включая:
-----BEGIN RSA PRIVATE KEY-----и-----END RSA PRIVATE KEY----- -
Поле Пароль ключа оставьте пустым.
- Кликните по кнопке Добавить.
-
Новый ключ должен отобразится в панели справа.
-
Нажмите Закрыть.
Для установки вручную переключитесь на вкладку Ручная настройка. Ниже описано как добавить одну из worker машин и как добавить Control Plane ноду.
Чтобы добавить worker-ноду:
- Нажмите на кнопку Добавить.
-
Заполните поля:
-
IP-адрес — адрес машины, на которую производится установка.
-
Имя сервера — укажите имя сервера (гипервизора) или оставьте поле пустым. В случае если вы оставите поле незаполненным, имя гипервизора будет взято из
hostname -sи добавится автоматически. В документации будет использовано имя hypervisor1. -
Имя пользователя — укажите имя того пользователя, под которым запущен установщик. В рассматриваемом примере это пользователь deployer.
-
-
Заполните поле Метки:
- Напротив server, в выпадающем меню выберите опцию worker.
-
Напротив DC укажите любое название дата-центра.
Внимание
Если вы используете несколько дата центров для инсталляции, то для каждого понадобится минимум одна нода Control Plane. Причем количество машин под Control Plane должно быть нечетным.
-
Напротив project выберите опцию mail.
- Для машины отведенной под мониторинг напротив type выберите: monitoring и registry. Для всех остальных машин укажите одну опцию type соответствующую роли машины: storage, database, frontend.
-
Оставьте чекбокс Сервер во внешней (dmz) зоне пустым.
-
После заполнения полей нажмите на кнопку Добавить сервер — гипервизор отобразится в веб-интерфейсе установщика.
Примечание
При добавлении сервера реализована проверка на наличие команд tar, scp и необходимых инструкций виртуализации на процессорах. Если при проверке они не будут найдены, то сервер не будет добавлен, а администратор получит сообщение об ошибке.
-
Аналогичным образом добавьте еще 6 гипервизоров:
- 2 — под фронты,
- 1 — под базы данных,
- 3 — под хранилища.
-
Добавьте ноду Control Plane. Ее рекомендуется устанавливать на отдельную виртуальную машину. Но она может быть установлена на гипервизор отведенный под базы данных.
-
Если нода Control Plane будет установлена на ВМ под базы данных, то при добавлении гипервизора, в поле Метки, напротив server укажите опцию control-plane.
-
Нажмите Далее внизу страницы.
- Переключитесь на вкладку Готовые шаблоны.
- Укажите Количество пользователей на вашей инсталляции.
- Укажите Тип виртуальной машины. Тип виртуальной машины влияет на количество виртуальных машин. Чем мощнее будут машины, тем меньше их понадобится для инсталляции.
- Укажите Лимит почтового ящика (Gb). В этом поле указывается ожидаемый максимальный размер почтового ящика пользователей. В зависимости от этого рассчитывается количество необходимого места на дисках.
- Создайте виртуальные машины с указанными параметрами, если не делали этого раньше.
- Заполните IP-адреса машин.
- Для каждой машины нажмите на поле Учетные данные, нажмите кнопку Добавить и добавьте SSH-ключ, сгенерированный на машине с установщиком.
-
Поле Дата-центр нужно заполнять только, если на этапе выбора продуктов вы включили Поддержка режима катастрофоустойчивости 2 ЦОД + witness.
-
Нажмите Далее внизу страницы.
Шаг 4. Проверьте серверы на соответствие требованиям
В открывшемся окне нажмите Запустить проверки. Будут выполнены следующие проверки:
- Проверка ОС, дистрибутива и параметры ядра.
- Проверка архитектуры CPU, количества ядер и обязательных фич.
- Проверка общего объема и характеристик оперативной памяти.
- Проверка размеров и параметров файловых систем.
- Проверка производительности дисковой подсистемы по IOPS.
- Проверка доступности и состояния обязательных портов.
- Проверка DNS-серверов и записей.
- Проверка активного tuned профиля.
- Проверка наличия и состояния swap.
Примечание
Если проверка активного tuned профиля завершилась с ошибкой, отключите tuned на сервере — для этого выполните команду:
После внесения изменений запустите проверки повторно.
После успешного выполнения всех проверок нажмите Далее.
Шаг 5. Настройте кластер Kubernetes
Чтобы настроить Kubernetes кластер перейдите в раздел Настройки -> Kubernetes. Или по адресу http://server-ip-address:8888/config/main/k8s/commonTab, если оно не откроется автоматически.
В разделе Общие настройки укажите:
- Режим маршрутизации: VXLAN.
- Namespace по умолчанию — пространство имен, в котором будут работать сервисы Почты.
- Домен в кластере K8s.
- Использовать WG — установщик самостоятельно установит и настроит WireGuard на серверах на шаге
enable_hybrid_bgp. - Tunnel CIDR — диапазон адресов для интерфейсов WireGuard или
tunl0. - Версия Kubernetes.
Заполните поля в разделе Настройки кластеров. Пример заполнения полей для трех кластеров:
Шаг 6. Доменные имена
Подробную информацию о создании доменных имен вы найдете в разделе DNS-записи.
На вкладке Доменные имена необходимо заполнить все поля:
- Название вашей компании — введите название компании, которое будет отображаться в интерфейсе почты.
- Сайт вашей компании — укажите сайт вашей компании.
- Основной домен для сервисов — в поле необходимо указать ранее созданный Основной домен для почты.
- Домен для облачных хранилищ — в поле введите ранее созданный Домен для облачных хранилищ.
Внимание
Для доменных имен нельзя использовать etc/hosts.
Когда все поля будут заполнены, нажмите на кнопку Сохранить для перехода к следующему шагу.
После сохранения доменных имен появятся ошибки. Они пропадут после добавления SSL-сертификатов на следующем шаге.
Добавление SSL-сертификатов
-
Нажмите на кнопку Добавить сертификат под заголовком SSL-сертификаты.
-
В открывшейся форме введите сертификат и ключ. Их необходимо указать полностью, включая:
-----BEGIN CERTIFICATE----- и -----END CERTIFICATE-----
и
-----BEGIN PRIVATE KEY----- и -----END PRIVATE KEY-----. -
Кликните по кнопке Сохранить.
Есть второй вариант:
- Нажмите на кнопку Выбрать файл.
- Укажите путь к файлу с сертификатом .crt.
- Укажите путь к файлу с ключом .key.
- Кликните по кнопке Сохранить.
Примечание
Приватный ключ должен быть добавлен в открытом виде, без секретной фразы. Закодированный ключ отличается от открытого наличием слова ENCRYPTED: BEGIN ENCRYPTED PRIVATE KEY.
Если всё верно, в интерфейсе не будет отображаться ошибок и красной подсветки. Нажмите на зеленую кнопку Далее.
Шаг 7. Установка гипервизоров и Kubernetes кластера
Чтобы установить гипервизоры и Kubernetes кластер, запустите автоматическую установку.
На изображении ниже приведен пример того, как выглядит веб-интерфейс установщика после завершения установки всех гипервизоров.
Если на гипервизорах есть шаги, помеченные серым или желтым цветом, то запустите автоматическую установку еще раз.
Дополнительных действий не требуется. Переходите к следующему шагу.
Шаг 8. Добавьте хранилище секретов
В релизе 26.3 секреты из main.yaml хранятся в vault — специализированном хранилище секретов от HashiCorp. Это хранилище типа «ключ-значение», данные в котором хранятся в зашифрованном виде. Для отказоустойчивости несколько инстансов vault объединяются в кластер по алгоритму распределенного консенсуса (RAFT).
Для начала работы с хранилищем его необходимо инициализировать: при инициализации указывается, сколько ключей для разблокировки (unseal keys) сгенерировать и сколько из них требовать для распечатки. Инициализация возвращает токен суперпользователя (rootToken) и ключи для распечатки (unseal keys), которые необходимы для дальнейшей работы с хранилищем.
Каждый перезапуск vault приводит его в состояние «запечатан» (sealed), и его надо распечатать (unseal).
Пример работы с ключами
Есть 10 доверенных сотрудников, при создании хранилища мы создаем 10 ключей и раздаем каждому сотруднику по одному ключу. Чтобы распечатать хранилище, будем требовать 3 ключа. Поэтому, когда нужно будет распечатать vault, нам потребуется 3 сотрудника, чтобы его распечатать.
Чтобы добавить и инициализировать хранилище:
- Нажмите кнопку Добавить внизу главной страницы веб-интерфейса установщика.
- Выберите опцию Хранилище секретов.
- Выберите контейнер vault с помощью чекбокса.
-
В списке гипервизоров отметьте гипервизоры, на которых будут размещены инстансы vault.
Примечание
Для отказоустойчивости vault использует кластер RAFT, поэтому в кластерной установке размещайте инстансы vault на гипервизорах с ролями хранилищ. При работе по схеме 2 ЦОД + witness один инстанс должен быть размещен на witness-ноде.
-
Нажмите на кнопку Добавить.
- Запустите автоматическую установку — после ее завершения инстансы vault будут запущены.
- Перейдите в раздел Обслуживание -> Хранилище секретов или по адресу
http://server-ip-address:8888/service/vault. -
Если vault устанавливается впервые, нажмите кнопку Инициализировать Хранилище и задайте параметры инициализации:
- Всего ключей для распечатывания — сколько ключей сгенерировать.
- Минимум ключей для распечатывания — сколько ключей потребуется ввести для распечатки (unseal) хранилища. Значение не должно превышать общее количество ключей.
- Сохранить ключи в Deployer — включите опцию, чтобы установщик сохранил ключи и мог распечатывать хранилище в автоматическом режиме.
-
После инициализации в веб-интерфейсе отобразятся ключи для распечатки и токен суперпользователя. Сохраните эту информацию.
Внимание
В случае утери ключей хранилище придется инициализировать заново. Это приведет к перегенерации всех секретов и перезапуску почти всех сервисов.
При инициализации установщик автоматически распечатает хранилище. Если вы обновляете инсталляцию с версии 26.2.3, миграция старых секретов из main.yaml произойдет автоматически.
Распечатка хранилища
Если при инициализации вы включили опцию Сохранить ключи в Deployer, установщик будет автоматически распечатывать хранилище при каждом своем перезапуске и запуске задачи up_container. В этом случае ключи для распечатывания сохраняются на машине с установщиком в файле /home/deployer/workmail/.secStoreKeys.yaml. Если установщику не удалось распечатать хранилище, установка будет заблокирована.
Чтобы распечатать хранилище вручную:
- Перейдите на страницу
http://server-ip-address:8888/service/vault. - В блоке Распаковка Хранилища секретов введите ключи, полученные при инициализации.
- Нажмите кнопку Распаковать (unseal).
В кластерной установке инициализация выполняется только на одном инстансе vault — остальные инстансы подключатся к нему и инициализируются самостоятельно. Распечатка выполняется на каждом инстансе.
Проверка состояния хранилища
На странице http://server-ip-address:8888/service/vault отображается состояние каждого инстанса vault: запущен ли он, инициализирован, запечатан или распечатан, готов ли к работе. Также отображаются «Количество ключей для распечатывания», «Количество необходимых секретов» и «Количество доступных секретов» — последние два значения должны совпадать.
Инстанс готов к работе, когда он запущен, инициализирован и распечатан, а количество доступных секретов совпадает с количеством необходимых.
Установщик автоматически проверяет актуальность секретов при каждом перезапуске и распечатке хранилища и при необходимости мигрирует или добавляет их.
Шаг 9. Распределение подов по гипервизорам
Кликните по значку
и перейдите в раздел Описание сервисов, чтобы посмотреть развернутую информацию о назначении ролей, их дублируемости и зависимостях. В этом же выпадающем меню вы найдете дополнительную документацию, сможете включить или выключить продукты (внутри раздела Продукты) и обновить лицензионный ключ.
Внимание
Чтобы повысить отказоустойчивость Почты распределяйте одноименные сервисы по разным гипервизорам. Так, в случае выхода из строя одного из гипервизоров, Почта сможет продолжить работу и восстановление гипервизора пройдет быстрее.
По завершении установки всех гипервизоров можно приступать к распределению и генерации подов.
В нижней части экрана выберите Добавить -> Несколько подов.
Откроется окно выбора ролей.
При распределении ролей нужно соблюдать такой порядок:
- Хранилища + raft
- xtaz
- Базы данных
- Мониторинг
- Почтовый транспорт
- API
- Все, что осталось (опционально)
Внимание
Порядок распределения ролей принципиально важен, при его нарушении вы столкнетесь с ошибками.
Для выбора ролей используйте поле Теги в качестве фильтра.
Порядок действий при распределении подов
Хранилища
Первыми должны быть выбраны роли для хранилищ:
- В колонке Тег нажмите на значок
и в выпадающем меню выберите Хранилище. - В колонке Установлено нажмите на значок
и в строке Не более установите значение 0. -
В колонке Тип нажмите на значок
и в выпадающем меню выберите StatefulSet. -
Отметьте все доступные для установки роли с помощью чекбокса в таблице.
-
Ниже в списке гипервизоров отметьте те, которые были отведены под хранилища.
-
Режим генерации — На каждом гипервизоре.
-
Нажмите на кнопку Добавить. Всплывающее окно, в котором выполнялись предыдущие действия, закроется.
- Аналогично добавьте роли с типом Deployment. В поле Кластер K8s выберите кластер для сервисов Почты. Название кластера указывалось на Шаге 5.
На гипервизоры-хранилища необходимо добавить кластер raft.
- В колонке Тег нажмите на значок
и в выпадающем меню выберите raft. - В колонке Установлено нажмите на значок
и в строке Не более установите значение 0. Если пропустить этот фильтр, кластер не соберется. - Отметьте все доступные для установки роли с помощью чекбокса в таблице.
- Ниже в списке гипервизоров отметьте те, которые были отведены под хранилища.
- Нажмите на кнопку Добавить. Всплывающее окно, в котором выполнялись предыдущие действия, закроется.
На каждом из гипервизоров-хранилищ нужно дополнительно сгенерировать еще по одному контейнеру xtaz.
Внимание
В рассматриваемой конфигурации кластера на 8 машин общее количество подов xtaz должно стать равным 6.
- В колонке Роль нажмите на значок
и введите xtaz. - Очистите значение фильтра в колонке Установлено.
- Выберите контейнер xtaz с помощью чекбоксов.
- В списке гипервизоров отметьте те, которые были отведены под хранилища.
-
Нажмите на кнопку Добавить.
Внимание
Для всех последующих ролей В колонке Установлено, при клике на значок
, в строке Не более должно быть установлено значение 0 в фильтре Установлено не более. Если пропустить этот фильтр, кластер не соберется.
Базы данных
Следующий шаг — распределение ролей для баз данных.
- В колонке Тег нажмите на значок
и в выпадающем меню выберите База данных. - В колонке Установлено нажмите на значок
и в строке Не более установите значение 0. - В колонке Тип нажмите на значок
и в выпадающем меню выберите StatefulSet. - Отметьте Все доступные для установки роли.
- Ниже выберите гипервизоры, отведенные под базы данных.
- Нажмите на кнопку Добавить.
- Аналогично добавьте роли с типом Deployment. В поле Кластер K8s выберите кластер для сервисов Почты. Название кластера указывалось на Шаге 5.
Мониторинг
Чтобы добавить роли для мониторинга, повторно откройте окно выбора ролей.
- В колонке Тег нажмите на значок
и в выпадающем меню выберите Мониторинг. - В колонке Установлено нажмите на значок
и в строке Не более установите значение 0. - Отметьте Все доступные для установки роли.
- Выберите гипервизор-мониторинг.
- Нажмите на кнопку Добавить.
- Аналогично добавьте роли с типом Deployment. В поле Кластер K8s выберите кластер для сервисов Почты. Название кластера указывалось на Шаге 5.
Фронты
Далее нужно распределить роли для почтового транспорта. Перейдите в окно выбора ролей, нажав Добавить -> Несколько подов.
- В колонке Тег нажмите на значок
и в выпадающем меню выберите Почтовый транспорт. - В колонке Установлено нажмите на значок
и в строке Не более установите значение 0. - Отметьте Все доступные для установки роли.
- Выберите гипервизоры, отведенные под фронты.
- Нажмите на кнопку Добавить.
- Аналогично добавьте роли с типом Deployment. В поле Кластер K8s выберите кластер для сервисов Почты. Название кластера указывалось на Шаге 5.
Завершающий этап — распределить роли для API.
- В колонке Тег нажмите на значок
и в выпадающем меню выберите API. - В колонке Установлено нажмите на значок
и в строке Не более установите значение 0. - Отметьте Все доступные для установки роли.
- Выберите гипервизоры, отведенные под фронты.
- Нажмите на кнопку Добавить.
- Аналогично добавьте роли с типом Deployment. В поле Кластер K8s выберите кластер для сервисов Почты. Название кластера указывалось на Шаге 5.
Убедитесь, что все роли распределены
- Откройте окно добавления выбора ролей, нажав на Добавить -> Несколько подов.
- В колонке Установлено нажмите на значок
и в строке Не более установите значение 0. - Список ролей, доступных для добавления, должен быть пустым. Если это не так, распределите оставшиеся роли по гипевизорам в соответствии с тегами.
После того как все контейнеры сгенерированы, нажмите на зеленую кнопку Далее в правом верхнем углу.
Шаг 10. Хранилища
Внимание
Минимальный размер раздела диска, используемого под хранилище, составляет 25 GB.
В разделе формируются дисковые пары для гипервизоров-хранилищ. Разделение на дисковые пары происходит автоматически, если вы не подключали дополнительные диски. В таком случае можно переходить в настройке Mescalito, описанной в следующем шаге.
Под дисковой парой подразумеваются связанные разделы дисков, которые размещены на двух разных гипервизорах. Для повышения отказоустойчивости на дисковую пару записываются одни и те же данные.
Внимание
Удалять дисковые пары после установки нельзя. Если удалить дисковые пары, то данные будут утеряны.
Особенности работы с хранилищами zepto
Каждому кластеру zepto нужен обособленный диск. Zepto совершает ряд maintenance-операций, помимо чтения и записи с дисков. Например, сверяет контрольные суммы файлов. Такие операции создают дополнительную нагрузку на диск. Поэтому zepto необходим эксклюзивный доступ к диску. Так он сможет корректно планировать онлайн и офлайн задачи по доступу к диску и при этом сохранять допустимый уровень нагрузки на дисковую подсистему.
Не подключайте 2 zepto-кластера на одни и те же диски, диски могут деградировать из-за повышенного уровня нагрузки. Не устанавливайте к уже установленному кластеру zepto любой другой компонент, создающий нагрузку на диск.
Как распределить дисковые пары вручную
Ниже описана процедура ручного распределения дисковых пар. Дисковые пары нужно распределять вручную, если вы подключали дополнителные диски.
Минимальная отказоустойчивая конфигурация состоит из трех машин, на каждой из которых по 2 дисковых раздела:
- Диск хранилища 1 разделен на 2 части.
- Диск хранилища 2 разделен на 2 части.
- Диск хранилища 3 разделен на 2 части.
Всего 6 разделов дисков (2 на одном гипервизоре, 2 — на втором, еще 2 — на третьем).
При такой конфигурации:
- Всегда есть пара на запись.
- Остальные пары доступны для чтения.
При сборке хранилищ дисковые пары объединяются в «логические треугольники». Объединение происходит по принципу: 1-2, 2-3, 3-1.
Примечание
Стрелки на изображении показывают, какие диски объединены в пару. Нижняя часть изображения иллюстрирует ситуацию, когда одно из хранилищ вышло из строя.
В списке слева доступные хранилища будут отмечены восклицательными знаками. Нужно перейти на вкладку каждого хранилища и сформировать дисковые пары.
Внимание
В интерфейсе под Диском 1 и Диском 2 подразумеваются разделы хранилищ. Между собой также нужно будет объединить часть диска, размещенного на одном хранилище, с частью диска, размещенного на другом хранилище. При увеличении количества разделов дисков и/или подключенных дисков принцип объединения сохраняется.
Чтобы добавить дисковые пары вручную:
- Нажмите на кнопку Добавить.
- В выпадающем меню выберите контроллер и устройство для Диска 1 первой пары.
- Выберите контроллер и устройство для Диска 2 первой пары.
- Повторите шаги 2-3 еще для двух пар.
На изображении ниже приведен пример для хранилища zepto_skel:
Раздел Mescalito
Для обеспечения отказоустойчивости в разделе уже заданы автоматические настройки кластеров хранилищ писем.
-
Обработчики писем (mescalito) — специальные процессы внутри контейнеров stm. Задача обработчика — собрать письмо из частей, находящихся в разных хранилищах.
-
Хранилища индексов (tarantool xtaz) — хранилища «горячих» данных почтовых ящиков.
Информация
Если в логах контейнеров xtaz есть ошибка failed to allocate X bytes (или ошибки с подобной формулировкой), то контейнерам не хватает памяти.
Существует 2 типа ящиков:
- Сервисный — admin@admin.qdit (администраторы почты).
- Корпоративный — все остальные ящики системы, которые администрируются в
biz.<почтовый домен>.
Внимание
Обработчики работают в однопоточном режиме. Перенаправление информации на другой обработчик будет производиться только в случае недоступности хранилища, на котором установлен соответствующий stm.
Чтобы обеспечить отказоустойчивость для каждого кластера необходимо назначать по 2-3 обработчика, которые находятся на разных машинах или в разных дата-центрах.
Контейнеры stm устанавливаются на каждый гипервизор, поэтому количество обработчиков равно количеству машин, отведенных под хранилища. При необходимости могут быть сгенерированы дополнительные контейнеры stm вручную.
fstab
Раздел актуален для ситуаций, когда были подключены дополнительные диски.
Необходимый набор томов для контейнеров хранилища выдается в виде набора записей для /etc/fstab.
Внимание
Установщик ничего не монтирует и не изменяет в /etc/fstab.
Отредактировать fstab и смонтировать разделы нужно самостоятельно в консоли. Монтировать рекомендуется по UUID.
Ниже для примера приведен скриншот с одного из наших тестовых стендов.
Пример команд для монтирования разделов:
vi /etc/fstab
# Вставляем строчки, скопированные из веб-интерфейса установщика.
# Сохраняем изменения.
mount -a
# Получаем набор предупреждений <путь> mount point does not exist
mkdir -p <путь>
# Повторяем для всех путей
mount -a
Шаг 11. Шардирование и репликация БД
Настройка в этом разделе актуальна только для очень крупных инсталляций. В большинстве случаев достаточно настроек по умолчанию, и можно перейти к следующему шагу с помощью кнопки Далее.
Внимание
Добавлять кластеры БД можно только на этапе первоначальной установки.
Чтобы добавить более одного кластера, потребуется сгенерировать дополнительные контейнеры.
Чтобы добавить кластер:
- Нажмите кнопку Добавить в первой строке, отмеченной красным.
- Нажмите кнопку Добавить контейнер БД. В зависимости от типа базы данных может быть добавлен один или два контейнера.
- Сохраните изменения.
- Повторите шаги 1-4 для каждой строки, отмеченной красным.
После добавления всех кластеров появится возможность перейти к следующему шагу с помощью кнопки Далее.
Шаг 12. Настройка компонентов
В разделе выполняются настройки различных компонентов почтовой системы.
Авторизация
В разделе можно настроить следующие параметры:
- Защита от подбора паролей.
- Количество попыток входа в Почту по IP и адресу электронной почты.
- Указать IP-адреса с неограниченным количеством попыток авторизации.
- Настроить авторизацию по паролю через внешние протоколы.
Настройки авторизации по паролю через внешние протоколы — позволяет запретить пользователям авторизовываться во внешних приложениях (MS Outlook, Почта/Календарь на iOS и т.п.) с помощью основного пароля почты.
Если флаг одного или нескольких протоколов включен, для авторизации по этим протоколам пользователю потребуется не пароль от почты, а одноразовый пароль, сформированный по инструкции Пароль и безопасность из руководства пользователя Почты.
Если флаг протокола выключен, для входа во внешнее приложение достаточно будет ввести пароль аккаунта Почты.
Примечание
За информацией о принципе работы системы ограничения SSO-авторизации по IP/группе в ActiveDirectory обратитесь к представителю VK.
Адресная книга
Для случаев, когда необходимо создать общие почтовые ящики для адресов из разных доменов, включите флаг Общая адресная книга для всех доменов.
Чтобы создать организацию, под которой будут объединены домены, кликните по кнопке Добавить. Появится всплывающее окно, куда нужно ввести название организации.
С помощью кнопки Добавить домен введите адреса доменов, относящихся к одной организации.
Также есть возможность изменить названия организаций, добавить дополнительные домены и удалить домены/организации. После создания организаций перейдите к списку машин, чтобы повторить нужные шаги.
Дальнейшая настройка общих почтовых ящиков производится в административной панели (biz.<почтовый домен>).
Настройки почты
Для изменения настроек в разделе нажмите на кнопку редактирования
.
Максимальная глубина вложенности папок — вы можете изменить разрешенную глубину вложенности папок, создаваемых пользователями в своих почтовых ящиках. Значение этого поля также используется при миграции. Если глубина вложенности в исходной системе больше установленного значения, папки будут переноситься в папку с крайней допустимой глубиной.
Максимальное количество получателей в письме — можно ограничить количество пользователей, которым письмо будет отправлено единовременно. Значение по умолчанию — 30 получателей, но, если вы хотите изменить их количество, минимальное значение — 100.
Важно
Максимальная глубина вложенности папок и максимальное количество получателей в письме меняются только вместе. Если вы зададите новое значение для глубины вложенности, система не даст сохранить его без изменения максимального числа получателей. Количество получателей в письме, устанавливаемое вручную, не может быть меньше 100.
Срок хранения больших аттачей (в секундах) — срок хранения больших вложений.
Ограничение доступа к доменам
Выберите нужный домен и нажмите на кнопку редактирования. После включения флага Ограничить доступ к домену появится раздел с более детальными настройками.
Ограничить доступ к домену — если включен только этот флаг, в поле ниже нужно будет ввести IP/подсети, которым будет разрешен доступ к домену. Также вы можете добавить комментарии, если это необходимо.
Режим запрета — запрещать следующим IP/подсетям — если включены оба флага (ограничение доступа и режим запрета), доступ к доменам будет запрещен IP/подсетям, введенным в поле.
Не забудьте повторить шаги на гипервизоре (нужные шаги уже отмечены желтым). Также можно нажать на кнопку Play в общей строке состояния. Для этого перейдите к списку шагов, кликнув по логотипу в левом верхнем углу веб-интерфейса.
Внимание
Для доменов becca.***.***.*** и bmw.***.***.*** по умолчанию запрещен доступ всем IP/подсетям. Чтобы добавить какие-либо IP/подсети в белый список, необходимо включить опцию Ограничить доступ к домену и добавить в поле IP/подсети. Если включить оба флага, IP/подсети, которые были введены в поле, попадут в черный список.
Панель администрирования
Внутри раздела нужно ввести SPF-запись и DKIM-селектор почтового домена. Так же есть возможность произвести некоторые настройки для административной панели (biz.<почтовый домен>). Чтобы начать настройку, нажмите кнопку редактирования
.
Административные домены — с помощью кнопки Добавить по одному введите домены (до знака @), которым нужно выдать максимальные права.
Серверная SPF-запись — введите в поле имя SPF-записи в DNS вашего домена, например: my_spf_record.onprem.ru. По умолчанию в SPF-запись ищется по следующему имени: _spf.<почтовый домен>. Подробнее про SPF-запись можно прочитать в статье Настройка SPF.
DKIM-селектор — в поле нужно добавить селектор DKIM-подписи почтового домена.
Количество дней перед удалением пользователя — количество дней, через которое пользователь будет удален из Почты. Изменение настройки по умолчанию актуально при одновременном использовании Почты c Active directory. По умолчанию выставлен срок 5 дней, то есть пользователь будет удалён из Почты через 5 дней после его удаления из AD.
Размер облака пользователя по умолчанию (Мб) — при необходимости ограничьте максимальный размер облака для каждого пользователя.
Разрешить предварительную настройку сборщиков для всего домена — включите флаг, если необходимо отобразить окно настроек сборщиков писем в административной панели biz.<почтовый домен>/domains/.
Не проверять актуальность включенного функционала (фич) — при включенном флаге установщик будет пропускать шаг bizf -> addBizFeatures.
Общие переменные окружения для всех сервисов панели администрирования — с помощью кнопки Добавить вы можете ввести имя и значение переменных, которые применятся к ролям bizf, biz-celery-worker-* и biz-celery-beat. Вам не нужно будет каждый раз отдельно для всех ролей прописывать переменные, достаточно добавить их в общие переменные окружения.
Политика изменения паролей пользователей
Внимание
При интеграции с Active Directory эта вкладка неактуальна. C включенной интеграцией пользователи, заведенные внутри Почты, не смогут совершать никаких действий.
Для изменения настроек во вкладке кликните по кнопке редактирования
.
Разрешить пользователям менять пароли — включенный флаг разрешает пользователям менять пароли для своих почтовых ящиков.
Установить максимальный срок действия пароля — при установленном флаге можно установить срок действия пароля. Срок задается в секундах (под полем есть подсказка о том, сколько это будет в более крупных единицах измерения).
Почтовый транспорт
В этой вкладке вы можете изменить нужные вам настройки, нажав на кнопку редактирования
.
Внимание
Нельзя указывать одинаковые роли пограничного MX-шлюза, DLP и шлюзов антивируса для внутренних писем.
Перемещать письма в спам по заголовку от Kaspersky Linux Mail Server — включите флаг, если необходима проверка на заголовок X-KLMS-Message-Action. Если у письма присутствует этот заголовок и его значение отличается от clean, оно будет автоматически отправляться в папку Спам.
Устанавливать заголовок Received в соответствие требованиям Kaspersky Linux Mail Server — в некоторых случаях Kaspersky Linux Mail Server не может определить последний хоп (расстояние между ближайшими узлами в сетевом протоколе) передаваемого сообщения, из-за этого могут появиться ошибки с валидацией отправителя и проверкой SPF. Чтобы избежать подобных ситуаций, установите этот флаг.
Не сбрасывать письма на MX-сервере в медленную очередь при проблемах доставки — включите флаг, если ваша антиспам/антивирус система не умеет определять сервер отправки почты. Так как медленная почтовая очередь в Почте реализована отдельным шлюзом, с выключенным флагом могут происходить сбои при проверке подлинности отправителя.
Запретить на MX-сервере прием писем для неприпаркованных доменов — чтобы запретить прием писем для доменов с непроверенной MX-записью, включите этот флаг. При включенной отправке писем внутри системы через почтовый шлюз эта опция также будет включена автоматически.
Информация
Чтобы домен считался припаркованным, он должен быть добавлен в панель администратора (biz.<почтовый домен>); MX-запись припаркованного домена должна быть проверена. Перепиской внутри системы будет считаться обмен сообщениями между двумя припаркованными доменами. Чтобы домен считался известным, достаточно добавить его в панель администратора.
Запретить на MX-сервере прием писем от припаркованных доменов — используется для защиты от подделки злоумышленниками писем локальных пользователей. Это неполноценная защита от подделки отправителя, поэтому рекомендуется установка полноценной антиспам-системы.
Перед почтовой системой есть почтовый шлюз — если перед почтовой системой VK WorkSpace будет установлен какой-либо почтовый шлюз, включите этот флаг. В поле нужно будет ввести адрес промежуточного MX.
Отправлять письма внутри системы через почтовый шлюз — если в вашей инфраструктуре есть система DLP или система антивирусной проверки и вы хотите отправлять всю исходящую переписку через них, включите эту опцию. Письмо от внутреннего отправителя будет перенаправляться в DLP/антивирус для проверки, а затем возвращаться в Почту для доставки отправителю. DLP/антивирус при этом должны работать в режиме SMTP relay. Если опция выключена, письма внутри системы доставляются сразу в почтовый ящик получателя.
Отправлять письма за пределы системы через почтовый шлюз — если в вашей инфраструктуре есть система DLP или система антивирусной проверки и вы хотите отправлять всю исходящую переписку ко внешним отправителям через них, включите эту опцию. Письмо от внутреннего отправителя будет перенаправляться в DLP/антивирус для проверки, а затем отправляться во внешний контур для доставки отправителю. DLP/антивирус при этом должны работать в режиме SMTP relay. Если опция выключена, письма внутри системы доставляются сразу в почтовый ящик получателя.
Внимание
Система расширенных транспортных правил при интеграции с внешними DLP системами может привести к дублированию исходящего почтового трафика и другим непредвиденным эффектам.
Ниже представлена схема движения трафика Почты при интеграции с системой DLP:
Кастомные маршруты для доменов — вы можете перенаправить домены на заданные шлюзы вместо стандартных. Вы можете внести в раздел «Почтовые домены» несколько доменов и задать для них несколько адресов шлюзов. Если нужно добавить по одному шлюзу для каждого домена, используйте кнопку Добавить.
Список серверов, имеющих право отправлять почту без авторизации — добавьте список IP-адресов серверов, почта с которых будет приниматься без авторизации. В список нужно обязательно добавить адреса шлюзов, с которых почта должна возвращаться в сервис Почта. В этот же список можно внести серверы рассылки почты или в соответствии с их назначением МФУ, отсканированные документы с которых будут отправляться без авторизации. Почта, отправленная в Почту VK WorkSpace без авторизации, будет приниматься на порту 1025.
Список серверов, имеющих право отправлять почту без авторизации для определенных почтовых доменов — если вы планируете использовать несколько почтовых доменов, есть возможность добавить для каждого домена свои доверенные IP. Письма с указанных доменов должны отправляться на порт 1025.
Отправлять скрытые копии сообщений — в почтовой системе VK WorkSpace реализована возможность отправки скрытых копий сообщений на специальный ящик: от внешних отправителей, сообщений между внутренними пользователями и от внутренних пользователей внешним. В таком случае проверка внутренних писем не будет блокировать потоки почты.
Канонические (PTR) имена гипервизоров — укажите название хоста в PTR-записи. PTR-запись позволяет определить по IP имя хоста, с которого приходит почта. Если при проверке имя хоста будет отличаться, письмо не будет доставлено или попадет в папку Спам.
Рассыльщики
В разделе настраиваются служебные почтовые рассылки для внутренних пользователей. Чтобы перейти к настройкам, нажмите на кнопку редактирования. Есть возможность создать рассылки для VK WorkDisk, административной панели и уведомлений об отзыве письма.
- Введите email и имя отправителя.
- Введите адрес и порт сервера рассылки.
- Сохраните изменения.
- Перейдите к списку ролей и запустите автоматическую установку, чтобы применить настройки.
Система расширенных транспортных правил
Внимание
Система расширенных транспортных правил при интеграции с внешними DLP системами может привести к дублированию исходящего почтового трафика и другим непредвиденным эффектам.
- Нажмите на
и перейдите в раздел Продукты. - Перейдите на вкладку Почта.
- Включите флаг Система расширенных транспортных правил.
- Перейдите к списку ролей и запустите автоматическую уставку.
-
Когда нужные роли сгенерируются, перейдите в раздел Компоненты -> Система расширенных транспортных правил и включите нужные флаги.
Дальнейшая настройка транспортных правил производится в административной панели по завершении установки.
Система учета действий пользователей
Чтобы изменить время хранения логов, кликните по кнопке редактирования.
Время хранения событий по пользователям (в секундах) — вы можете установить время хранения логов. При установленном значении 0 срок хранения логов не будет ограничен.
Включить статистику по IP — при включенном флаге появится окно для изменения срока хранения логов по IP.
Мониторинг
Настройки мониторинга актуальны для случаев, когда необходимо переключиться с внутреннего мониторинга Почты на внешние системы мониторинга (Graphite/Prometheus).
Чтобы включить внешнюю систему мониторинга:
- Нажмите на
и перейдите в раздел Продукты. - Перейдите на вкладку Администрирование.
-
Включите флаг Система сбора и отправки метрик. При этом флаг Система мониторинга будет автоматически отключен.
Примечание
Данные, созданные до переключения на внешний мониторинг, продолжат занимать место на диске. Новые данные будут направляться во внешнюю систему мониторинга.
-
Сохраните изменения и вернитесь к списку ролей.
-
Внизу страницы нажмите на кнопку Сгенерировать автоматически, чтобы установщик сформировал новые роли.
Внимание
Не нужно запускать автоматическую установку сразу после генерации контейнеров. Сначала необходимо удалить неактуальные роли. Если запустить установку сразу, возникнут сетевые проблемы.
-
Чтобы предотвратить возможные проблемы, перейдите в консоль и перезапустите установщик с помощью команды:
-
После перезапуска в списке ролей отобразятся роли, которые нужно удалить. Если в интерфейсе не подсветились роли для удаления, перезагрузите страницу.
-
Удаление может занять некоторое время. Когда все неактуальные роли будут удалены, запустите автоматическую установку.
-
Далее перейдите в раздел Настройки компонентов -> Мониторинг. Введите необходимые данные для системы мониторинга, которую вы используете.
-
Сохраните изменения.
По ссылке Набор готовых дашбордов для Grafana вы можете скачать дашборды в формате JSON для добавления их в Grafana.
Настройки HTTP(S)-прокси
Если вы используете прокси-сервер при подключении клиентов к системе VK WorkSpace, включите флаг Перед VK WorkSpace есть прокси-сервер, чтобы контейнер, отвечающий за HTTPS-соединение, мог принимать трафик без шифрования.
Список IP прокси-серверов — введите в поле список IP-адресов, с которых Почта будет принимать заголовки с оригинальными IP клиента и оригинальным протоколом подключения.
HTTP-заголовок прокси с оригинальным IP клиента — добавьте в поле заголовок прокси, который передает реальный IP-адрес клиента, иначе сервис будет работать некорректно.
HTTP-заголовок прокси с оригинальным протоколом подключения клиента — для корректной работы почтовых сервисов введите заголовок оригинального протокола подключения.
Внешний S3 как хранилище для Почты и Диска
Шаг выполняется, только если при выборе продуктов в разделе Администрирование был включен продукт Внешний S3 как хранилище для Почты и Диска. Если продукт выключен, инсталляция использует встроенное хранилище и настраивать ничего не нужно.
Параметры подключения задаются отдельно для каждого типа хранилища. Перейдите в раздел Настройки → вкладка Хранилища, слева выберите s3, затем откройте вкладку нужного типа хранилища и нажмите на значок карандаша.
Протокол, хост и порт S3 сервера — адрес внешнего S3 в формате <протокол>://<хост>:<порт>, например https://example.com:443. Обращение к объектам выполняется в стиле path-style, то есть по схеме http(s)://<хост>/<бакет>/<ключ>.
S3 Bucket — имя бакета, в котором будут храниться объекты этого типа хранилища.
S3 Access Key ID — идентификатор ключа доступа к S3.
S3 Secret Key — секретный ключ доступа к S3. После сохранения значение скрывается и в интерфейсе не отображается.
S3 Region — регион S3. Заполняется, если этого требует ваш провайдер. Значение по умолчанию — auto.
S3 Storage Class — класс хранения объектов. Заполняется, если этого требует ваш провайдер. Значение по умолчанию — auto. Рекомендуемый класс зависит от типа хранилища и указан в интерфейсе установщика в блоке Рекомендации к S3.
Внимание
Нельзя использовать один и тот же бакет для разных типов хранилищ. Для каждого типа нужен отдельный бакет, иначе возникнут коллизии объектов.
Заполните параметры на всех вкладках — blobcloud, blobsign, cloud, crow, skel. Набор вкладок зависит от состава устанавливаемых продуктов. Требования и рекомендации к каждому типу хранилища установщик показывает на его вкладке в блоках Требования к S3 и Рекомендации к S3.
После заполнения параметров нажмите Сохранить и продолжите установку.
Ограничения функциональности, требования к S3-хранилищу, список совместимых провайдеров, описание типов хранилищ с расчетом нагрузки и порядок изменения параметров подключения после установки описаны в отдельном документе — Как подключить внешний S3 как хранилище для Почты и Диска.
Шаг 13. Интеграции
В блоке будут отображаться интеграции, которые вы включили на этапе выбора продуктов и опций (настройки интеграций могут также находиться в верхнем меню).
Настройка интеграции Мессенджер и ВКС и Почты — с помощью документа вы сможете настроить интеграцию между Мессенджер и ВКС и Почтой.
Миграция календарей по протоколу EWS — документ по настройке миграции событий из MS Exchange в сервис Почта.
Интеграция с Keycloak для SSO-авторизации — в документе содержится инструкция по настройке интеграции с сервисом SSO-авторизации.
Аудит действий пользователей -- в документе описаны предусмотренные в Почте системы аудита действий пользователя и их отличия. Описано, как включить сбор статистики по IP и настроить отправку событий во внешние хранилища.
Настроить дублирование действий пользователей во внешние хранилища
Сборщик почты
Внимание
Если планируется одновременная миграция более 100 почтовых ящиков, то выделите отдельные серверы для сборщиков. Минимальные требования к серверам из расчета не более чем на 2000 запущенных сборщиков: 8 vCPU и 32 GB RAM. После миграции ресурсы серверов освободятся.
В разделе есть возможность добавить почтовые серверы для синхронизации/миграции, а также список папок, которые не будут участвовать в синхронизации.
Белый список удалённых серверов — по умолчанию в полях указаны внутренние IP-адреса. Если вы планируете миграцию почты с других почтовых серверов, добавьте их IP-адреса или имена в белый список — Почта будет определять эти IP/хосты как публичные. При миграции из систем с белым IP/доменом поле можно оставить пустым. При настройке миграции в административной панели вам нужно будет ввести IP/хост, с которого будет производиться миграция.
Список папок, исключенных из синхронизации — если у вас есть папки, которые не должны участвовать в синхронизациив соответствии с их назначением «Черновики» и «Удаленные», введите их названия через запятую в строгом соответствии с оригинальным названиям из вашей системы (названия папок регистрозависимы).
Интеграция с другими инсталляциями Почты
Информация
Функциональность устарела и будет в скором времени удалена.
В разделе вы можете настроить интеграции с несколькими инсталляциями Почты и/или миграции с Exchange и других почтовых серверов.
Чтобы перейти к настройкам, нажмите на кнопку редактирования. Появится возможность изменить значения полей.
Список адресов машин с БД namespase sharing — с помощью кнопки Добавить внесите IP-адреса машин с инсталляциями Почты. При нескольких инсталляциях введите все адреса машин, объединенных в БД namespase sharing.
Каждая из инсталляций получит реплики каталогов пользователей с IP, указанных в поле. При отправке письма система будет знать, на какой почтовый сервер его направить.
По умолчанию в поле указан локальный IP. Если вы пока что не планируете работу с несколькими инсталляциями, оставьте значение по умолчанию.
Внимание
Если в интеграции участвуют кластерные инсталляции Почты, в поле нужно ввести IP-адреса контейнеров tnt-fedman1.
Также потребуется настройка переменных окружения, описанная в следующем шаге.
Перенаправлять письма неизвестных получателей на сервер — если вы будете проводить миграцию с других почтовых серверов, введите его IP-адрес в поле. В случаях, когда письмо отправляется в адрес пользователей, которые еще не мигрировали в Почту, система будет автоматически перенаправлять их на указанный IP-адрес. Перенаправление будет работать только для припаркованных доменов.
Примечание
Дальнейшая настройка миграции с Exchange или других почтовых серверов производится в административной панели Почты VK WorkSpace по завершении установки.
Продублируйте значение по умолчанию из поля выше, если перенаправление писем в данный момент не требуется.
Сохраните изменения и перейдите к следующему шагу, нажав на кнопку Далее.
Настройки cистемы BI-аналитики
Чтобы получить возможность просматривать статистику использования Диска VK WorkSpace в административной панели (biz.<почтовый домен>), в списке продуктов необходимо включить опцию Система BI-аналитики и Kafka внутри инсталяции и нажать на кнопку Сохранить.
Примечание
Если вы используете внешний сервер Kafka, вторую опцию включать не нужно, но потребуется внести данные для подключения. При использовании Kafka внутри инсталляции можно сразу переходить к списку ролей.
Чтобы подключиться к внешнему серверу Kafka, перейдите в раздел Интеграции -> Настройки cистемы BI-аналитики и заполните соответствующие поля.
Сохраните изменения.
Перейдите к списку ролей, кликнув по логотипу в левом верхнем углу веб-интерфейса. Внизу страницы необходимо создать дополнительные роли.
- Нажмите на кнопку Добавить -> Несколько контейнеров.
- В поле Установлено не более: введите значение 0. Появятся контейнеры для распредления.
- Добавьте контейнеры для Clickhouse на гипервизоры для хранилищ.
- Если вы используете Kafka внутри инсталяции, распределите контейнеры с Kafka на гипервизоры для баз данных тем же способом (с помощью кнопки Добавить).
-
По окончании генерации контейнеров запустите автоматическую установку в общей строке состояния.
Рекомендация
Перед запуском автоматической установки оставьте включенными все проверки. Подробнее о работе проверок можно прочитать здесь: Диагностика системы в веб-интерфейсе установщика
Когда установка будет завершена, у вас появится возможность просматривать статистику Диска в панели администратора.
Шаг 14. Переменные окружения
В разделе производится настройка кастомных переменных почтовой системы.
Внимание
Настройка переменных окружения возможна только после консультации с представителем VK.
Чтобы добавить кастомную переменную:
- Нажмите на кнопку редактирования.
- Нажмите кнопку Добавить.
- В выпадающем меню выберите название переменной.
-
Введите значение переменной. Значение переменной должно быть введено корректно, иначе установщик не позволит создать переменную.
-
Нажмите на кнопку Сохранить.
- Нажмите на кнопку Далее для перехода к следующему шагу.
Какие переменные рекомендуется установить для 5000 пользователей
Для сервиса xtaz установите следующую переменную:
| Название переменной | Значение переменной |
|---|---|
| MEMTX_MEMORY | 3 |
Для сервиса mpop установите следующие переменные:
| Название переменной | Значение переменной |
|---|---|
| HTTPD_KEEP_ALIVE_TIMEOUT | 5 |
| HTTPD_LISTEN_BACKLOG | 1024 |
| HTTPD_MAX_CLIENTS | 150 |
| HTTPD_MAX_KEEP_ALIVE_REQUESTS | 100 |
| HTTPD_MAX_REQUESTS_PER_CHILD | 25 |
| HTTPD_MAX_SPARE_SERVERS | 30 |
| HTTPD_MIN_SPARE_SERVERS | 20 |
| HTTPD_SERVER_LIMIT | 150 |
| HTTPD_START_SERVERS | 20 |
Для сервиса crow-index установите следующие переменные:
| Название переменной | Значение переменной |
|---|---|
| CROW_INDEX_DATABASE_BLOCK_CACHE_SIZE | 5368709120 |
| CROW_INDEX_DATABASE_CONTENT_MEM_TABLE | 536870912 |
| CROW_INDEX_DATABASE_COUNT_MEM_TABLE | 104857600 |
| CROW_INDEX_DATABASE_DOCUMENT_MEM_TABLE | 268435456 |
| CROW_INDEX_DATABASE_MAILBOX_MEM_TABLE | 104857600 |
| CROW_INDEX_DATABASE_MESCALITO_MEM_TABLE | 268435456 |
| CROW_INDEX_DATABASE_SEARCH_MEM_TABLE | 536870912 |
| CROW_INDEX_DATABASE_SUGGEST_MEM_TABLE | 268435456 |
Для сервиса crow-frontend установите следующие переменные:
| Название переменной | Значение переменной |
|---|---|
| CROW_FRONTEND_ASYNC_MAX_INFLIGHT_PER_WATCHER | 10 |
| CROW_FRONTEND_ASYNC_USER_DELAY | 5m |
| CROW_FRONTEND_REBUS_EMAIL_FETCHER_WORKERS_COUNT | 200 |
| CROW_FRONTEND_REINDEX_MAX_FETCH_ATTACHES | 10 |
| CROW_FRONTEND_REINDEX_MAX_FETCH_TOTAL | 25 |
Шаг 15. Запуск установки всех машин
-
Кликните по кнопке Play рядом c общей строкой состояния в верхней части экрана.
-
Подтвердите запуск автоматической установки, нажав на кнопку Запустить.
Рекомендация
Перед запуском автоматической установки оставьте включенными все проверки. Подробнее о работе проверок можно прочитать здесь: Диагностика системы в веб-интерфейсе установщика
В зависимости от этапа установки будет меняться цвет индикатора:
- Серый — в ожидании начала генерации;
- Синий — в процессе генерации;
- Желтый — шаг будет повторен (автоматически);
- Красный — ошибка.
-
Ожидайте завершения установки. Пока процесс идет, рядом со строкой состояния будет отображаться красная кнопка Stop.
Если в процессе установки и настройки системы происходят изменения конфигурации, некоторые задачи могут потребовать повторного выполнения.
Для повторного запуска необходимо нажать на кнопку Play в общей строке состояния в верхней части экрана или рядом с названием конкретного контейнера.
При появлении ошибок на гипервизоре на нем появится тег Не отвечает, а на контейнерах, относящися к этому гипервизору — Не отвечает гипервизор.
Чтобы продолжить установку:
-
Сгруппируйте объекты по гипервизору — так вам будет наглядно видно, на каком гипервизоре ошибка.
-
После этого перейдите в командную строку и устраните ошибку. По завершении необходимо нажать на шестеренку в строке гипервизора, на котором была ошибка, затем на странице в списке шагов на гипервизоре.
-
В окне настроек гипервизора нажмите на кнопку Обновить.
-
Повторно запустите автоматическую установку.
Шаг 16. Завершение установки, инициализация домена и вход в панель администратора
Когда установка будет завершена, соответствующий статус отобразится в строке состояния.
-
Нажмите на кнопку Далее.
-
Введите имя почтового домена и нажмите на кнопку Добавить.
Внимание
С версии 1.24 в Почте VK WorkSpace все домены проверяются на соответствие лицензии. Если домен не входит в лицензию — пользователи этого домена не смогут обмениваться сообщениями. Это условие также распространяется на синонимы доменов.
Откроется новая вкладка, на которой необходимо авторизоваться:
- Имя пользователя — admin@admin.qdit.
- Пароль находится в файле — bizOwner.pass, для его просмотра введите в консоли команду:
cat <путь до директории с установщиком>/bizOwner.pass.
Примечание
Пароль пользователя admin@admin.qdit хранится зашифрованным в базе данных. Он записывается в файле bizOwner.pass в открытом виде только для администратора при первичной установке. Скопируйте пароль в надёжное место, и удалите bizOwner.pass, чтобы злоумышленники не могли получить пароль. Если пароль администратора утерян, то создайте новый с помощью инструкции: Как изменить пароль пользователя admin@admin.qdit?.
Если логин и пароль были введены правильно, вы попадете в панель администратора.
-
Нажмите на кнопку Проверить сейчас, чтобы проверить MX-запись.
При успешно пройденной проверке появится уведомление о том, что MX-запись настроена верно.
После проверки MX-записи установку можно считать оконченной. Также потребуется настройка SPF-записи и DKIM-подписи. Инструкции по их настройке вы найдете по ссылке.
Внимание
По завершении установки допускается только удаление архива, из которого был распакован дистрибутив в начале установки. Все остальные файлы должны оставаться в папке с файлом onpremise-deployer_linux.
Не удаляйте пользователя deployer — эта учетная запись потребуется для обновления и дальнейшей эксплуатации сервиса почты.
Шаг 17. Добавление дополнительных доменов
Если вы планируете использовать несколько доменов, добавьте их с помощью кнопки Добавить домен.
Если хотите сделать домен припаркованным, необходимо пройти проверку MX-записи способом, описанным выше. Чтобы сделать домен известным для Почты, достаточно просто добавить домен в список.
Внимание
С версии 1.24 в Почте VK WorkSpace все домены проверяются на соответствие лицензии. Если домен не входит в лицензию — пользователи этого домена не смогут обмениваться сообщениями. Это условие также распространяется на синонимы доменов.
Ошибка NO_ROUTE_TO_BUCKET при создании бакетов S3
Симптомы:
Шаг create_and_upload_S3_docs_onprem или другой шаг создания бакетов S3, например create_S3_bucket, завершается с ошибкой.
Диагностика:
В командах ниже <namespace> — пространство имен, указанное в параметре Namespace по умолчанию при настройке кластера Kubernetes.
-
Найдите поды streamer-hotbox:
-
Проверьте, есть ли в логах подов ошибка
NO_ROUTE_TO_BUCKET:Пример ошибки:
2026-09-27T20:04:04.752119697+03:00 [ERRO] Not commit transaction for pair: 1, hash: 72A2DA223EEF53EC18212623F4A953173F924BAC, err: not started transaction for move file: pair - 1, hash - 72A2DA223EEF53EC18212623F4A953173F924BAC, err: time to all retries is reached, last error: INTERNAL: [nil] Request to FileDB failed: {"bucket_id":469550,"code":9,"type":"ShardingError","message":"Bucket 469550 cannot be found. Is rebalancing in progress?","name":"NO_ROUTE_TO_BUCKET"} (0x20) [2et3AqwTf] 2026-09-27T20:04:04.916872554+03:00 [ERRO] Nylon fail func: nylon.api.storage.hash_download, need_retry: false, attemt: 2/10, err: time to all retries is reached, last error: INTERNAL: [nil] FileDB failed communication: {"bucket_id":469550,"code":9,"type":"ShardingError","message":"Bucket 469550 cannot be found. Is rebalancing in progress?","name":"NO_ROUTE_TO_BUCKET"} (0x20) [2UFwD5edU]Ошибка означает, что роутер vshard в сервисе nylon не знает, где хранится часть данных FileDB. Бакеты в тексте ошибки — это виртуальные бакеты vshard, они не связаны с бакетами S3.
-
Если ошибка есть, откройте консоль в поде nylon, например nylon1-0:
-
Подключитесь к консоли Tarantool:
-
Выполните команду:
-
Проверьте параметр
alertsв конце вывода. Если роутер видит все бакеты, список пуст:alerts: []. Если часть бакетов не обнаружена, их количество указано в параметреunknownблокаbucket, а вalertsесть предупреждениеUNKNOWN_BUCKETS:bucket: unreachable: 0 available_ro: 0 unknown: 13 available_rw: 1048563 identification_mode: uuid_as_key status: 1 alerts: - ['UNKNOWN_BUCKETS', '13 buckets are not discovered'] ...Если подов nylon несколько, проверьте каждый.
Решение:
- В веб-интерфейсе установщика выполните шаг up_container для каждого контейнера nylon, в поде которого есть предупреждение
UNKNOWN_BUCKETS. Имя контейнера совпадает с именем пода без суффикса-0: поду nylon1-0 соответствует контейнер nylon1. - Когда шаг завершится, снова выполните
vshard.router.info()в поде и убедитесь, что списокalertsпуст. - Повторно выполните шаг, который завершился с ошибкой.
Логи и полезные команды
Примечание
Команды kubectl выполняются на машине, где установлена утилита kubectl и настроен доступ к кластеру Kubernetes — файл kubeconfig. Команды управления установщиком выполняются в консоли машины, на которой он запущен.
В примерах <namespace> — пространство имен, указанное в параметре Namespace по умолчанию при настройке кластера.
-
Перезапуск установщика:
-
Логи установщика:
-
Список запущенных подов:
Добавьте флаг
-o wide, чтобы увидеть, на каких нодах размещены поды. -
Список подов, которые не перешли в состояние
Running: -
Состояние нод кластера:
-
Логи конкретного пода:
Полезные флаги:
-f— следить за логом в реальном времени.--tail=100— вывести только последние 100 строк.--previous— логи предыдущего запуска. Пригодится, если под успел перезапуститься и логи упавшего экземпляра уже не отдаются.-c <имя_контейнера>— выбрать контейнер, если в поде их несколько.
-
Подробная информация о поде — события, причина перезапуска, ограничения по ресурсам:
-
События в пространстве имен в порядке возникновения:
-
Консоль внутри пода:
-
Перезапуск пода:
Внимание
Под не удаляется безвозвратно — контроллер создаст его заново. Чтобы остановить сервис, изменяйте количество реплик, а не удаляйте поды.
-
Перезапуск всех подов сервиса:






























































