Руководство по установке и первичной настройке MIND Suite 2.16-1

Назначение документа

Документ описывает подготовку окружения, установку, первичную настройку, обновление и удаление контроллера MIND Suite 2.16-1. Документ предназначен для администраторов, которые выполняют установку и обслуживание контроллера MIND Suite на сервере с совместимой ОС контроллера.

Термины и сокращения

Агент MIND

Сервис, который запускается на источнике или приёмнике и взаимодействует с контроллером в процессе настройки и запуска заданий на миграцию или репликацию. Агент получает и выполняет команды с контроллера, ведёт журнал событий, запускает хост-утилиты и отправляет контроллеру информацию о статусе заданий. Может устанавливаться в ручном режиме или автоматически.

Контроллер

Центральный компонент MIND Suite, который устанавливается на выделенный сервер, управляет сервисами платформы и предоставляет веб-интерфейс для первичной настройки и дальнейшей работы.

Контрольная сумма

Значение, которое используется для проверки целостности установочного файла перед распаковкой и запуском встроенных скриптов.

Непривилегированная учётная запись контроллера

Учётная запись ОС Linux, от имени которой запускаются сервисы контроллера MIND Suite в rootless-режиме. По умолчанию используется учётная запись mindctrl.

Непривилегированный режим запуска (rootless)

Режим запуска сервисов и контейнеров без использования учётной записи root. В MIND Suite применяется для запуска сервисов контроллера от имени выделенной непривилегированной учётной записи и использует механизмы изоляции Linux для непривилегированного запуска.

Пространство имён (namespace)

Механизм изоляции ресурсов Linux, при котором процессам предоставляется отдельное представление системных ресурсов. В MIND Suite для изоляции сервисов контроллера используется отдельное сетевое пространство имён.

Установочный файл

Единый файл mind_2.16-1.run, который содержит зависимости, скрипты подготовки операционной системы и установочные файлы контроллера MIND Suite.

УЦ

Удостоверяющий центр, который выпускает и подписывает сертификаты, используемые для проверки подлинности сторон и защиты сетевых соединений.

API

Application Programming Interface — программный интерфейс приложения, который используется для взаимодействия между программными компонентами.

KTMU

Kernel Tools with MIND Utilities — загрузочный образ, содержащий базовую ОС, драйверы и утилиты MIND, используемый для выполнения служебных операций при миграции и репликации.

LKTMU

Linux Kernel Tools with MIND Utilities — загрузочный образ временной ОС Linux (lktmu.iso), используемый при подготовке и запуске служебных операций.

NTP

Network Time Protocol — сетевой протокол синхронизации времени между устройствами.

SELinux на сервере контроллера

Механизм разграничения доступа в ОС Linux. Контроллер MIND Suite поддерживает работу на сервере с включённым SELinux в режиме enforcing.

SSH

Secure Shell — сетевой протокол для защищённого удалённого доступа и выполнения команд.

TLS

Transport Layer Security – криптографический протокол защиты сетевых соединений. Обеспечивает аутентификацию, конфиденциальность и контроль целостности передаваемых данных.

WKTMU

Windows Kernel Tools with MIND Utilities — загрузочный образ временной ОС Windows (wktmu.wim и wktmu.sdi), используемый при подготовке и запуске служебных операций.

Подготовка окружения

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

Перед установкой контроллера MIND Suite проверьте, что выполнены следующие условия:

  • подготовлен выделенный сервер с совместимой ОС контроллера;

  • у администратора есть права для запуска команд от имени пользователя root;

  • получен доступ к Личному кабинету Пользователя для скачивания установочного файла и драйверов;

  • установочный файл mind_2.16-1.run соответствует ОС, на которой выполняется установка;

  • если установка выполняется с собственными TLS-сертификатами, подготовлен каталог с файлами сертификатов;

Получение установочного файла

Установочный файл для выбранной операционной системы можно скачать из Личного кабинета Пользователя в разделе Загрузки. Файл представляет собой единый установочный файл mind_2.16-1.run, содержащий:

  • все необходимые зависимости;

  • скрипты подготовки операционной системы к установке контроллера и обновлению существующих установок;

  • установочные файлы контроллера MIND Suite.

Все зависимости поставляются внутри установочного файла и не требуют доступа к внешним репозиториям, что позволяет устанавливать контроллер в закрытых контурах.

Системные требования

Для установки контроллера MIND Suite необходима виртуальная машина со следующими ресурсами:

  • CPU — не менее 4;

  • оперативная память — не менее 8 ГБ;

  • дисковое пространство — не менее 50 ГБ.

