Как настроить множественные домены?¶
Настройка конфигурации Keystone¶
В
/etc/keystone/keystone.conf
добавьте следующие параметры:[identity] driver = keystone.identity.backends.sql.Identity domain_specific_drivers_enabled = True domain_config_dir = /etc/keystone/domains
Создайте каталог
/etc/keystone/domains
:mkdir /etc/keystone/domains
Создайте конфигурационный файл с именем keystone.DOMAIN_NAME.conf, где DOMAIN_NAME - имя домена в OpenStack. К примеру, если домен планируется назвать как «ACME», то:
> /etc/keystone/domains/keystone.ACME.conf
Укажите следующие параметры в конфигурацию:
[identity] driver = keystone.identity.backends.ldap.Identity [ldap] url = ldap://LDAP_IP user = cn=admin,cn=Users,dc=example,dc=com password = openstack suffix = dc=example,dc=com use_dumb_member = False allow_subtree_delete = False user_tree_dn = cn=Users,dc=example,dc=com user_objectclass = InetOrgPerson group_tree_dn = cn=Groups,dc=example,dc=com group_objectclass = groupOfNames user_allow_create = False user_allow_update = False user_allow_delete = False group_allow_create = False group_allow_update = False group_allow_delete = False
В Active Directory и Samba 4 используются другие объектные классы для пользователя и группы:
[ldap] ... user_objectclass = person group_objectclass = group
Примечание
С примером настройки интеграции с Active Directory (AD) можно ознакомиться здесь.
Укажите маппинг атрибутов LDAP и видов данных Keystone:
user_id_attribute = cn user_name_attribute = cn user_mail_attribute = mail user_pass_attribute = userPassword group_id_attribute = cn group_name_attribute = cn group_member_attribute = group_desc_attribute = description group_filter =
Перезапустите службу keystone:
systemctl restart keystone
Настройка данных Keystone¶
Настройте окружение для входа в OpenStack:
source admin-openrc
Создайте домен ACME:
openstack domain create ACME
Попробуйте получить список пользователей домена ACME:
openstack user list --domain ACME +------------------------------------------------------------------+----------------+ | ID | Name | +------------------------------------------------------------------+----------------+ | ae7a1e0c022ab806247cb9dc69bd1bd0f157f9d87161e5e20f64f554e418cb8d | admin | | 2b19a3543055bab1443e52385facaf652462199c346731c667f226396c7ba6a1 | Guest | +------------------------------------------------------------------+----------------+
Создайте проект admin в домене ACME:
openstack project create --domain ACME admin
Добавьте пользователя admin с правами администратора на проект admin в домене ACME:
openstack role add --user-domain ACME --project-domain ACME --project admin --user admin admin
Дайте права администратора пользователю admin на домен ACME:
openstack role add --user-domain ACME --user admin --domain ACME admin
Попробуйте войти в облако через веб-интерфейс, используя эти учетные данные.