Installer et configurer

Installer et configurer

Cette section décrit l’installation et la configuration du Service d’Identité OpenStack, nom de code keystone, sur le contrôleur. Pour une question de scalabilité, cette configuration déploie des jetons Fernet et le serveur HTTP Apache pour traiter les requêtes.

Pré-requis

Avant d’installer et configurer le service d’Identité, vous devez créer une base de données.

  1. Utiliser le client d’accès à la base de données pour se connecter au serveur de base en tant qu’utilisateur root :

    # mysql
    
  1. Créer la base de donnée keystone :

    MariaDB [(none)]> CREATE DATABASE keystone;
    
  2. Attribuer les bons droits d’accès à la base de données keystone :

    MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' \
    IDENTIFIED BY 'KEYSTONE_DBPASS';
    MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' \
    IDENTIFIED BY 'KEYSTONE_DBPASS';
    

    Remplacer KEYSTONE_DBPASS par un mot de passe approprié.

  3. Quitter l’accès client de la base de données.

Installer et configurer les composants

Note

Les fichiers de configuration par défaut diffèrent par distribution. Vous pouvez être amenés à ajouter ces sections et options plutôt que de modifier des sections et options existantes. De plus, une ellipse (...) dans l’extrait de configuration indique d’éventuelles options de configuration par défaut que vous devriez conserver.

Note

Ce guide utilise le serveur HTTP Apache avec le module mod_wsgi pour traiter les requêtes du service d’Identité sur les ports 5000 et 35357. Par défaut, le service keystone écoute sur ces ports. Le package gère toute la configuration Apache pour vous (incluant l’activation du module apache2 mod_wsgi et la configuration keystone dans Apache).

  1. Lancer la commande suivante pour installer les paquets :

    # apt install keystone
    
  1. Éditer le fichier /etc/keystone/keystone.conf et effectuer les modifications suivantes :

    • Dans la section [database], configurez l’accès à la base de données :

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

      Remplacer KEYSTONE_DBPASS par le mot de passe choisi pour la base de données.

      Note

      Commenter ou supprimer toute autre option connection dans la section [database].

    • Dans la section [token], configurer le fournisseur de token Fernet :

      [token]
      # ...
      provider = fernet
      
  2. Peupler la base de données du service d’identité.

    # su -s /bin/sh -c "keystone-manage db_sync" keystone
    
  3. Initialiser le dépôt des clés Fernet :

    # keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
    # keystone-manage credential_setup --keystone-user keystone --keystone-group keystone
    
  4. Bootstraper le service d’Identité:

    # keystone-manage bootstrap --bootstrap-password ADMIN_PASS \
      --bootstrap-admin-url http://controller:35357/v3/ \
      --bootstrap-internal-url http://controller:5000/v3/ \
      --bootstrap-public-url http://controller:5000/v3/ \
      --bootstrap-region-id RegionOne
    

    Remplacer ADMIN_PASS par un mot de passe approprié pour un administrateur.

Configurer le serveur HTTP Apache

  1. Éditer le fichier /etc/apache2/apache2.conf et configurer l’option ServerName pour pointer vers le nœud contrôleur :

    ServerName controller
    

Finaliser l’installation

  1. Redémarrer le service Apache et supprimer la base de données SQLite par défaut.

    # service apache2 restart
    # rm -f /var/lib/keystone/keystone.db
    
  1. Configurer le compte administrateur

    $ export OS_USERNAME=admin
    $ export OS_PASSWORD=ADMIN_PASS
    $ export OS_PROJECT_NAME=admin
    $ export OS_USER_DOMAIN_NAME=Default
    $ export OS_PROJECT_DOMAIN_NAME=Default
    $ export OS_AUTH_URL=http://controller:35357/v3
    $ export OS_IDENTITY_API_VERSION=3
    

    Remplacer ADMIN_PASS par le mot de passe utilisé dans la commande bootstrap keystone-manage de la section keystone-install-configure.

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.