Виртуальная машина для контроллера MIND Suite должна работать под управлением операционной системы из списка совместимости. Полный перечень совместимых ОС приведён в документе «Матрица совместимости MIND Suite».

Необходимые пакеты и параметры ОС

Перед установкой проверьте обязательные пакеты и параметры ОС:

  • для ОС Ubuntu и Astra Linux должен быть установлен пакет iptables;

  • при наличии на сервере настроенного и работающего SELinux в системе должна быть установлена утилита semanage.

При установке контроллера на ОС на базе RHEL под непривилегированной учётной записью проверьте значение параметра max_user_namespaces:

cat /proc/sys/user/max_user_namespaces

Если значение max_user_namespaces равно нулю, увеличьте его, выполнив команду:

sudo sh -c 'echo user.max_user_namespaces=10000 > /etc/sysctl.d/42-rootless.conf && sysctl --system'

Настройка межсетевого экрана

По умолчанию контроллер принимает входящие подключения по протоколам HTTP и HTTPS:

Источник трафика

Порт и протокол

Назначение

Рабочая станция администратора

TCP 80, HTTP

Подключение к веб-интерфейсу контроллера и доступ к REST API

Рабочая станция администратора

TCP 443, HTTPS

Подключение к веб-интерфейсу контроллера и доступ к REST API

Машина с агентом MIND

TCP 80, HTTP

Подключение агента к контроллеру

Машина с агентом MIND

TCP 443, HTTPS

Подключение агента к контроллеру

Для работы контроллера и ОС могут использоваться общесистемные сервисы:

Сервис

Порт и протокол

Назначение

DNS

TCP/UDP 53

Разрешение доменных имён

NTP

UDP 123

Синхронизация системного времени

SSH

TCP 22

Удалённый доступ с шифрованием соединения

Полный перечень протоколов и портов приведён в разделе Протоколы и порты документов «Руководство администратора MIND Migrate #guest» и «Руководство администратора MIND Guard #guest».

Для подключения агента MIND к контроллеру используйте опубликованный адрес контроллера и разрешённые сетевые порты.

Для синхронизации времени в инфраструктуре используйте NTP, а для защищённого удалённого администрирования — SSH.

Если на сервере с ОС на базе RHEL (РЕД ОС, SberLinux OS Server, РОСА Хром Сервер) используется межсетевой экран firewalld, разрешите подключение к контроллеру по протоколам HTTP и HTTPS:

sudo firewall-cmd --add-service=http
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --add-service=https
sudo firewall-cmd --permanent --add-service=https

Установка

Важно

  • установка контроллера и запуск его сервисов под учётной записью root не поддерживаются, все новые установки выполняются в rootless-режиме;

  • контроллер MIND Suite устанавливается только с использованием единого установочного файла mind_2.16-1.run.

Установочный файл mind_2.16-1.run должен запускаться от имени пользователя с правами root. Он настраивает запуск всех сервисов контроллера в непривилегированном режиме запуска (rootless) под отдельной непривилегированной учётной записью контроллера mindctrl.

Если требуется работа контроллера под другой непривилегированной учётной записью, укажите её имя с помощью параметра встроенного скрипта установки -u / --username. Параметры встроенного скрипта установки передавайте после разделителя --.

Дополнительная информация о работе под непривилегированной учётной записью приведена в документе «Руководство по обеспечению безопасности MIND Suite».

Примечание

При запуске установочного файла mind_2.16-1.run автоматически выполняется:

  • проверка целостности архива по контрольной сумме;

  • удаление ранее установленных пакетов контроллера MIND Suite формата .deb/.rpm, если такие пакеты присутствуют в системе;

  • распаковка файлов в каталог / и запуск скрипта /opt/mind/bin/install.sh.

Установка или обновление контроллера из отдельных .deb/.rpm-пакетов начиная с версии 2.16 не поддерживаются.

Сценарии установки

Выберите сценарий установки в зависимости от требований к окружению:

  • установка с настройками по умолчанию — контроллер устанавливается в rootless-режиме под учётной записью mindctrl;

  • установка с другой непривилегированной учётной записью — имя учётной записи передаётся в параметре -u / --username;

  • установка с выделенным пространством имён — используется параметр --namespace;

  • установка с собственными TLS-сертификатами — путь к каталогу с сертификатами передаётся в параметре -c;

Установка с настройками по умолчанию

  1. Скопируйте файл mind_2.16-1.run на сервер контроллера.

  2. Сделайте файл исполняемым:

    sudo chmod +x ./mind_2.16-1.run
    
  3. Запустите установку контроллера с настройками по умолчанию:

    sudo ./mind_2.16-1.run
    
  4. После запуска файла mind_2.16-1.run система автоматически определит операционную систему, подготовит окружение, установит все зависимости и компоненты MIND Suite, настроит запуск сервисов в rootless-режиме под учётной записью mindctrl и запустит необходимые сервисы.

