Во избежание потери данных конфигурации необходимо выполнять переход на версию 3.2.0.0 строго по этапам, перечисленным ниже, не пропуская ни одного из них.
Если планируется обновить на 3.2.0.0 кластер из нескольких серверов, то необходимо:
1. Определить, на каком сервере кластера находится активный сервис Управление пользователями. Скопировать содержимое папки C:\ProgramData\Datareon\Platform\Data\DatareonPlatformCredential
В дальнейшем на этапе 4.1 именно на основе этих данных необходимо выполнять конвертацию данных Credential.
2. Определить текущий мастер ЦН и скопировать его базу Security.db.
В дальнейшем на этапе 4.2 именно на основе этой базы необходимо выполнять конвертацию данных Guard.
При конвертации кластера необходимо остановить службу Datareon Platform на всех его серверах. Конвертацию выполнять поэтапно на каждом сервере начиная с мастер-сервера.
Этап 1. Удаление Datareon Platform текущей версии
Удалите ранее установленный пакет Datareon Platform.
В ОС Windows удаление выполняется с помощью опции Удалить в Панель
управления → Программы → Программы и компоненты → Datareon Platform или с помощью запуска установщика текущей версии Datareon Platform и выбора опции Удалить.
В ОС Linux удаление выполняется с помощью команды:
При обновлении Платформы на 3.2.0.0 структура каталога данных должна быть предварительно преобразована с помощью утилиты-конвертера (утилита поставляется вместе с установщиком Платформы). Конвертация выполняется вручную перед установкой новой версии.
Запускаемые файлы на Windows: DatareonCatalogStructureConverter.exe, на Linux: DatareonCatalogStructureConverter. Запуск утилиты выполняется из каталога, содержащего распакованные файлы утилиты. Перед выполнением команды запуска утилиты необходимо перейти в указанный каталог с помощью командной строки (Windows) или терминала (Linux). Параметры запуска указываются в файле options.json, который должен находиться в одном каталоге с запускаемым файлом конвертера.
Внимание
Для успешной конвертации на Windows конвертер должен быть запущен под пользователем с правами локального администратора операционной системы, на Linux конвертер должен быть запущен с правами суперпользователя. На Linux файл конвертера DatareonCatalogStructureConverter перед запуском нужно сделать исполняемым командой
chmod+xDatareonCatalogStructureConverter
Что делает конвертер:
Преобразует структуру каталогов данных Платформы с версии 3.1.2.* в новый формат.
Переносит файлы в новые директории, создает недостающие служебные каталоги.
Примечание
Перед конвертацией рекомендуется создать резервную копию всего каталога данных.
dataFolder: каталог данных Платформы, обязательно для заполнения. Указывается абсолютный путь к каталогу данных Платформы. Закрывающий слеш / или \ указывать необязательно.
В Windows пути указываются с обратным слешем, который необходимо экранировать как \\ (например, "dataFolder":"C:\\ProgramData\\Datareon\\Platform").
В Linux пути указываются с прямым слешем, экранирование не требуется (например, "dataFolder":"/var/datareon/platform").
Внимание
Конвертер выполнит преобразование каталогов, указанных в параметрах ProgramDataFolder, StorageDataFolder, LogsDataFolder конфигурации LocalNodeConfig.json, расположенной по пути dataFolder. Результат работы конвертера будет размещен в этих же каталогах.
Если по указанному в dataFolder пути нет файла LocalNodeConfig.json, то будет сконвертирована непосредственно папка dataFolder.
Работа конвертера с копией каталога Platform не предусмотрена.
toVersion: версия, в формат которой выполняется преобразование (например, 3.2.0.0). Доступные варианты: «3.2.0.0», «» - конвертация из 3.1.2.* в 3.2.0.0.
Сохранить файл.
Выполнить конвертацию с помощью утилиты (расположена с установщиком Платформы).
Ознакомиться с логом выполнения конвертации в каталоге /DatareonCatalogStructureConverter/debug. В логах указано, с какими параметрами был запущен конвертер, для каких каталогов выполнены изменения. Удостоверьтесь, что в логах работы конвертера не зафиксированы ошибки.
Удостовериться, что фактическая структура каталогов Datareon Platform изменена. Ожидаемая структура каталогов:
Начиная с версии 3.2.0.0 в Datareon Platform используется единая точка управления пользователями, поэтому необходимо выполнить конвертацию данных Credential и данных Guard.
Конвертер InternalStorageConverter предназначен для преобразования данных сервиса Управление пользователями, размещенных во внутреннем хранилище Datareon Platform версии 3.1.*, в формат внутреннего хранилища версии 3.2.
В процессе работы конвертер:
считывает данные из каталога внутреннего хранилища сервиса Управление пользователями версии 3.1.*.
считывает данные из базы данных Security.db.
формирует структуру данных, совместимую с версией 3.2.
Особенности использования конвертера в ОС Linux
При использовании Linux-версии конвертера рекомендуется соблюдать следующие требования:
Распакуйте архив с конвертером в домашний каталог пользователя, под которым планируется выполнение команд в терминале (например, /home/datareon/), чтобы обеспечить корректный доступ к файлам.
В каталоге с конвертером (как правило, linux-x64) необходимо предоставить файлу InternalStorageConverter права на выполнение (execute) для пользователя, под которым будет запускаться конвертер.
Пример команды для назначения прав:
chmod+xInternalStorageConverter
Все дальнейшие команды в терминале должны выполняться от имени пользователя, обладающего правами доступа к каталогам с данными платформы.
Порядок выполнения конвертации
Для выполнения конвертации выполните следующие действия:
Скачайте и распакуйте конвертер InternalStorageConverter в любой каталог.
Остановите службу DatareonPlatform.
Скопируйте каталог внутреннего хранилища сервиса Управление пользователями версии 3.1.* из каталога: C:\ProgramData\Datareon\Platform\Storage\ServiceStorage\DatareonPlatformCredential\<EntityId_сервиса>
где <EntityId_сервиса> — идентификатор сервиса Управление пользователями, указанный в конфигурации платформы.
Скопируйте файл базы данных Security.db из каталога платформы: C:\ProgramData\Datareon\Platform\Security
Примечание
Копирование всего каталога Security не требуется. Для конвертации используется только файл Security.db. Файлы резервных копий базы данных не используются.
Создайте каталог для размещения результатов конвертации, например: C:\convert31to32\result
Запустите командную строку от имени администратора (или терминал в ОС Linux).
В командной строке (терминале) перейдите в каталог с файлом конвертера.
Запустите файл InternalStorageConverter со следующими параметрами:
-connectionString — путь к каталогу внутреннего хранилища сервиса Управление пользователями версии 3.1.*, скопированному ранее в п.3.
-pathToOutputFolder — путь к каталогу (из п.5), в который будут сохранены результаты конвертации.
-pathToSecurityDbFolder — путь к каталогу (из п.4), содержащему файл Security.db.
-convertHamsterCredentials — параметр, указывающий на конвертацию данных сервиса Управление пользователями с версии 3.1.* на версию 3.2.
Процесс конвертации может занять некоторое время в зависимости от объема данных.
В процессе конвертации в терминале будет выведен лог конвертации, включающий этапы загрузки данных Credential, формирования Datareon DB и получения конфигурации объектов из Security.db.
В конце конвертации будет выведен лог Обновление завершено. Нажмите любую клавишу.
Результаты конвертации
После успешного завершения работы конвертера данные будут размещены в каталоге, указанном в параметре pathToOutputFolder, со следующей иерархией:
Конвертер GuardToCredentialMigrator конвертирует данные из Guard в Credential внутреннего хранения 3.2.0.0. Конвертер поставляется вместе с установщиком Платформы.
Конвертер GuardToCredentialMigrator предназначен для преобразования данных пользователей Guard, размещенных в базе Security.db, и добавления их во внутреннее хранилище базового сервиса Управление пользователями.
Особенности использования конвертера в ОС Linux
При использовании Linux-версии конвертера необходимо предоставить файлу GuardToCredentialMigrator права на выполнение (execute) для пользователя, под которым будет запускаться конвертер.
Для этого в каталоге с распакованным конвертером выполните команду:
chmod+xGuardToCredentialMigrator
Все дальнейшие команды в терминале должны выполняться от имени пользователя, обладающего правами доступа к каталогам с данными платформы.
Порядок выполнения конвертации
Для выполнения конвертации данных Guard выполните следующие действия:
Скачайте и распакуйте конвертер GuardToCredentialMigrator в любой каталог.
Запустите файл GuardToCredentialMigrator со следующими параметрами:
-guard — путь к базе данных Security.db версии 3.1.*, скопированной ранее на этапе бэкапа или подготовки кластера .
-dataFolder — путь к каталогу, в котором размещена папка из результата конвертации 4.1.
В процессе выполнения конвертера в лог будет выведена информация:
с какими значениями параметров был запущен конвертер.
какое количество данных получено и сконвертировано из базы Security.db. Количество объектов может отличаться от имеющихся в Security.db в связи с особенностями конвертации, описанными в последнем этапе обновления Ручная валидация сконвертированных данных.
Процесс конвертации может занять некоторое время в зависимости от объема данных.
В результате конвертации данные из Guard будут добавлены к имеющимся данным Credential.
Этап 5. Установка Datareon Platform версии 3.2.0.0
Выполните установку Datareon Platform версии 3.2.0.0 согласно стандартной процедуре для операционной системы сервера.
Внимание
На ОС Linux перед запуском установщика удостоверьтесь, что у каталога /var/datareon/platform и вложенных каталогов и файлов указаны владелец и группа datareon и выбраны права 0775 (rwx rwx r-x).
Сразу после завершения установки Datareon Platform выполнит конвертацию конфигурации из Security.db в файловую структуру. Удостоверьтесь, что:
в логах DatareonPlatformControlCenter присутствует лог Запуск процедуры конвертации конфигурации в файловую. В процессе выполнения конвертации могут логироваться ошибки конвертации ролей старого сервиса Credential. Это ожидаемое поведение, так как данные ролей были сконвертированы ранее.
сконвертированная конфигурация расположена по пути C:\ProgramData\Datareon\Platform\ControlCenterData\Config.
Ожидаемая структура:
база Security.db переименована во избежание повторной конвертации.
Переход на версию 3.2 с использованием сконвертированных данных «InternalStorageConverter» и «GuardToCredentialMigrator»:
После обновления остановите службу DatareonPlatform.
Откройте каталог внутреннего хранилища базового сервиса Управление пользователями версии 3.2: C:\ProgramData\Datareon\Platform\Storage\ServiceStorage\DatareonPlatformCredential\00000000-1234-5678-0000-123456789000\DatareonStorage\
Удалите каталог CredentialInternalStorage со всем его содержимым, если он существует (каталог, что сформировался автоматически после установки, вместо него будет то, что сконвертировалось).
Скопируйте каталог CredentialInternalStorage, полученный в результате конвертаций Этапа 4:
На ОС Linux после копирования каталога удостоверьтесь, что у /var/datareon/platform/storage/servicestorage/datareonplatformcredential/00000000-1234-5678-0000-123456789000/DatareonStorage/CredentialInternalStorage и вложенных каталогов и файлов указаны владелец и группа datareon и выбраны права 0775 (rwx rwx r-x).
Перезапустите службу DatareonPlatform на всех серверах кластера, начиная с Мастер-сервера.
Примечание
Начиная с версии 3.2.0.0, на ОС Linux используются названия каталогов в нижнем регистре.
Каталоги, созданные в ходе работы конвертеров и Datareon Platform версии 3.2.0.0 и выше, будут иметь названия в нижнем регистре. Без изменений останутся ранее созданные каталоги, а также переносимые в ходе работы конвертеров и/или относящиеся к хранению данных в Datareon DB.
Этап 10. Ручная валидация сконвертированных данных
В связи с серьезными изменениями в структуре управления пользователями необходимо провести ручную валидацию сконвертированных пользователей и ролей.
Обратите внимание на особенности конвертации:
При конвертации пароль пользователя Администратор сбрасывается до стандартного (предустановленного). Далее при первом входе в ЦН пароль необходимо заменить.
Право входа в ЦН по умолчанию остается только у пользователей Guard в группе Администраторы, которая преобразуется в роль Администраторы ЦН. Остальным ролям нужно выдать это право вручную (Вход разрешен).
Права, выданные персонально на пользователя, не сконвертируются.
Заблокированные пользователи Guard и неактивные пользователи Credential (отключен параметр Активно) не сконвертируются.
Если в данных сервиса Credential был пользователь, чей логин совпадает с пользователем Guard, то при конвертации данных Guard у итогового пользователя будет выполнено только добавление ролей. Все остальные параметры пользователя останутся из Credential.
Параметры сложности пароля, настройки доменной авторизация и прочее не конвертируются и будут сброшены до стандартных. Их необходимо установить вручную в параметрах базового сервиса Управление пользователями.
Конвертируются только те роли, у которых установлен хотя бы один флаг в разделе «Права доступа» → «Администрирование».
Права доступа к объектам (раздел Объекты доступа) из версии 3.1.* не конвертируются и не переносятся в версию 3.2. После обновления необходимо создать новые роли и настроить права доступа к объектам конфигурации вручную.
После конвертации роли создаются в одном из следующих типов:
Роль Центр настройки.
Роль Центр мониторинга.
Если исходная роль содержала права, относящиеся одновременно к обоим типам ролей, то в результате конвертации будут созданы две роли: