Ubuntu 16.04
Sponsored Link

OpenStack Mitaka : Configure Keystone#12016/05/20

 
Install and Configure OpenStack Identity Service (Keystone).
[1] Install Keystone. (disable auto-start)
root@dlp:~#
echo "manual" > /etc/init/keystone.override

root@dlp:~#
apt-get -y install keystone python-openstackclient apache2 libapache2-mod-wsgi python-oauth2client
[2] Add a User and Database on MariaDB for Keystone.
root@dlp:~#
mysql -u root -p

Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 32
Server version: 10.0.24-MariaDB-7 Ubuntu 16.04

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>
create database keystone;

Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]>
grant all privileges on keystone.* to keystone@'localhost' identified by 'password';

Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]>
grant all privileges on keystone.* to keystone@'%' identified by 'password';

Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]>
flush privileges;

Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]>
exit

Bye
[3] Configure Keystone.
root@dlp:~#
vi /etc/keystone/keystone.conf
# line 13: uncomment and change to any Token

admin_token =
admintoken
# line 551: change ( MariaDB connection info )

connection =
mysql+pymysql://keystone:password@10.0.0.30/keystone
# line 1248: add Memcache server

[memcache]
servers = 10.0.0.30:11211
# line 1986: add

[token]
provider = fernet
# line 2012: uncomment

driver =
memcache
root@dlp:~#
su -s /bin/bash keystone -c "keystone-manage db_sync"

# initialize Fernet key

root@dlp:~#
keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone

[4] Configure Apache httpd.
root@dlp:~#
vi /etc/apache2/apache2.conf
# line 70: add own hostname

ServerName dlp.srv.world
root@dlp:~#
vi /etc/apache2/sites-available/wsgi-keystone.conf
# create new like follows

Listen 5000
Listen 35357

<VirtualHost *:5000>
    WSGIDaemonProcess keystone-public processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
    WSGIProcessGroup keystone-public
    WSGIScriptAlias / /usr/bin/keystone-wsgi-public
    WSGIApplicationGroup %{GLOBAL}
    WSGIPassAuthorization On
    <IfVersion >= 2.4>
      ErrorLogFormat "%{cu}t %M"
    </IfVersion>
    ErrorLog /var/log/apache2/keystone.log
    CustomLog /var/log/apache2/keystone_access.log combined

    <Directory /usr/bin>
        <IfVersion >= 2.4>
            Require all granted
        </IfVersion>
        <IfVersion < 2.4>
            Order allow,deny
            Allow from all
        </IfVersion>
    </Directory>
</VirtualHost>

<VirtualHost *:35357>
    WSGIDaemonProcess keystone-admin processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
    WSGIProcessGroup keystone-admin
    WSGIScriptAlias / /usr/bin/keystone-wsgi-admin
    WSGIApplicationGroup %{GLOBAL}
    WSGIPassAuthorization On
    <IfVersion >= 2.4>
      ErrorLogFormat "%{cu}t %M"
    </IfVersion>
    ErrorLog /var/log/apache2/keystone.log
    CustomLog /var/log/apache2/keystone_access.log combined

    <Directory /usr/bin>
        <IfVersion >= 2.4>
            Require all granted
        </IfVersion>
        <IfVersion < 2.4>
            Order allow,deny
            Allow from all
        </IfVersion>
    </Directory>
</VirtualHost>

root@dlp:~#
a2ensite wsgi-keystone

Enabling site wsgi-keystone.
To activate the new configuration, you need to run:
  service apache2 reload
root@dlp:~#
rm -f /var/lib/keystone/keystone.db

root@dlp:~#
systemctl restart apache2
Matched Content