Установка с дополнительными параметрами

Единый установочный файл поддерживает запуск с дополнительными параметрами встроенного скрипта установки. Указывайте такие параметры после разделителя --:

  • -u <user_name>, --username <user_name> — имя учётной записи для установки контроллера в непривилегированном режиме. Сервисы контроллера MIND Suite будут запускаться от указанного пользователя вместо учётной записи mindctrl.

  • -c <cert_dir> — путь к каталогу с сертификатами, которые должны быть установлены во время установки контроллера.

  • --namespace — включить использование выделенного пространства имён для новой установки контроллера. Для уже существующих установок включение пространства имён по-прежнему выполняется командой namespace.sh enable.

Разделитель -- не требуется для параметров распаковки установочного файла, например --noexec и --target.

Примеры запуска:

  • Установка контроллера с использованием непривилегированной учётной записи mindctrl по умолчанию:

    sudo ./mind_2.16-1.run
    
  • Установка контроллера с использованием непривилегированной учётной записи mindctrl2:

    sudo ./mind_2.16-1.run -- --username mindctrl2
    
  • Установка контроллера с использованием краткой формы параметра для указания непривилегированной учётной записи:

    sudo ./mind_2.16-1.run -- -u mindctrl2
    
  • Установка контроллера с использованием выделенного пространства имён:

    sudo ./mind_2.16-1.run -- --namespace
    
  • Установка контроллера с сертификатами из каталога /root/mind_certs:

    sudo ./mind_2.16-1.run -- -c /root/mind_certs
    
  • Совместное использование нескольких параметров встроенного скрипта установки:

    sudo ./mind_2.16-1.run -- --namespace --username mindctrl2 -c /root/mind_certs
    

Список всех поддерживаемых параметров встроенного скрипта установки можно получить командой:

./mind_2.16-1.run --help

Проверка содержимого установочного файла

Для аудита, анализа содержимого установочного файла или проверки безопасности распакуйте mind_2.16-1.run без установки контроллера.

Для распаковки используйте служебные параметры установочного файла:

  • --noexec — распаковать архив без выполнения встроенных скриптов;

  • --target <dir> — указать каталог, в который будут распакованы файлы.

Пример распаковки без установки:

./mind_2.16-1.run --noexec --target /tmp/mind_unpack

Проверка результата установки

В результате выполнения установочного файла mind_2.16-1.run с выбранными параметрами:

  • компоненты контроллера MIND Suite будут установлены в каталоге /opt/mind/;

  • будут установлены необходимые зависимости;

  • будут настроены и запущены сервисы контроллера MIND Suite в rootless-режиме под непривилегированной учётной записью mindctrl или учётной записью, указанной в параметре -u / --username.

Проверьте состояние основных сервисов контроллера:

# Состояние группы сервисов контроллера
sudo systemctl status mind-ctrl.target

# Состояние инфраструктурных сервисов
sudo systemctl status nginx.service
sudo systemctl status mind_postgres.service
sudo systemctl status mind_rabbitmq.service
sudo systemctl status mind_influxdb.service
sudo systemctl status mind_logs.service

# Состояние компонентов контроллера
sudo systemctl status mind_taskworker.service
sudo systemctl status mind_jobworker.service
sudo systemctl status mind_siteworker.service
sudo systemctl status mind_healthmanager.service
sudo systemctl status mind_api.service
sudo systemctl status mind_scheduler.service
sudo systemctl status mind_vaults.service
sudo systemctl status mind_system.service
sudo systemctl status mind_backup.service
sudo systemctl status mind_drworker.service

Проверьте, что веб-интерфейс контроллера доступен по адресу:

https://<ip_адрес_контроллера>

После завершения установки можно переходить к первичной настройке контроллера в соответствии с документами «Руководство администратора MIND Migrate #guest» и «Руководство администратора MIND Guard #guest».

Настройка контроллера

Настройка параметров подключения

После установки ПО MIND Suite выполните настройку контроллера:

  1. Подключитесь к интерфейсу: введите в браузере адрес контроллера, например https://<ip_адрес_контроллера>.

  2. В окне предварительной настройки заполните следующие поля:

    • Публичный адрес;

    • Логин;

    • Пароль;

    • Повторный ввод пароля;

    • Почтовый адрес администратора.

    _images/img-001.png
  3. Нажмите кнопку Применить. Откроется окно авторизации.

  4. Для входа укажите учётные данные, введённые ранее.

    _images/img-002.png

