Особенности перехода на версию 3.2.1.*

Начиная с версии 3.2.1.0 обновлена структура данных, хранимых в DatareonDB, поэтому для перехода с версии Платформы 3.2.0.* на версию 3.2.1.* требуется конвертация данных базовых сервисов Управление пользователями, Хранилище сообщений и Базовый сервис для сбора событий.

Важно

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

Если на данный момент установлена версия 3.1.2 или более ранняя, то необходимо сначала осуществить переход на версию 3.2.0.5, а после обновления – переход на 3.2.1.

Советы по переходу

  1. Рекомендуем заранее ознакомиться с особенностями конвертации и работы платформы после перехода на 3.2.1.*.

  2. Для прогнозирования времени, необходимого для конвертации, рекомендуем выполнить тестовую конвертацию:

  • Остановить Платформу.

  • Скопировать данные папки Storage в отдельный каталог.

  • Запустить Платформу для минимизации времени простоя.

  • Выполнить тестовую конвертацию на скопированном ранее каталоге.

  1. После перехода рекомендуем сбросить кеш браузера для корректного отображения страниц Платформы.

  2. Конвертация данных Базового сервиса для сбора событий необходима, только если в настройках Кластера включена опция Сохранять в формате Datareon (saveAsBinFiles) – то есть архивные события хранятся в формате DatareonDB.

Этап 0. Подготовка к обновлению

В связи с переходом некоторых сервисов в базовые сервисы необходимо предварительно сохранить в любом текстовом редакторе их EntityId и расположение на серверах:

  • Хранилище сообщений – потребуется при конвертации данных Хранилища сообщений на этапе 3.2 и Базового сервиса для сбора событий на этапе 3.3.

  • Сервис обработки процессов – потребуется при конвертации данных Базового сервиса для сбора событий на этапе 3.3.

Эти данные доступны в ЦН на странице соответствующего сервиса в режиме редактора конфигурации или в ЦМ на вкладке Конфигурация.

При конвертации кластера из нескольких серверов необходимо предварительно остановить службу Datareon Platform на всех его серверах – сначала на slave-серверах, затем на мастер-сервере. Конвертацию и обновление выполнить поэтапно на каждом сервере, начиная с мастер-сервера.

Этап 1. Удаление Datareon Platform текущей версии

Удалите ранее установленный пакет Datareon Platform.

В ОС Windows удаление выполняется с помощью опции Удалить по пути Панель управления → Программы → Программы и компоненты → Datareon Platform или с помощью запуска установщика текущей версии Datareon Platform и выбора опции Удалить.

В ОС Linux удаление выполняется с помощью команды: sudo dpkg -r platform.

Этап 2. Бэкап

Сделайте резервную копию каталога с данными Платформы на всех серверах кластера.

По умолчанию путь в ОС Windows C:\ProgramData\Datareon\Platform, в ОС Linux: /var/datareon/platform.

Этап 3. Конвертация данных DatareonDB

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

Особенности использования конвертера в ОС Linux

При использовании Linux-версии конвертера необходимо соблюдать следующие требования:

  1. Распакуйте архив с конвертером в домашний каталог пользователя, под которым планируется выполнение команд в терминале, чтобы обеспечить корректный доступ к файлам. Пример домашнего каталога: /home/datareon/.

2. В каталоге с распакованным конвертером назначьте файлу InternalStorageConverter права на выполнение (execute) для пользователя, под которым будет запускаться конвертер. Пример команды для назначения прав: chmod +x InternalStorageConverter. Все дальнейшие команды в терминале должны выполняться от имени пользователя, обладающего правами доступа к каталогам с данными платформы.

При конвертации потребуется создание и перемещение каталогов и вложенных в них файлов. При выполнении этих действий удостоверьтесь, что у каталогов указаны владелец и группа datareon и выбраны права 0775 (rwx rwx r-x).

Этап 3.1. Конвертация данных DatareonDB базового сервиса Управление пользователями

