Миграция с AAA JDBC на Keycloak
Аннотация
В этом документе описаны операции, необходимые для переключения с провайдера AAA JDBC на Keycloak.
| Инструкции, описанные ниже актуальны только для zVirt 4.2 и выше. |
1. Общие сведения
Если при развертывании Менеджера управления было указано использование AAA JDBC в качестве провайдера аутентификации, то для миграции на Keycloak потребуются следующие действия:
-
Активация Keycloak.
-
Ручной перенос существующих в AAA JDBC пользователей в базу Keycloak.
На текущий момент не существует никаких методов автоматизации миграции с AAA JDBC на Keycloak.
2. Активация Keycloak
|
Перед выполнением процедуры активации убедитесь, что системное имя Менеджера управления (хоста с Менеджером управления в режимах Standalone и Standalone All-in-One) задано в нижнем регистре. Для этого можно использовать команду Если имя задано в верхнем регистре, перед выполнением активации воспользуйтесь инструкцией для смены регистра системного имени. |
Описанные ниже операции выполняются на Менеджере управления под учетной записью root.
-
Создайте полную резервную копию компонентов Менеджера управления в соответствии с инструкцией и сохраните её на удаленном хранилище.
-
Запустите процесс реконфигурации Менеджера управления с активацией Keycloak:
engine-setup --otopi-environment="OVESETUP_CONFIG/keycloakEnable=bool:True" -
В процессе ответьте на ряд вопросов:
-
Согласитесь с настройкой firewalld:
Do you want Setup to configure the firewall? (Yes, No) [Yes]: -
Укажите способ размещения базы данных keycloak:
Where is the Keycloak database located? (Local, Remote) [Local]: -
В случае локального размещения новой базы Keycloak, согласитесь с автоматической настройкой:
Would you like Setup to automatically configure postgresql and create Keycloak database, or prefer to perform that manually? (Automatic, Manual) [Automatic]: -
Откажитесь от создания резервной копии БД (она была сделана вручную на первом шаге):
Would you like to backup the existing database before upgrading it? (Yes, No) [Yes]:No -
Подтвердите отказ от создания резервной копии БД:
Are you sure you do not want to backup the DWH database?(Yes, No) [No]:Yes -
Откажитесь от процедуры full vacuum для БД DWH:
Perform full vacuum on the oVirt engine history database ovirt_engine_history@localhost? This operation may take a while depending on this setup health and the configuration of the db vacuum process. See https://www.postgresql.org/docs/16/sql-vacuum.html (Yes, No) [No]: -
Откажитесь от процедуры full vacuum для БД engine:
Perform full vacuum on the engine database engine@localhost? This operation may take a while depending on this setup health and the configuration of the db vacuum process. See https://www.postgresql.org/docs/16/sql-vacuum.html (Yes, No) [No]: -
Создайте пароль для администратора (пользователь admin@zvirt):
Keycloak [admin] password: Please confirm password: -
Подтвердите остановку сервиса ovirt-engine:
-
During execution engine service will be stopped (OK, Cancel) [OK]:
-
Проверьте сводные данные и запустите реконфигурацию:
Please confirm installation settings (OK, Cancel) [OK]:-
При успешном завершении операции вы получите следующее сообщение:
--== END OF SUMMARY ==-- [ INFO ] Restarting httpd [ INFO ] Starting keycloak service [ INFO ] Keycloak admin password will be used as ovirt admin password. [ INFO ] Start with setting up Keycloak for zVirt Engine [ INFO ] Done with setting up Keycloak for zVirt Engine [ INFO ] Stage: Clean up Log file is located at /var/log/ovirt-engine/setup/ovirt-engine-setup-20240611154634-3fx0no.log [ INFO ] Generating answer file '/var/lib/ovirt-engine/setup/answers/20240611160300-setup.conf' [ INFO ] Stage: Pre-termination [ INFO ] Stage: Termination [ INFO ] Execution of setup completed successfully -
Перезапустите сервис zvirt-engine-backend:
-
systemctl restart zvirt-engine-backend
-
Для проверки перейдите на веб-портал и аутентифицируйтесь на портале администрирования с пользователем admin@zvirt:
-
Также перейдите на портал Keycloak по адресу https://<ENGINE-FQDN>/ovirt-engine-auth/admin/zvirt-internal/console и аутентифицируйтесь под пользователем admin@zvirt с паролем, заданным в процессе реконфигурации.
3. Перенос пользователей
На текущий момент не существует никаких методов автоматизации миграции пользователей и групп с AAA JDBC на Keycloak. Поэтому данная операция выполняется вручную.
Для переноса пользователей необходимо выполнить следующие действия:
-
На портале keycloak в области zvirt-internal создать необходимых пользователей и установить для них пароли. Подробнее см. в разделе Создание пользователей руководстве по управлению.
-
На портале администрирования zVirt:
-
Удалить старых пользователей и группы. Подробнее см. в разделе Удаление пользователей руководства администратора.
Не удаляйте пользователей admin@zvirt и SYSTEM.
-
Добавить нужных пользователей и группы из Keycloak. Подробнее см. в разделе Добавление пользователей в zVirt руководства по управлению.
-
Назначить новым пользователям и группам необходимые роли. Подробнее см. в разделе Назначение роли администратора или пользователя ресурсу руководства администратора.
-