installiere und konfiguriere

installiere und konfiguriere

Dieser Abschnitt beschreibt, wie der Identitätsdienst auf dem Controller-Knoten zu installieren und zu konfigurieren ist, der Codename lautet Keystone. Aus Performancegründen verwendet diese Konfiguration Fernet-Token und den Apache HTTP-Server zur Verarbeitung von Anfragen.

Voraussetzungen

Bevor Sie den OpenStack Identiäts Dienst installieren können, müssen Sie zunächst eine Datenbank und ein Administrations Token erstellen.

  1. Führen Sie diese Schritte zum Erstellen der Datenbank aus:

    • Benutzen Sie den Datenbank-Client zur Verbindung zum Datenbank-Server als Benutzer root :

      $ mysql -u root -p
      
    • Erstellen Sie die Datenbank keystone:

      CREATE DATABASE keystone;
      
    • Vergeben Sie die richtigen Zugriffsberechtigungen für die Datenbank keystone:

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

      Ersetzen Sie KEYSTONE_DBPASS durch ein geeignetes Passwort.

    • Beenden Sie den Datenbank-Client.

  2. Lassen Sie einen Zufallswert zur Nutzung als Administrations-Token für die Erst-Konfiguration erzeugen:

    $ openssl rand -hex 10
    

Installieren und konfigurieren von Komponenten

Bemerkung

Default configuration files vary by distribution. You might need to add these sections and options rather than modifying existing sections and options. Also, an ellipsis (...) in the configuration snippets indicates potential default configuration options that you should retain.

Bemerkung

Dieser Leitfaden verwendet den Apache HTTP-Server mit mod_wsgi um die Anfragen des Identitätsdienstes auf den Ports 5000 und 35357 zu verarbeiten. Standardmäßig lauscht der Keystone-Dienst weiterhin auf diesen Ports, deshalb wird der Dienst in diesem Leitfaden deaktiviert.

  1. Führen Sie folgenden Befehl zur Installation der Pakete aus:

    # zypper install openstack-keystone apache2-mod_wsgi
    
  1. Bearbeiten Sie die Datei /etc/keystone/keystone.conf und führen folgende Schritte durch:

    • Belegen Sie den Anfangswert des Administrations-Tokens im Abschnitt [DEFAULT]:

      [DEFAULT]
      ...
      admin_token = ADMIN_TOKEN
      

      Ersetzen Sie ADMIN_TOKEN durch den zufällig generierten Wert aus dem vorherigen Schritt.

    • Konfigurieren Sie den Datenbankzugriff in der Sektion [database] :

      [database]
      ...
      connection = mysql+pymysql://keystone:KEYSTONE_DBPASS@controller/keystone
      

      Ersetzen Sie KEYSTONE_DBPASS durch das Passwort, das Sie für die Datenbank gewählt haben.

    • Konfigurieren Sie den Fernet-Token-Anbieter im Abschnitt [token]:

      [token]
      ...
      provider = fernet
      
  1. Befüllen Sie die Identitätsdienst-Datenbank:

    # su -s /bin/sh -c "keystone-manage db_sync" keystone
    

    Bemerkung

    Ignorieren Sie alle veraltet-Nachrichten in dieser Ausgabe.

  2. Initialisieren Sie Fernet-Schlüssel:

    # keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
    

Konfigurieren Sie den Apache HTTP-Server

  1. Bearbeiten Sie die Datei /etc/sysconfig/apache2 und tragen als APACHE_SERVERNAME den Controller-Knoten ein:

    APACHE_SERVERNAME="controller"
    
  2. Erstellen Sie die Datei /etc/apache2/conf.d/wsgi-keystone.conf mit folgendem Inhalt:

    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
        ErrorLogFormat "%{cu}t %M"
        ErrorLog /var/log/apache2/keystone.log
        CustomLog /var/log/apache2/keystone_access.log combined
    
        <Directory /usr/bin>
            Require all granted
        </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
        ErrorLogFormat "%{cu}t %M"
        ErrorLog /var/log/apache2/keystone.log
        CustomLog /var/log/apache2/keystone_access.log combined
    
        <Directory /usr/bin>
            Require all granted
        </Directory>
    </VirtualHost>
    
  1. Ändern Sie die Eigentumsrechte des Verzeichnisses /etc/keystone rekursiv:

    # chown -R keystone:keystone /etc/keystone
    

Schließen Sie die Installation ab

  1. Starten Sie den Apache HTTP-Dienst und konfigurieren ihn so, dass er beim Booten des Systems startet:

    # systemctl enable apache2.service
    # systemctl start apache2.service
    
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.