Этот раздел описывает как установить и настроить сервис идентификации OpenStack, известный как keystone, на управляющем узле. Для масштабируемости, данная конфигурация разворачивает токены Fernet и Apache HTTP сервер для обработки запросов.
Прежде чем настроить службу Идентификации OpenStack, вам необходимо создать базу данных и административный токен.
Для создания базы данных, выполните следующие действия:
Используйте клиент баз данных для подключения к серверу БД под пользователем root
:
$ mysql -u root -p
Создайте базу данных keystone
:
mysql> CREATE DATABASE keystone;
Предоставьте необходимый доступ к базе данных keystone
:
mysql> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' \
IDENTIFIED BY 'KEYSTONE_DBPASS';
mysql> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' \
IDENTIFIED BY 'KEYSTONE_DBPASS';
Замените KEYSTONE_DBPASS
подходящим паролем.
Закройте клиент баз данных.
Примечание
Набор конфигурационных файлов по умолчанию может варьироваться между дистрибуциями. Вам может потребоваться добавить данные разделы и опции вместо того, чтобы изменять существующие. Также, эллипсис (...
) в конфигурационных сниппетах означают потенциальные опции конфигурации, которые вам необходимо сохранить без изменений.
Примечание
This guide uses the Apache HTTP server with mod_wsgi
to serve
Identity service requests on ports 5000 and 35357. By default, the
keystone service still listens on these ports. The package handles
all of the Apache configuration for you (including the activation of
the mod_wsgi
apache2 module and keystone configuration in Apache).
Исполните следующую команду для установки пакетов:
# apt install keystone
Отредактируйте файл /etc/keystone/keystone.conf
и выполните следующие действия:
Сконфигурируйте доступ к базе данных в разделе [database]
:
[database]
...
connection = mysql+pymysql://keystone:KEYSTONE_DBPASS@controller/keystone
Замените KEYSTONE_DBPASS
на пароль, который вы выбрали для базы данных.
Примечание
Закомментируйте или удалите любые другие опции connection
в разделе [database]
.
В секции [token]
настройте службу токенов Fernet:
[token]
...
provider = fernet
Заполните базу данных службы Идентификации:
# su -s /bin/sh -c "keystone-manage db_sync" keystone
Инициализируйте репозитории Fernet:
# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
# keystone-manage credential_setup --keystone-user keystone --keystone-group keystone
Bootstrap the Identity service:
# keystone-manage bootstrap --bootstrap-password ADMIN_PASS \
--bootstrap-admin-url http://controller:35357/v3/ \
--bootstrap-internal-url http://controller:35357/v3/ \
--bootstrap-public-url http://controller:5000/v3/ \
--bootstrap-region-id RegionOne
Replace ADMIN_PASS
with a suitable password for an administrative user.
Измените файл /etc/apache2/apache2.conf
и настройте опцию ServerName
для ссылки на узел контроллера:
ServerName controller
Restart the Apache service and remove the default SQLite database:
# service apache2 restart
# rm -f /var/lib/keystone/keystone.db
Configure the administrative account
$ export OS_USERNAME=admin
$ export OS_PASSWORD=ADMIN_PASS
$ export OS_PROJECT_NAME=admin
$ export OS_USER_DOMAIN_NAME=Default
$ export OS_PROJECT_DOMAIN_NAME=Default
$ export OS_AUTH_URL=http://controller:35357/v3
$ export OS_IDENTITY_API_VERSION=3
Replace ADMIN_PASS
with the password used in the
keystone-manage bootstrap
command from the section called
Установка и настройка.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.