Настройка TLS-соединения с агентами

Контроллер и агенты MIND поддерживают два варианта взаимодействия:

  1. Шифрованное соединение по TLS.

  2. Нешифрованное соединение.

Выбор режима работы зависит от протокола, указанного в поле Публичный адрес. Если указан https://, агенты подключаются по HTTPS. Если указан http://, агенты подключаются по HTTP.

Настройка сертификатов

В интерфейсе администрирования доступны генерация самоподписанных TLS-сертификатов и загрузка сертификатов, выданных доверенным УЦ.

Формы для генерации новых самоподписанных сертификатов и замены существующих отображаются в разделе Администрирование > Общие настройки.

Подробная информация по работе с сертификатами приведена в документах «Руководство администратора MIND Migrate #guest» и «Руководство администратора MIND Guard #guest».

Добавление драйверов

Драйверы MIND можно добавить на контроллер вручную или установить пакет драйверов с помощью скрипта.

Импорт драйверов

  1. Скачайте драйверы из Личного кабинета Пользователя в разделе Загрузки.

    Выбирайте драйверы в зависимости от типа операционной системы и версии ядра, установленных на источнике.

    Важно

    При выборе драйвера в Личном кабинете учитывайте совместимую версию API: для MIND Suite 2.16-1 в имени драйвера должен быть указан код версии 102-10xx, например 102-1008, 102-1009 или 102-1010.

  2. Если необходимые драйверы отсутствуют, обратитесь в Службу технической поддержки MIND.

    Специалисты подготовят драйверы для вашей конфигурации.

  3. Импортируйте драйверы на контроллер.

    Каждый драйвер представляет собой отдельный архив формата ZIP. Во время импорта система автоматически проверяет драйверы и регистрирует их в платформе. Извлекать файлы из архивов не требуется.

Образы KTMU (Kernel Tools with MIND Utilities) — WKTMU (wktmu.zip) для миграции машин на ОС Windows и LKTMU (lktmu.zip) для ОС Linux — поставляются в установочном файле mind_2.16-1.run. При необходимости их также можно скачать из Личного кабинета Пользователя в разделе RAM-диски.

Подробная информация по использованию собственных образов KTMU приведена в документах «Руководство администратора MIND Migrate #guest» и «Руководство администратора MIND Guard #guest».

Установка пакета драйверов

Чтобы установить полный пакет драйверов для операционных систем, выполните следующие действия:

  1. Скачайте скрипт из Личного кабинета Пользователя в разделе Загрузки, на вкладке Установочные пакеты.

  2. Загрузите скрипт во временный каталог контроллера MIND.

  3. Назначьте права на запуск:

    sudo chmod +x ./mind_drivers_102-1018.sh
    
  4. Запустите скрипт:

    sudo ./mind_drivers_102-1018.sh
    
    • Если отображается сообщение no packages found matching unzip, выполните следующую команду:

      sudo apt install unzip
      
    • После этого снова запустите скрипт:

      sudo ./mind_drivers_102-1018.sh
      
  5. Обновите страницу интерфейса контроллера MIND.

Обновление

MIND Suite поддерживает обновление существующих установок контроллера путём установки более новых версий ПО. Если podman был установлен ранее, рекомендуется удалить его перед выполнением обновления.

В таблице ниже показаны поддерживаемые прямые переходы между версиями MIND Suite. Версии в первом столбце — это версии, с которых выполняется обновление. Версии в заголовках столбцов — это версии, на которые выполняется обновление. Значение Да на пересечении строки и столбца означает, что прямое обновление поддерживается.

Если в таблице недоступно прямое обновление, удалите контроллер согласно разделу Удаление контроллера, затем установите нужную версию.

Версия

2.14

2.14-1

2.15

2.15-1

2.16

2.16-1

2.13-X и более ранние версии

2.14

Да

Да

Да

Да

Да

2.14-1

Да

Да

Да

Да

2.15

Да

Да

Да

2.15-1

Да

Да

2.16

Да

Примечания к обновлению

При обновлении контроллера с предыдущих версий, если на контроллере был изменён пароль для подключения к СУБД, проверьте учётные данные БД в файлах config.yml и mind_system_config.yml. Для смены паролей в контейнерах используйте скрипт /opt/mind/bin/password_changer.sh.

Дополнительная информация по замене пароля для БД приведена в документе «Руководство по обеспечению безопасности MIND Suite».

Стандартная процедура обновления

