Installation du client openstack pour nova

Installation

Pour utiliser OpenStack en ligne de commande il faut installer le client sur votre machine.

Installation du client openstack

Installez le client openstack de python avec pip install.

Pour une bonne pratique, il peut être utile de créer un environnement virtuel au préalable.
Pour cela, commencez par installer la librairie python3-virtualenv si elle n’est pas déjà installée.

$ sudo apt-get install python3-virtualenv

Puis créez votre environnement virtuel :

$ virtualenv gricad-nova
$ source gricad-nova/bin/activate
$ pip install python-openstackclient

Certains services nécessitent l’installation d’un plugin à python-openstack.

Mise à jour de modules

Selon votre distribution, il faut parfois mettre à jour certains modules.

$ pip install -U MODULE_NAME

Préparer l’accès ssh

La création et l’accès aux machines virtuelles se font en ssh alors il vous faut une paire de clefs ssh.

Création d’une paire de clef

Le minimum est d’avoir une clef RSA de 4096 bits protégée par mot de passe et d’utiliser par la suite un agent ssh.

$ ssh-keygen -t rsa -b 4096
Generating public/private rsa key pair.
Enter file in which to save the key (/home/noemie/.ssh/id_rsa):

Entrez un nom pour la paire de clef

id_rsa_nova

Ensuite, une passphrase (mot de passe) vous sera demandée deux fois pour la lier à cette clef.

Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in id_rsa_nova.
Your public key has been saved in id_rsa_nova.pub.
The key fingerprint is:
SHA256:q+zRYSQS1dBU0iEuy6Vs1IhqBwtiiNQeBKuZMV/+U4A noemie@noemie-HP-EliteBook-820-G3
The key's randomart image is:
+---[RSA 4096]----+
| o+...o=+oo.     |
|+ .o + +oo.      |
|Boo E * =        |
|+B B = O         |
|+ = o * S        |
| . . o + o       |
|      + o        |
|     . +         |
|     .+          |
+----[SHA256]-----+

Vous venez de créer une paire de clef (id_rsa_nova , id_rsa_nova.pub). La clef privée, id_rsa_nova, sauvegarde l’identification et ne doit être donnée sous aucun pretexte.
C’est la clef publique, id_rsa_nova.pub, qui sera utilisée pour créer et accéder aux machines virtuelles.

Agent ssh

Si on veut éviter de rentrer la passphrase à chaque connexion à une instance on peut passer par le ssh-agent.
Il suffit de renseigner la passphrase au ssh-agent avec la commande ssh-add.

$ ssh-add
Enter passphrase for /home/<nom_utilisateur>/.ssh/id_rsa: 
Identity added: /home/<nom_utilisateur>/.ssh/id_rsa (/home/<nom_utilisateur>/.ssh/id_rsa)

Pour savoir quel utilisateur est déclaré, on utilise

$ ssh-add -l 

qui renvoie :

  • l’empreinte de la clef connue
  • le nom d’utilisateur
  • le type de clef de chiffrement utilisé