English version : https://lucasvidelaine.wordpress.com/installation-of-devstack/

Qu’est ce qu’OpenStack ?

OpenStack est un ensemble de logiciels open source permettant de déployer des infrastructures de cloud computing.
Cette technologie possède une architecture modulaire composée de plusieurs projets corrélés (Nova, Swift, Glance, Neutron, Horizon…) qui permettent de contrôler les différentes ressources des machines virtuelles.

devstack

DevStack est une compilation de scripts utilisés pour mettre en place rapidement un environnement OpenStack complet. DevStack est basé sur les dernières versions des modules OpenStack. Il est utilisé comme un environnement de développement et constitue la base des tests fonctionnels du projet OpenStack.

Lien du projet : https://git.openstack.org/cgit/openstack-dev/devstack
Sources et docs anglophones : https://docs.openstack.org/developer/devstack/

attention devstack


Démarrage Rapide

Installation de Linux :

Commencez avec une installation propre et minimale d’un système Linux. Devstack supporte Ubuntu 16.04 / 17.04, Fedora 24/25, CentOS / RHEL 7, ainsi que Debian et OpenSUSE.

Si vous n’avez pas de préférence, Ubuntu 16.04 est le plus testé et le plus recommandé.

 Pré-requis du système :

# Mettre à jour les dépôts
$ sudo apt-get --yes update

# Outils basiques utilisés par DevStack
$ sudo apt-get install --yes sudo vim vim-nox lynx zip binutils wget
$ sudo apt-get install --yes openssl ssl-cert ssh

# Supprimer "apparmor"
$ sudo service apparmor stop
$ sudo update-rc.d -f apparmor remove
$ sudo apt-get remove --yes apparmor apparmor-utils
$ sudo apt-get purge --yes apparmor apparmor-utils

# Installation de NTP
$ sudo apt-get install --yes ntp

# Prérequis pour le script de DevStack
$ sudo apt-get install bridge-utils
$ sudo apt-get install --yes git
$ sudo apt-get install --yes python-pip
$ sudo pip install --upgrade pip
$ sudo pip install -U os-testr

Création de l’utilisateur :

DevStack doit être exécuté par un utilisateur non root mais ayant les permissions sudo.

Il faut donc créer un utilisateur, appelé ici « stack ».

$ sudo groupadd stack
$ sudo useradd -s /bin/bash -d /opt/stack -m stack

Comme l’utilisateur exécute DevStack et que ce dernier apporte des changements majeurs au système il faut le doter des permissions sudo. Exécuter ces commandes en tant que root pour plus de facilités.

$ cd /etc/sudoers.d
$ umask 226 && echo "stack ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/50_stack_sh

Téléchargement de DevStack :

Nous allons donc récupérer les fichiers de DevStack contenant le script d’installation.

$ su stack
$ cd
$ git clone https://git.openstack.org/openstack-dev/devstack 
$ cd devstack
$ git checkout stable/ocata

Création du fichier de configuration local.conf :

Il va falloir créer dans le dossier devstack/ le fichier local.conf qui va contenir la configuration minimale pour pouvoir lancer le script.

[[local|localrc]]
ADMIN_PASSWORD=openstack
DATABASE_PASSWORD=openstack
RABBIT_PASSWORD=openstack
SERVICE_PASSWORD=openstack
GIT_BASE=https://git.openstack.org

Le fichier définira donc les mots de passe des différents modules de DevStack.

Si vous souhaitez installer des modules supplémentaires rajoutez à la suite du fichier local.conf :

enable_plugin heat https://git.openstack.org/openstack/heat stable/ocata
enable_plugin murano https://git.openstack.org/openstack/murano stable/ocata

Adaptez les modules en fonction de vos besoins.

Démarrage de l’installation :

Pour lancer l’installation il faut démarrer le script se trouvant dans le dossier devstack/

./stack.sh

Le script mets entre 15 et 20 minutes pour totalement installer DevStack, tout dépendra de la puissance de votre machine et de votre connexion internet puisque de nombreux fichiers et paquets seront installés pendant le processus.

Si une erreur ce produit, exécuter ce script et recommencez :

./clean.sh

Profitez !

Vous avez maintenant un environnement DevStack fonctionnel.

Normalement votre DevStack aura installé les modules Keystone, Nova, Cinder, Neutron et Horizon par lui-même.

attention devstack2

Vous avez donc accès à Horizon depuis l’interface web afin de gérer vos instances, vos réseaux, vos volumes et vos images.

Évidemment vous pouvez également employer les commandes d’OpenStack depuis la console de votre serveur DevStack.

Puisque DevStack et OpenStack sont libre et communautaire vous pouvez exposer vos modifications au sein du code et les faire valider depuis cette page.

Allez plus loin :

Approfondissez vos recherches sur la configuration du système pour paramétrer votre DevStack selon vos besoins. Complétez également vos connaissances sur le réseau de DevStack.