Порядок выполнения конвертации данных базового сервиса Управление пользователями (при работе в ОС Linux необходимо учитывать нюанс с правами):

  1. Создайте каталог для размещения результатов конвертации, например: C:\Конвертер3210\Результат\Credential.

  2. Запустите командную строку от имени администратора (или терминал в ОС Linux).

  3. В командной строке (терминале) перейдите в каталог с файлом конвертера.

  4. Запустите конвертер InternalStorageConverter со следующими параметрами:

  • -connectionString – путь к каталогу-источнику CredentialInternalStorage. Обязательный параметр. Например: C:\ProgramData\Datareon\Platform\Storage\ServiceStorage\DatareonPlatformCredential\00000000-1234-5678-0000-123456789000DatareonStorage\CredentialInternalStorage. Поддерживаются абсолютные и относительные пути.

  • -pathToOutputFolder – путь к каталогу, в котором будет размещен результат конвертации. Обязательный параметр. Например: C:\Конвертер3210\Результат\Credential. Поддерживаются абсолютные и относительные пути.

  • -converterType – тип запускаемой конвертации. Обязательный параметр. При конвертации данных пользователей значение этого параметра ConvertCredential32_0_To_Credential32_1.

Пример команды запуска для ОС Windows:

InternalStorageConverter.exe ^
-connectionString "C:\ProgramData\Datareon\Platform\Storage\ServiceStorage\DatareonPlatformCredential\00000000-1234-5678-0000-123456789000\DatareonStorage\CredentialInternalStorage" ^
-pathToOutputFolder "C:\Конвертер3210\Результат\Credential" ^
-converterType "ConvertCredential32_0_To_Credential32_1"

Пример команды запуска для ОС Linux:

sudo ./InternalStorageConverter
-connectionString "/var/datareon/platform/storage/servicestorage/datareonplatformcredential/00000000-1234-5678-0000-123456789000/DatareonStorage/CredentialInternalStorage" \
-pathToOutputFolder "/root/ConverterTo3210/rezultCred" \
-converterType "ConvertCredential32_0_To_Credential32_1"
  1. В процессе выполнения конвертера в лог будет выведена информация: с какими параметрами был запущен конвертер, а также этапы его выполнения.

  2. После появления лога «Обновление завершено. Нажмите любую клавишу.» подтвердите завершение конвертации нажатием любой клавиши.

Результат конвертации необходимо разместить в рабочих каталогах платформы:

  1. Удалите каталог DatareonPlatformCredential, в котором ранее хранились данные управления пользователями. По умолчанию путь к этому каталогу C:\ProgramData\Datareon\Platform\Storage\ServiceStorage\DatareonPlatformCredential.

  2. Скопируйте каталог DatareonPlatformCredential, полученный в результате конвертации (он будет находиться по пути <pathToOutputFolder>\<дата_и_время_запуска_конвертера>\Storage\ServiceStorage), и разместите его вместо ранее удаленного.

Например, если конвертер был запущен с параметром -pathToOutputFolder "C:Конвертер3210РезультатCredential", то каталог для копирования будет находиться по пути C:\Конвертер3210\Результат\Credential\<дата_и_время_запуска_конвертера>\Storage\ServiceStorage.

Этап 3.2. Конвертация данных DatareonDB базового сервиса Хранилище сообщений

Внимание

Конвертацию данных Хранилища сообщений необходимо запускать только на сервере, на котором располагался этот сервис в версии 3.2.0.*.

Порядок выполнения конвертации данных Хранилища сообщений (при работе в ОС Linux необходимо учитывать нюанс с правами):

  1. Создайте каталог для размещения результатов конвертации, например: C:\Конвертер3210\Результат\MessageStorage.

  2. В командной строке (терминале) перейдите в каталог с распакованными файлами конвертера.

  3. Запустите конвертер InternalStorageConverter со следующими параметрами:

  • -connectionString – путь к каталогу-источнику Storage. Обязательный параметр. Например: C:\ProgramData\Datareon\Platform. Поддерживаются абсолютные и относительные пути.

  • -pathToOutputFolder – путь к каталогу, в котором будет размещен результат конвертации. Обязательный параметр. Например: C:\Конвертер3210\Результат\MessageStorage. Поддерживаются абсолютные и относительные пути.

  • -converterType – тип запускаемой конвертации. Обязательный параметр. При конвертации данных пользователей значение этого параметра ConvertMessageStorage32_0_To_32_1.

  • -moduleId – EntityId сервиса Хранилище сообщений, сохраненный на этапе 0. Обязательный параметр.

Пример команды запуска для ОС Windows:

