Установка Keycloak¶
Первый шаг инструкции выполняется только в случае, если установка Keycloak производится на HOSTVM Manager, обновленный с версии 4.4 на 4.5, в остальных установка начинается с шага №2
-
В веб-интерфейсе управляющей машины заходим во вкладку Administration -> Providers, находим ovirt-provider-ovn, нажимаем Edit и переименуем его, например, на ovirt-provider-ovn_old. В процессе установки он будет создан заново с другими параметрами.
-
Перед установкой нужно перевести HOSTVM Manager в режим обслуживания, выполнив с ноды команду:
- Далее подключиться к управляющей машине по ssh и запустить установку с выбором ответов:
Либо запустить установку с ответами по умолчанию:
engine-setup --otopi-environment="OVESETUP_CONFIG/keycloakEnable=bool:True" --offline --accept-defaults
После успешной установки зайти по адресу:
https://FQDN/ovirt-engine-auth/admin/
Логин: admin
Пароль: указан при установке
- Нужно создать realm, для этого в выпадающем списке нажать Add realm
- Задать имя ovirt-internal для нового realm, дальнейшая настройка будет производиться в нем.
-
Заходим в Groups, нажимаем New, задаем имя группы ovirt-administrator:
-
Заходим в Users, нажимаем Add user
-
Задаем имя пользователя admin@ovirt, Email: admin@localhost (важно для авторизации в Grafana), в выпадающем списке Groups выбираем ранее созданную группу ovirt-administrator
-
Проверяем, что пользователь успешно создан, нажав View all users, после чего нажимаем Edit:
-
Во вкладке Credentials задаем пользователю пароль, флаг Temporary говорит о том, что при первом входе будет необходимо изменить пароль
-
После ввода пароля нажимаем Set password:
-
Переходим во вкладку Roles и нажимаем Add Role:

-
Задаем Role Name: grafana-admin, в Description можно написать: Grafana 'grafana-admin' role. Нажимаем Save:

-
Повторяем шаги 13 и 14. Необходимо добавить роль grafana-editor с описанием Grafana 'grafana-editor' role и роль grafana-viewer с описанием Grafana 'grafana-viewer' role:

-
Переходим во вкладку Client Scopes и нажимаем Create:

-
Задаем Name: ovirt-app-admin, остальные параметры оставить по умолчанию. Нажать Save:

-
Повторяем шаги 16 и 17 для создания Client Scope:
ovirt-app-api
ovirt-app-portal
ovirt-ext=auth:identity
ovirt-ext=auth:sequence-priority=~
ovirt-ext=revoke:revoke-all
ovirt-ext=token-info:authz-search
ovirt-ext=token-info:public-authz-search
ovirt-ext=token-info:validate
ovirt-ext=token:login-on-behalf
ovirt-ext=token:password-access

-
Переходим во вкладку Clients и нажимаем Create:

Задаем Client ID: ovirt-engine-internal, в качестве Root URL указываем https://FQDN управляющей машины. Нажимаем Save:

-
Общие настройки клиента выглядят следующим образом:

-
Вносим изменения:
Access type: confidential
Valid Redirect URLs: https://FQDN/* меняем на https://FQDN*
Base URL: https://FQDN
Backchannel Logout Session Required: OFF
Нажимаем Save.
-
Переходим во вкладку Credential и сохраняем себе Secret, он понадобится вам при дальнейшей настройке.
Secret: 5fb182da-34f0-411b-9f1b-78a332384219
Обратите внимание! Ваш Secret будет отличаться от указанного в инструкции!
-
Переходим во вкладку Client Scopes:

-
Перевести все доступные Optional Client Scopes из Available Client Scopes в Assigned Optional Client Scopes:

-
Переходим во вкладку Mappers и нажимаем Create:
-
Создаем username со следующими параметрами, нажимаем Save:
-
Создаем groups со следующими параметрами, нажимаем Save:
-
Создаем realm role со следующими параметрами, нажимаем Save:
-
Настройка параметров Keycloak в административном веб-интерфейсе закончена. Дальнейшая настройка производится в терминале HOSTVM Manager. В консоли выполните команду:
Пример вывода:
- Secret j8WIzSCM42BpCRuG8Vp8fg необходимо заменить на 5fb182da-34f0-411b-9f1b-78a332384219 из пункта 23. Изменить Secret необходимо в следующих файлах:
- /etc/httpd/conf.d/internalsso-openidc.con
- /etc/grafana/grafana.ini
- /etc/ovirt-engine/engine.conf.d/12-setup-keycloak.conf
- /etc/ovirt-engine-setup.conf.d/20-setup-ovirt-post.conf
Выполните следующие команды (Подставляя свои значения!):
sed -i 's/j8WIzSCM42BpCRuG8Vp8fg/5fb182da-34f0-411b-9f1b-78a332384219/g' /etc/httpd/conf.d/internalsso-openidc.conf
cp /etc/ovirt-engine/engine.conf.d/12-setup-keycloak.conf /etc/ovirt-engine/engine.conf.d/12-setup-keycloak.conf.bak
sed -i 's/j8WIzSCM42BpCRuG8Vp8fg/5fb182da-34f0-411b-9f1b-78a332384219/g' /etc/ovirt-engine/engine.conf.d/12-setup-keycloak.conf
cp /etc/ovirt-engine-setup.conf.d/20-setup-ovirt-post.conf /etc/ovirt-engine-setup.conf.d/20-setup-ovirt-post.conf.bak
sed -i 's/j8WIzSCM42BpCRuG8Vp8fg/5fb182da-34f0-411b-9f1b-78a332384219/g' /etc/ovirt-engine-setup.conf.d/20-setup-ovirt-post.conf
- После завершения настройки перезагружаем сервисы на управляющей машине:
- Выводим HOSTVM Manager из режима обслуживания из консоли гипервизора:
Веб портал будет доступен по ссылке:
https://FQDN/ovirt-engine
Логин: admin@ovirt
Пароль: указан при настройке Keycloak