Для обновления существующей установки контроллера MIND Suite с поддерживаемых версий до версии 2.16-1 используйте установочный файл mind_2.16-1.run на уже установленном контроллере.

  1. Скопируйте файл mind_2.16-1.run на сервер с установленным контроллером.

  2. Сделайте файл исполняемым:

    sudo chmod +x ./mind_2.16-1.run
    
  3. Запустите установку обновления:

    sudo ./mind_2.16-1.run
    

    или с указанием непривилегированной учётной записи:

    sudo ./mind_2.16-1.run -- --username mindctrl2
    

    Параметр --namespace при обновлении не изменяет существующие настройки пространства имён; для включения этого режима на уже установленном контроллере по-прежнему используется команда namespace.sh enable.

  4. По окончании обновления убедитесь, что внизу страницы интерфейса отображается версия контроллера 2.16-1.

При обновлении:

  • устанавливается версия контроллера 2.16-1 с сохранением данных и конфигурации;

  • если до обновления контроллер был установлен в режиме root, все сервисы переводятся в rootless-режим и начинают запускаться от учётной записи mindctrl или от учётной записи, указанной в параметре -u / --username;

  • сохраняется режим работы контроллера в rootless-режиме с использованием выделенного пространства имён, если он был включён до обновления.

Примечание

После перехода на новую версию продукта очистите файлы cookie и кэш браузера.

Если перед обновлением контроллера были повторно сгенерированы самоподписанные сертификаты, замените их ранее сохранёнными файлами сертификатов или сертификатами, выданными доверенным УЦ.

Подробная информация по работе с сертификатами приведена в документах «Руководство администратора MIND Migrate #guest» и «Руководство администратора MIND Guard #guest».

Удаление контроллера

Удаление контроллера требуется перед установкой новой версии ПО, если прямое обновление с установленной версии не поддерживается.

Информация об удалении контроллера представлена в статье Базы знаний Удаление контроллера MIND.

Поиск и устранение неисправностей

Если установка завершилась с ошибкой или веб-интерфейс контроллера недоступен, проверьте состояние сервисов контроллера:

# Состояние группы сервисов контроллера
sudo systemctl status mind-ctrl.target

# Состояние инфраструктурных сервисов
sudo systemctl status nginx.service
sudo systemctl status mind_postgres.service
sudo systemctl status mind_rabbitmq.service
sudo systemctl status mind_influxdb.service
sudo systemctl status mind_logs.service

# Состояние компонентов контроллера
sudo systemctl status mind_taskworker.service
sudo systemctl status mind_jobworker.service
sudo systemctl status mind_siteworker.service
sudo systemctl status mind_healthmanager.service
sudo systemctl status mind_api.service
sudo systemctl status mind_scheduler.service
sudo systemctl status mind_vaults.service
sudo systemctl status mind_system.service
sudo systemctl status mind_backup.service
sudo systemctl status mind_drworker.service

Проверьте журналы сервисов:

# Журнал группы сервисов контроллера
sudo journalctl -u mind-ctrl.target

# Журналы инфраструктурных сервисов
sudo journalctl -u nginx.service
sudo journalctl -u mind_postgres.service
sudo journalctl -u mind_rabbitmq.service
sudo journalctl -u mind_influxdb.service
sudo journalctl -u mind_logs.service

# Журналы компонентов контроллера
sudo journalctl -u mind_taskworker.service
sudo journalctl -u mind_jobworker.service
sudo journalctl -u mind_siteworker.service
sudo journalctl -u mind_healthmanager.service
sudo journalctl -u mind_api.service
sudo journalctl -u mind_scheduler.service
sudo journalctl -u mind_vaults.service
sudo journalctl -u mind_system.service
sudo journalctl -u mind_backup.service
sudo journalctl -u mind_drworker.service

Для диагностики работы контроллера используйте журналы в каталогах /var/log/nginx и /var/log/mind.

Если ошибка связана с подключением к веб-интерфейсу, проверьте:

  • доступность контроллера по портам TCP 80 и TCP 443;

  • правила межсетевого экрана на сервере контроллера;

  • корректность значения поля Публичный адрес: должен быть указан тот же адрес, который был задан при настройке контроллера и используется для подключения в формате http(s)://<ip_or_fqdn>.

Если ошибка связана с запуском сервисов MIND Suite, проверьте:

  • наличие свободного дискового пространства в /opt;

  • наличие пакета iptables для ОС Ubuntu и Astra Linux;

  • наличие утилиты semanage, если на сервере включён SELinux;

  • значение параметра max_user_namespaces для ОС на базе RHEL при установке под непривилегированной учётной записью.

Если проблему не удалось устранить, обратитесь в Службу технической поддержки MIND.

Ссылки