InternalStorageConverter.exe ^
-connectionString "C:\ProgramData\Datareon\Platform" ^
-pathToOutputFolder "C:\Конвертер3210\Результат\MessageStorage" ^
-converterType "ConvertMessageStorage32_0_To_32_1" ^
-moduleId "aaa86879-4c85-46f9-82d5-037e3c3b30f3"

Пример команды запуска для ОС Linux:

sudo ./InternalStorageConverter \
-connectionString "/var/datareon/platform" \
-pathToOutputFolder "/root/ConverterTo3210/rezultMS" \
-converterType "ConvertMessageStorage32_0_To_32_1" \
-moduleId "3bfbdce3-1b9d-44fb-9e4a-501522d7e6fc"
  1. В процессе выполнения конвертера в лог будет выведена информация: с какими параметрами был запущен конвертер, основные этапы его выполнения, в том числе количество сконвертированных сообщений.

  2. После появления лога «Обновление завершено. Нажмите любую клавишу.» подтвердите завершение конвертации нажатием любой клавиши.

Результат конвертации необходимо разместить в рабочих каталогах платформы:

  1. Удалите каталог DatareonPlatformMessageStorage, в котором ранее были расположены данные Хранилища сообщений. По умолчанию путь к этому каталогу C:\ProgramData\Datareon\Platform\Storage\ServiceStorage\DatareonPlatformMessageStorage.

  2. Скопируйте каталог DatareonPlatformMessageStorage, полученный в результате конвертации (он будет находиться по пути <pathToOutputFolder>\<дата_и_время_запуска_конвертера>\Storage\ServiceStorage), и разместите его вместо ранее удаленного.

Например, если конвертер был запущен с параметром -pathToOutputFolder "C:\Конвертер3210\Результат\MessageStorage", то каталог для копирования будет находиться по пути C:\Конвертер3210\Результат\MessageStorage\<дата_и_время_запуска_конвертера>\Storage\ServiceStorage.

Этап 3.3. Конвертация данных DatareonDB базового сервиса Сервис для сбора событий

Примечание

Конвертация данных Базового сервиса для сбора событий необходима только если в настройках Кластера включена опция Сохранять в формате Datareon (saveAsBinFiles), то есть архивные события хранятся в формате DatareonDB.

Порядок выполнения конвертации данных базового сервиса для сбора событий (при работе в ОС Linux необходимо учитывать нюанс с правами):

  1. Создайте каталог для размещения результатов конвертации, например: C:\Конвертер3210\Результат\EventStorage

  2. В командной строке (терминале) перейдите в каталог с распакованными файлами конвертера.

  3. Запустите конвертер InternalStorageConverter со следующими параметрами:

  • -connectionString – путь к каталогу-источнику Storage. Обязательный параметр. Например: C:\ProgramData\Datareon\Platform. Поддерживаются абсолютные и относительные пути.

  • -pathToOutputFolder – путь к каталогу, в котором будет размещен результат конвертации. Обязательный параметр. Например: C:\Конвертер3210\Результат\EventStorage. Поддерживаются абсолютные и относительные пути.

  • -converterType – тип запускаемой конвертации. Обязательный параметр. При конвертации данных пользователей значение этого параметра ConvertEventStorage32_0_To_32_1.

  • -msModuleId – EntityId сервиса Хранилище сообщений, сохраненный на этапе 0. Указывается, только если в конфигурации кластера есть Хранилище сообщений. Если Хранилище сообщений отсутствует в конфигурации кластера, то указывать данный параметр не нужно.

  • -msOff – параметр, указывающий на отсутствие сервиса Хранилище сообщений в конфигурации кластера. Если хранилище отсутствует в конфигурации, то используется значение "true". Если хранилище есть в конфигурации, используется "false".

  • -processModuleId – EntityId Сервиса обработки процессов, сохраненный на этапе 0. Обязательный параметр.

Пример команды запуска для ОС Windows, если в конфигурации есть Хранилище сообщений:

InternalStorageConverter.exe ^
-connectionString "C:\ProgramData\Datareon\Platform" ^
-pathToOutputFolder "C:\Конвертер3210\Результат\EventStorage" ^
-converterType "ConvertEventStorage32_0_To_32_1" ^
-msModuleId "aaa86879-4c85-46f9-82d5-037e3c3b30f3" ^
-msOff "false" ^
-processModuleId "0c45eb8b-9cd5-42f3-a1c8-b28bf0eafea1"

Пример команды запуска для ОС Windows, если в конфигурации нет Хранилища сообщений:

