GNU/Linux >> Tutoriales Linux >  >> Ubuntu

OpenStack Liberty en Ubuntu 14.04 LTS – Configurar KeyStone #1

El servicio OpenStack Identity proporciona un único punto de integración para administrar los servicios de autenticación, autorización y catálogo de servicios.

En realidad, no le proporciona ninguna función de gestión de usuarios, sino que proporciona interfaces de complemento para elegir entre el servicio de autenticación actual o los servicios de identidad de terceros que están disponibles en el mercado.

Al instalar el servicio OpenStack Identity, debe registrar cada servicio en su instalación de OpenStack. El servicio de identidad puede rastrear qué servicios de OpenStack están instalados y dónde están ubicados en la red.

Antes de continuar, eche un vistazo a nuestro diseño de infraestructura en el artículo anterior.

Esta guía le muestra cómo instalar y configurar el servicio OpenStack Identity (keystone) en el nodo del controlador.

Requisitos previos:

Antes de instalar el servicio de identidad de OpenStack, debe crear una base de datos y un token de administración.

# mysql -u root -p

crear la base de datos trapezoidal.

CREATE DATABASE keystone;

Configure el acceso adecuado a la base de datos keystone.

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

Salga del cliente de acceso a la base de datos.

* Reemplazar CONTRASEÑA con una contraseña adecuada.

Genera un valor aleatorio y puede usarse como token de administración para la configuración inicial.

# openssl rand -hex 10

Instalar y configurar KeyStone:

Inhabilite el servicio keystone para que no se inicie automáticamente después de la instalación.

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

* En Kilo y Liberty, el servidor Apache HTTP se usa para atender solicitudes keystone en los puertos 5000 y 35357 con la ayuda de mod_wsgi en lugar de Eventlet, que está obsoleto en esta versión de OpenStack.

Instale el paquete keystone.

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

Edite el archivo de configuración trapezoidal.

# nano /etc/keystone/keystone.conf

Coloque las siguientes entradas en la sección adecuada del archivo anterior.

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

[database]
...
## Replace PASSWD with your KeyStone DB password and Controller with your controller node IP or Hostname
## If you found any other MySQL connection entry comment it out.
connection = mysql+pymysql://keystone:PASSWD@controller/keystone  

[memcache]
...
servers = localhost:11211

[token]
...
provider = uuid
driver = memcache

[revoke]
...
driver = sql

Ejecute el siguiente comando para completar la base de datos del servicio de identidad.

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

Configurar el servidor Apache HTTP:

Edite /etc/apache2/apache2.conf y configurar ServerName opción para hacer referencia al nodo del controlador, agréguelo en la sección de configuración global.

ServerName controller

Crea el siguiente archivo.

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

Pegue el siguiente contenido en el archivo anterior.

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>

Reinicie el servicio de Apache.

# service apache2 restart

Elimine la base de datos SQLite ya que estamos usando la base de datos MySQL.

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

Lo siguiente es crear la entidad de servicio y los extremos de la API.


Ubuntu
  1. OpenStack Liberty en Ubuntu 14.04 LTS - Configurar Nova

  2. OpenStack Kilo en Ubuntu 14.04.2 – Configurar Neutron #1

  3. OpenStack Kilo en Ubuntu 14.04.2 – Configurar Nova

  4. OpenStack Kilo en Ubuntu 14.04.2 – Configurar Vistazo

  5. OpenStack Kilo en Ubuntu 14.04.2 – Configurar KeyStone #2

Cómo configurar la dirección IP estática en Ubuntu 22.04 LTS

OpenStack Liberty en Ubuntu 14.04 LTS – Configurar Vistazo

OpenStack Liberty en Ubuntu 14.04 LTS – Configurar KeyStone #2

Instale OpenStack Liberty en Ubuntu 14.04 LTS

OpenStack Liberty en Ubuntu 14.04 – Configurar Neutron #2

Instalar y configurar KVM en Ubuntu 20.04 LTS