GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie KeyStone #1

Keystone ist der Identitätsdienst von OpenStack, er bietet die Funktionalität, Benutzer und ihre Berechtigungen zu verfolgen; Katalogfunktionen über API-Endpunkte. Es bietet Ihnen eigentlich keine Benutzerverwaltungsfunktionen, sondern Plug-in-Schnittstellen, um zwischen aktuellen Authentifizierungsdiensten oder Identitätsdiensten von Drittanbietern zu wählen, die auf dem Markt erhältlich sind.

Bevor Sie fortfahren, werfen Sie einen Blick auf unser Infrastrukturdesign im vorherigen Artikel.

Diese Anleitung zeigt Ihnen, wie Sie den OpenStack-Identitätsdienst mit dem Codenamen Keystone auf dem Controller-Knoten installieren und konfigurieren.

Voraussetzungen:

Vor der Installation des OpenStack-Identitätsdienstes müssen Sie eine Datenbank und ein Administrationstoken erstellen.

# mysql -u root -p

Erstellen Sie die Keystone-Datenbank.

CREATE DATABASE keystone;

Stellen Sie den richtigen Zugriff auf die Keystone-Datenbank ein.

GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'PASSWD';
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'PASSWD';

Ersetzen Sie PASSWD durch ein passendes Passwort.

Generieren Sie einen Zufallswert, der als Administrationstoken für die Erstkonfiguration verwendet werden kann.

# openssl rand -hex 10

KeyStone installieren und konfigurieren:

Automatisches Starten des Keystone-Dienstes nach der Installation deaktivieren.

# echo "manual" > /etc/init/keystone.override

* In Kilo wird der Apache HTTP-Server verwendet, um Keystone-Anfragen auf den Ports 5000 und 35357 mit Hilfe von mod_wsgi anstelle von Eventlet zu bedienen, das in dieser Version von OpenStack veraltet ist.

Keystone installieren.

# apt-get install keystone python-openstackclient apache2 libapache2-mod-wsgi memcached python-memcache

Keystone-Konfigurationsdatei bearbeiten.

# nano /etc/keystone/keystone.conf

Platzieren Sie die folgenden Einträge im richtigen Abschnitt der obigen Datei.

[DEFAULT]
...
admin_token = 43405b090eda983ddde2 ## Replace 43405b090eda983ddde2 with a random that you generated earlier
verbose = True

[database]
...
connection = mysql://keystone:PASSWD@controller/keystone  ## Replace PASSWD with your KeyStone DB password
[memcache]
...
servers = localhost:11211
[token]
...
provider = keystone.token.providers.uuid.Provider
driver = keystone.token.persistence.backends.memcache.Token
[revoke]
...
driver = keystone.contrib.revoke.backends.sql.Revoke

Führen Sie den folgenden Befehl aus, um die Datenbank des Identitätsdienstes zu füllen.

# keystone-manage db_sync

Apache HTTP-Server konfigurieren:

Bearbeiten Sie /etc/apache2/apache2.conf und konfigurieren Sie die ServerName-Option, um auf den Controller-Knoten zu verweisen.

ServerName controller

Erstellen Sie die folgende Datei.

# nano /etc/apache2/sites-enabled/wsgi-keystone.conf

Fügen Sie den folgenden Inhalt in die obige Datei ein.

Listen 5000
Listen 35357

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

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

Erstellen Sie das Verzeichnis für WSGI-Komponenten.

# mkdir -p /var/www/cgi-bin/keystone

Führen Sie den folgenden Befehl aus, um WSGI-Komponenten aus dem Upstream-Repository herunterzuladen.

# curl http://git.openstack.org/cgit/openstack/keystone/plain/httpd/keystone.py?h=stable/kilo | tee /var/www/cgi-bin/keystone/main /var/www/cgi-bin/keystone/admin

Inhaberschaft und Berechtigungen ändern.

# chown -R keystone:keystone /var/www/cgi-bin/keystone
# chmod 755 /var/www/cgi-bin/keystone/*

Starten Sie den Apache-Dienst neu.

# service apache2 restart

Entfernen Sie die SQLite-Datenbank, da wir die MySQL-Datenbank verwenden.

# rm -f /var/lib/keystone/keystone.db

Als Nächstes erstellen Sie die Dienstentität und die API-Endpunkte.


Ubuntu
  1. Installieren Sie OpenStack Kilo auf Ubuntu 14.04.2

  2. OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie Swift #1

  3. OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie Cinder #2

  4. OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie Cinder #1

  5. OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie Horizon

OpenStack Liberty auf Ubuntu 14.04 LTS – Nova konfigurieren

OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie Neutron #1

OpenStack Kilo auf Ubuntu 14.04.2 – Nova konfigurieren

OpenStack Kilo auf Ubuntu 14.04.2 – Glance konfigurieren

OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie KeyStone #2

OpenStack Liberty auf Ubuntu 14.04 – Konfigurieren Sie Neutron #2