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

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

Внимание

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

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

Внимание

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

Примечание

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

Примечание

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

  1. Остановить платформу.

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

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

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

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

Примечание

Конвертация данных Базового сервиса для сбора событий необходима только если в настройках Кластера включена опция Сохранять в формате 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-123456789000\DatareonStorage\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. Перейдите в ранее открытую командную строку либо выполните пункты 2 и 3 этапа 3.1.

  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. Перейдите в ранее открытую командную строку либо выполните пункты 2 и 3 этапа 3.1.

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

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

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

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

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

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

  • -pocessModuleId – 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" `
-pocessModuleId "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" `
-pocessModuleId "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" `
-pocessModuleId "6aa6b39b-7191-4b9e-9c4d-9a5d88846a88"

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

sudo ./InternalStorageConverter `
-connectionString "/var/datareon/platform" `
-pathToOutputFolder "/root/ConverterTo3210/rezultInSt" `
-converterType "ConvertEventStorage32_0_To_32_1" `
-msOff "true" `
-pocessModuleId "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

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

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

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

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

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

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

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