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 performance, cette configuration déploie des jetons Fernet et le serveur HTTP Apache pour traiter les requêtes.

Installer et configurer les composants

  1. Lancer la commande suivante pour installer les packages :

    # apt-get install keystone
    
  2. Répondre aux prompts debconf pour renseigner 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 devez créer la base de données et gérer les droits d’accès vous-même, puis 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’administration 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 mode non-interactif ou si vous ne spécifiez pas ce jeton, l’outil de configuration génère une valeur aléatoire.

    Ensuite, le package va configurer la directive ci-dessous avec les valeurs saisies :

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

    Lors de l’étape finale d’installation du package, il est possible de créer automatiquement des projets admin et service, 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 --os-token ${AUTH_TOKEN} \
      --os-url=http://127.0.0.1:35357/v3/ \
      --os-domain-name default \
      --os-identity-api-version=3 \
      project create --or-show \
      admin --domain default \
      --description "Default Debian admin project"
    
    # openstack --os-token ${AUTH_TOKEN} \
      --os-url=http://127.0.0.1:35357/v3/ \
      --os-domain-name default \
      --os-identity-api-version=3 \
      project create --or-show \
      service --domain default \
      --description "Default Debian admin project"
    
    # openstack --os-token ${AUTH_TOKEN} \
      --os-url=http://127.0.0.1:35357/v3/ \
      --os-domain-name default \
      --os-identity-api-version=3 \
      user create --or-show \
      --password ADMIN_PASS \
      --project admin \
      --email root@localhost \
      --enable \
      admin \
      --domain default \
      --description "Default Debian admin user"
    
    # openstack --os-token ${AUTH_TOKEN} \
      --os-url=http://127.0.0.1:35357/v3/ \
      --os-domain-name default \
      --os-identity-api-version=3 \
      role create --or-show admin
    
    # openstack  --os-token ${AUTH_TOKEN} \
      --os-url=http://127.0.0.1:35357/v3/ \
      --os-domain-name default \
      --os-identity-api-version=3 \
      role add --project admin --user admin admin
    
    _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 services. Cela revient à exécuter les commandes suivantes :

    # openstack --os-token ${AUTH_TOKEN} \
      --os-url=http://127.0.0.1:35357/v3/ \
      --os-domain-name default \
      --os-identity-api-version=3 \
      service create \
      --name keystone \
      --description "OpenStack Identity" \
      identity
    
    # openstack --os-token ${AUTH_TOKEN} \
      --os-url=http://127.0.0.1:35357/v3/ \
      --os-domain-name default \
      --os-identity-api-version=3 \
      keystone public http://controller:5000/v2.0
    
    # openstack --os-token ${AUTH_TOKEN} \
      --os-url=http://127.0.0.1:35357/v3/ \
      --os-domain-name default \
      --os-identity-api-version=3 \
      keystone internal http://controller:5000/v2.0
    
    # openstack --os-token ${AUTH_TOKEN} \
      --os-url=http://127.0.0.1:35357/v3/ \
      --os-domain-name default \
      --os-identity-api-version=3 \
      keystone admin http://controller:35357/v2.0
    
    _images/keystone_7_register_endpoint.png
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.