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 nœud contrôleur. Pour une question de performance, cette configuration déploie le serveur HTTP Apache pour traiter les requêtes et Memcached pour stocker les tokens à la place d’une base de données SQL.

Pré-requis

Avant de configurer le service d’identité d’OpenStack, vous devez créer une base de donnée et un jeton d’administration.

  1. Pour créer la base de données, effectuer les opérations suivantes:

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

      $ mysql -u root -p
      
    • Créer la base de donnée keystone:

      CREATE DATABASE keystone;
      
    • Attribuer les bons droits d’accès à la base de données keystone:

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

      Remplacer KEYSTONE_DBPASS par un mot de passe approprié.

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

  2. Générer une valeur aléatoire à utiliser comme jeton d’administration pendant la configuration initiale :

    $ openssl rand -hex 10
    

Installer et configurer les composants

  1. Lancer la commande suivante pour installer les paquets :

    # apt-get install keystone
    

    Note

    python-keystoneclient sera installé automatiquement car c’est une dépendance du package keystone.

  2. Répondre aux prompts pour Configurer la base de données avec dbconfig-common, ce qui va remplir la directive d’accès à la base de données ci-dessous.

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

    Si vous décidez de ne pas utiliser dbconfig-common, alors vous devrez créer la base de données et gérer les droits d’accès vous-même, et exécuter manuellement ce qui suit.

    # keystone-manage db_sync
    
  3. Générer une valeur aléatoire à utiliser comme jeton d’administration pendant la configuration initiale :

    $ openssl rand -hex 10
    
  4. Configurer le jeton d’admonistration initial :

    _images/keystone_1_admin_token.png

    Utiliser la valeur aléatoire générée précédemment. Si vous faite une installation en un mode non-interactif ou si vous ne spécifiez pas ce token, l’outil de configuration génèrera une valeur aléatoire.

    Plus tard, le package va configurer la directive suivante avec les valeurs saisies:

    [DEFAULT]
    ...
    admin_token = ADMIN_TOKEN
    
  5. Créer le tenant et l’utilisateur admin:

    Lors de l’étape finale d’installation du package, il est possible de créer automatiquement un tenant admin et un utilisateur admin. Ils pourront ensuite être utilisés par d’autres services OpenStack pour contacter le service d’Identité. Cela revient à exécuter les commandes suivantes:

    # openstack project create --description "Admin Tenant" admin
    # openstack user create --password ADMIN_PASS --email root@localhost admin
    # openstack role create admin
    # openstack role add --project demo --user demo user
    
    _images/keystone_2_register_admin_tenant_yes_no.png _images/keystone_3_admin_user_name.png _images/keystone_4_admin_user_email.png _images/keystone_5_admin_user_pass.png _images/keystone_6_admin_user_pass_confirm.png

    Sur Debian, le package Keystone permet un enregistrement automatique de Keystone dans le catalogue de service. Cela revient à exécuter les commandes suivantes:

    # openstack service create --name keystone --description "OpenStack Identity"  identity
    # keystone endpoint-create \
      --publicurl http://controller:5000/v2.0 \
      --internalurl http://controller:5000/v2.0 \
      --adminurl http://controller:35357/v2.0 \
      --region RegionOne \
      identity
    
    _images/keystone_7_register_endpoint.png

Finaliser l’installation

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.

Search