InternalStorageConverter.exe ^
-connectionString "C:\ProgramData\Datareon\Platform" ^
-pathToOutputFolder "C:\Конвертер3210\Результат\EventStorage" ^
-converterType "ConvertEventStorage32_0_To_32_1" ^
-msOff "true" ^
-processModuleId "0c45eb8b-9cd5-42f3-a1c8-b28bf0eafea1"

Пример команды запуска для ОС Linux, если в конфигурации есть Хранилище сообщений:

sudo ./InternalStorageConverter \
-connectionString "/var/datareon/platform" \
-pathToOutputFolder "/root/ConverterTo3210/rezultInSt" \
-converterType "ConvertEventStorage32_0_To_32_1" \
-msModuleId "3bfbdce3-1b9d-44fb-9e4a-501522d7e6fc" \
-msOff "false" \
-processModuleId "6aa6b39b-7191-4b9e-9c4d-9a5d88846a88"

Пример команды запуска для ОС Linux, если в конфигурации нет Хранилища сообщений:

sudo ./InternalStorageConverter \
-connectionString "/var/datareon/platform" \
-pathToOutputFolder "/root/ConverterTo3210/rezultInSt" \
-converterType "ConvertEventStorage32_0_To_32_1" \
-msOff "true" \
-processModuleId "6aa6b39b-7191-4b9e-9c4d-9a5d88846a88"
  1. В процессе выполнения конвертера в лог будет выведена информация: с какими параметрами был запущен конвертер, основные этапы его выполнения, в том числе количество сконвертированных событий.

  2. После появления лога «Обновление завершено. Нажмите любую клавишу.» подтвердите завершение конвертации нажатием любой клавиши.

Результат конвертации необходимо разместить в рабочих каталогах платформы:

  1. Удалите каталог DatareonPlatformEventsStorage, в котором ранее хранились данные хранилища сообщений. По умолчанию путь к этому каталогу C:\ProgramData\Datareon\Platform\Storage\ServiceStorage\DatareonPlatformEventsStorage.

  2. Скопируйте каталог DatareonPlatformEventsStorage, полученный в результате конвертации (он будет находиться по пути <pathToOutputFolder>\<дата_и_время_запуска_конвертера>\Storage\ServiceStorage), и разместите его вместо ранее удаленного.

Например, если конвертер был запущен с параметром -pathToOutputFolder "C:\Конвертер3210\Результат\EventStorage", то каталог для копирования будет находиться по пути C:\Конвертер3210\Результат\EventStorage<дата_и_время_запуска_конвертера>\Storage\ServiceStorage.

Этап 4. Установка Datareon Platform версии 3.2.1.*

Выполните установку Datareon Platform версии 3.2.1.* согласно стандартной процедуре для операционной системы сервера.

Внимание

На ОС Linux перед запуском установщика удостоверьтесь, что у каталога /var/datareon/platform и вложенных каталогов и файлов указаны владелец и группа datareon и выбраны права 0775 (rwx rwx r-x).

Этап 5. Исправление и применение конфигурации

Авторизуйтесь в Центре настройки мастер-сервера под учетными данными Администратора.

Перейдите в ЦН по пути Обслуживание -> Управление конфигурацией. Выполните Исправление конфигурации, выбрав все флаги, кроме первого и последнего.

../_images/config_fix_ver321.png

Ознакомьтесь с результатом выполнения процедуры в Журнале ЦН.

Выполните Применение конфигурации.

Особенности конвертации и работа платформы после перехода на 3.2.1.*

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

  1. Неактивные пользователи Credential (отключен параметр Активен) не сконвертируются. Такие пользователи будут отсутствовать в блоке Добавлен пользователь в логах конвертации.

  2. В связи с переходом Сервиса обработки процессов и Хранилища сообщений в базовые сервисы, им присвоен новый EntityId. Необходимо учесть, что в событиях, сообщениях и логах этих сервисов в более ранних версиях будут указаны прежние EntityId. В связи с этим в ЦМ в столбцах Отправитель и Модуль могут отображаться старые EntityID вместо названий этих базовых сервисов.

  3. В связи с переходом Сервиса обработки процессов в базовые сервисы часть параметров сервиса перенесена в настройки Кластера (параметр useBalancing) и Сервера (параметр processNodeParams). Необходимо актуализировать настройки в соответствии с актуальными доступными параметрами.