The Glance install guide suggests using 'default' as the user_domain_name and project_domain_name, whereas the Keystone install guide, which people would be consulting earlier, instructs the installer to use 'Default'. Since the name is case-sensitive, this is causing problems for first-time installers of OpenStack. Change-Id: Iade47bcd69b7a2a99b990885a0270c962de282a1 Closes-bug: #1747181
9.8 KiB
Install and configure (SUSE)
This section describes how to install and configure the Image service, code-named glance, on the controller node. For simplicity, this configuration stores images on the local file system.
Prerequisites
Before you install and configure the Image service, you must create a database, service credentials, and API endpoints.
To create the database, complete these steps:
Use the database access client to connect to the database server as the
root
user:$ mysql -u root -p
Create the
glance
database:MariaDB [(none)]> CREATE DATABASE glance;
Grant proper access to the
glance
database:MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \ IDENTIFIED BY 'GLANCE_DBPASS'; MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \ IDENTIFIED BY 'GLANCE_DBPASS';
Replace
GLANCE_DBPASS
with a suitable password.Exit the database access client.
Source the
admin
credentials to gain access to admin-only CLI commands:$ . admin-openrc
To create the service credentials, complete these steps:
Create the
glance
user:$ openstack user create --domain default --password-prompt glance User Password: Repeat User Password: +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | domain_id | default | | enabled | True | | id | 3f4e777c4062483ab8d9edd7dff829df | | name | glance | | options | {} | | password_expires_at | None | +---------------------+----------------------------------+
Add the
admin
role to theglance
user andservice
project:$ openstack role add --project service --user glance admin
Note
This command provides no output.
Create the
glance
service entity:$ openstack service create --name glance \ --description "OpenStack Image" image +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | OpenStack Image | | enabled | True | | id | 8c2c7f1b9b5049ea9e63757b5533e6d2 | | name | glance | | type | image | +-------------+----------------------------------+
Create the Image service API endpoints:
$ openstack endpoint create --region RegionOne \ image public http://controller:9292 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | 340be3625e9b4239a6415d034e98aace | | interface | public | | region | RegionOne | | region_id | RegionOne | | service_id | 8c2c7f1b9b5049ea9e63757b5533e6d2 | | service_name | glance | | service_type | image | | url | http://controller:9292 | +--------------+----------------------------------+ $ openstack endpoint create --region RegionOne \ image internal http://controller:9292 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | a6e4b153c2ae4c919eccfdbb7dceb5d2 | | interface | internal | | region | RegionOne | | region_id | RegionOne | | service_id | 8c2c7f1b9b5049ea9e63757b5533e6d2 | | service_name | glance | | service_type | image | | url | http://controller:9292 | +--------------+----------------------------------+ $ openstack endpoint create --region RegionOne \ image admin http://controller:9292 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | 0c37ed58103f4300a84ff125a539032d | | interface | admin | | region | RegionOne | | region_id | RegionOne | | service_id | 8c2c7f1b9b5049ea9e63757b5533e6d2 | | service_name | glance | | service_type | image | | url | http://controller:9292 | +--------------+----------------------------------+
Install and configure components
Note
Starting with the Newton release, SUSE OpenStack packages are
shipping with the upstream default configuration files. For example
/etc/glance/glance-api.conf
or
/etc/glance/glance-registry.conf
, with customizations in
/etc/glance/glance-api.conf.d/
or
/etc/glance/glance-registry.conf.d/
. While the following
instructions modify the default configuration files, adding new files in
/etc/glance/glance-api.conf.d
or
/etc/glance/glance-registry.conf.d
achieves the same
result.
Install the packages:
# zypper install openstack-glance \ openstack-glance-api openstack-glance-registry
Edit the
/etc/glance/glance-api.conf
file and complete the following actions:In the
[database]
section, configure database access:[database] # ... connection = mysql+pymysql://glance:GLANCE_DBPASS@controller/glance
Replace
GLANCE_DBPASS
with the password you chose for the Image service database.In the
[keystone_authtoken]
and[paste_deploy]
sections, configure Identity service access:[keystone_authtoken] # ... auth_uri = http://controller:5000 auth_url = http://controller:5000 memcached_servers = controller:11211 auth_type = password project_domain_name = Default user_domain_name = Default project_name = service username = glance password = GLANCE_PASS [paste_deploy] # ... flavor = keystone
Replace
GLANCE_PASS
with the password you chose for theglance
user in the Identity service.Note
Comment out or remove any other options in the
[keystone_authtoken]
section.In the
[glance_store]
section, configure the local file system store and location of image files:[glance_store] # ... stores = file,http default_store = file filesystem_store_datadir = /var/lib/glance/images/
Edit the
/etc/glance/glance-registry.conf
file and complete the following actions:In the
[database]
section, configure database access:[database] # ... connection = mysql+pymysql://glance:GLANCE_DBPASS@controller/glance
Replace
GLANCE_DBPASS
with the password you chose for the Image service database.In the
[keystone_authtoken]
and[paste_deploy]
sections, configure Identity service access:[keystone_authtoken] # ... auth_uri = http://controller:5000 auth_url = http://controller:5000 memcached_servers = controller:11211 auth_type = password project_domain_name = Default user_domain_name = Default project_name = service username = glance password = GLANCE_PASS [paste_deploy] # ... flavor = keystone
Replace
GLANCE_PASS
with the password you chose for theglance
user in the Identity service.Note
Comment out or remove any other options in the
[keystone_authtoken]
section.
Finalize installation
Start the Image services and configure them to start when the system boots:
# systemctl enable openstack-glance-api.service \ openstack-glance-registry.service # systemctl start openstack-glance-api.service \ openstack-glance-registry.service