Vous êtes sur la page 1sur 37

Direction Régionale: Marrakech-Safi

RAPPORT DES TRAVAUX PRATIQUES


Module : M211
Implémenter un environnement Cloud avec une
solution libre.

Année : 2022/2023

Classe : IDOCC201 Niveau : TS


Réalisé par :
Mokaddem Salma & Nait Ider Yassine
Formateur Responsable : Mustapha ELQASEMY

TABLE DES MATIÈRES


PARTIE1 : METTRE EN SERVICE OPENSTACK .............................................................................. 2
ACTIVITE 1 : INSTALLATION ET MISE EN SERVICE D’OPENSTACK ........................................ 2
PARTIE 2 : EXPLORER LES SERVICES DE BASE D’OPENSTACK ............................................ 11
ACTIVITE 1: CREER ET GERER UNE VM ........................................................................................ 11
ACTIVITE 2: CONFIGURATION ET MISE EN SERVICE DU RESEAU ......................................... 18
ACTIVITE 3: IMPORTATION ET EXPORTATION DES DONNEES ............................................... 25
PARTIE 3 : EXPLORER LES SERVICES AVANCES D’OPENSTACK .......................................... 29
ACTIVITE 1 : CREER ET GERER DES UTILISATEURS .................................................................. 29
ACTIVITE 2 : SUPERVISER DES RESSOURCES .............................................................................. 32
PARTIE4 : DEPLOYER DES SERVICES D’OPENSTACK ............................................................... 34
ACTIVITE 1 : SAUVEGARDE ET RESTAURATION ........................................................................ 34
ACTIVITE 2 : IMPLEMENTATION DES SERVICES DE GESTION D’INFRASTRUCTURES ..... 35
Correction d’EFM (Partie Pratique): ...................................................................................................... 36
EFM Régionale - DR: Casablanca Settat ................................................................................................ 36

ISGI Marrakech
MOKADDEM SALMA NAIT IDER YASSINE

PARTIE1 : METTRE EN SERVICE OPENSTACK


ACTIVITE 1 : INSTALLATION ET MISE EN SERVICE D’OPENSTACK
Afin de pouvoir installer Open Stack, il est nécessaire de disposer d’un environnement Linux
Vous aurez besoin d'un environnement virtuel tel que VirtualBox ou VMWare pour installer et exploiter
une machine serveur Linux Ubuntu.
Le choix de l'hyperviseur à utiliser dépend de vous.
Configuration minimale pour l’installation :
• Dual Core Processor
• Minimum 8 GB RAM
• 60 GB de Disk
• Connection Interne
Exemple de création d’une VM Ubuntu Avec VMWare :

Exemple de création d’une VM Ubuntu Avec VirtualBox :


Déploiement d’une VM ayant les caracéristiques suivants : 8G RAM, 4vCPU, 100Go Disque.

Donnez un nom à votre machine virtuelle et sélectionnez l'emplacement d'installation :

Page | 2
MOKADDEM SALMA NAIT IDER YASSINE

Sélectionnez la taille du disque et indiquez le dossier de destination à installer :

Attribuez une taille de RAM à votre machine virtuelle :

Créer un vSwitch NAT pour l’acces internet de la VM :


Créer un vSwitch host only, pour le réseau de management :

Parcourez l'emplacement du fichier et sélectionnez le fichier ISO pour Ubuntu :


Si vous n’avez pas de préférence particulière, Ubuntu 20.04 (Focal Fossa) est le plus testé pour cet
environnement et sera le plus fluide…

Page | 3
MOKADDEM SALMA NAIT IDER YASSINE

Procédez à l'installation et remplissez les autres options.


Spécifiez le nom d'hôte et les informations d'identification de l'utilisateur local :
Dans cette étape, vous devez spécifier les détails de l'utilisateur local et le nom d'hôte que vous
souhaitez définir pour votre serveur. Alors, entrez les détails qui conviennent à votre installation.

Choisissez d'installer le package serveur OpenSSH :


Si vous souhaitez accéder à votre serveur via le réseau à l'aide de ssh, il est recommandé
d'installer le package de serveur openssh lors de l'installation.

Page | 4
MOKADDEM SALMA NAIT IDER YASSINE

L'installation du serveur Ubuntu 20.04 a commencé :


Comme nous pouvons le voir ci-dessous, l'installation du serveur Ubuntu 20.04 LTS a été lancée
et est en cours. Une fois l'installation terminée, le programme d'installation vous demandera de
redémarrer le système.

Connectez-vous après une installation réussie et vérifiez la version du système d'exploitation :


Une fois que le système est disponible après le redémarrage, utilisez les informations
d'identification de l'utilisateur local que nous avons créées lors de l'installation pour vous
connecter.

Parfait, cela confirme que le serveur Ubuntu 20.04 LTS est installé avec succès
sur notre système.

Page | 5
MOKADDEM SALMA NAIT IDER YASSINE

Mise à jour des paquets :

Mettre à jour et mettre à niveau le système :

Accès par SSH:


Si vous ne connaissez pas votre adresse IP vous pouvez facilement la trouver en utilisant la
commande ip a / ip add / ifconfig (installer net-tools) :

Page | 6
MOKADDEM SALMA NAIT IDER YASSINE

Pour vous connecter à votre machine Ubuntu, appelez la commande ssh suivie du nom
d'utilisateur et de l'adresse IP au format suivant :

Configurer l'adresse IP statique / Fixer l’adresse IP :


Pour attribuer une adresse IP statique sur l'interface réseau, ouvrez le fichier de configuration
YAML avec votre éditeur de texte :

Avant de modifier la configuration :


Les interfaces enp0s3 et enp0s8 sont configurées pour obtenir l'adressage IP d'un serveur DHCP

Page | 7
MOKADDEM SALMA NAIT IDER YASSINE

Après la configuration :
Pour attribuer une adresse IP statique à l'interface enp0s8, modifiez le fichier comme suit :
✓ Spécifiez l'adresse IP statique. Sous adresses : vous pouvez ajouter une ou plusieurs
adresses IP IPv4 ou IPv6 qui seront attribuées à l'interface réseau.
✓ Spécifiez la passerelle.
✓ Sous nameservers, définissez les adresses IP des serveurs de noms.

Une fois cela fait, enregistrez le fichier et appliquez les modifications en exécutant la commande:

Pour une démonstration spécifique : https://www.youtube.com/watch?v=WQyoA35jq24


Création d’un utilisateur Stack ayant les privilèges sudo + Télécharger DevStack :

Une fois que vous avez créé avec succès la "pile" de l'utilisateur et attribué les privilèges sudo, passez à
l'utilisateur à l'aide de la commande

À l'aide de git, clonez le référentiel git de devstack comme indiqué :

Page | 8
MOKADDEM SALMA NAIT IDER YASSINE

Créer le fichier de configuration devstack :


Dans cette étape, accédez au répertoire devstack.

Créez ensuite un fichier de configuration local.conf à l’aide d’un éditeur de texte (nano ou vim) :

Collez le contenu suivant puis Enregistrez et quittez l'éditeur de texte :

Explication de contenu de fichier :


ADMIN_PASSWORD est le mot de passe que vous utiliserez pour vous connecter à la page de
connexion OpenStack. Le nom d'utilisateur par défaut est admin.
HOST_IP est l'adresse IP de votre système obtenue en exécutant les commandes ifconfig ou ip
addr.
Installer OpenStack avec Devstack :

Pour commencer l'installation d'OpenStack sur Ubuntu 20.04, exécutez le script ci-dessous
contenu dans le répertoire devstack :

Le déploiement prend environ 10 à 15 minutes en fonction de la vitesse de votre système et de la


connexion Internet. Vous devriez voir une sortie similaire à celle que nous avons ci-dessous.

Page | 9
MOKADDEM SALMA NAIT IDER YASSINE

Accéder à OpenStack sur un navigateur Web :


Pour accéder à Open Stack via un navigateur Web, parcourez l'adresse IP de votre Ubuntu
comme indiqué. https://server-ip/dashboard Cela vous dirige vers une page de connexion comme
indiqué. Exemple : http://192.168.56.106/dashboard

Entrez les informations d'identification et cliquez sur "Sign in". Vous devriez pouvoir voir le
tableau de bord de la console de gestion comme indiqué ci-dessous.

Vue d’ensemble du tableau de bord :

Télécharger et sourcer le fichier OpenStack RC :


✓ Connectez-vous au tableau de bord et dans la liste déroulante, sélectionnez le projet pour lequel
vous souhaitez télécharger le fichier OpenStack RC.

✓ Créer un fichier pour coller le contenu de Openstack RC File :

Page | 10
MOKADDEM SALMA NAIT IDER YASSINE

✓ Sur tout shell à partir duquel vous souhaitez exécuter des commandes OpenStack, sourcez
le fichier PROJECT-openrc.sh pour le projet respectif. Dans cet exemple, vous sourcez le
fichier admin-openrc.sh pour le projet admin

PARTIE 2 : EXPLORER LES SERVICES DE BASE


D’OPENSTACK
ACTIVITE 1: CREER ET GERER UNE VM
Note : Ces activités se sont déroulées de deux manières : CLI et interface graphique.

IMAGE : Une image OpenStack est utilisée pour définir le système d'exploitation d'une
machine virtuelle
Lister les images:

Page | 11
MOKADDEM SALMA NAIT IDER YASSINE

Créer une image Ubuntu:

Vérifier L’ajout d’image crée:

FLAVOR : gabarit ou saveur est une configuration prédéfinie qui définit la capacité de
calcul, de mémoire et de stockage d'une instance.
Lister les saveurs:

Page | 12
MOKADDEM SALMA NAIT IDER YASSINE

Créer une saveur :

SECURITY GROUP: Un groupe de sécurité est un ensemble nommé de règles d'accès au


réseau utilisées pour limiter les types de trafic ayant accès aux instances.

Lister les groupes de securité :

Créer un groupe de sécurité :


CLI:

GUI:

Page | 13
MOKADDEM SALMA NAIT IDER YASSINE

Répertorier les règles du groupe de sécurité « secgroup » crée précédemment :

KEYPAIR: La paire de clés mal nommée est en réalité la clé publique d'une paire de clés
OpenSSH à utiliser pour accéder aux serveurs créés.
Créer une clé nommée Keyy :

Page | 14
MOKADDEM SALMA NAIT IDER YASSINE

Créer une clé nommée Key2 avec la commande suivante :


Créer une nouvelle clé publique ou privée pour l'accès ssh au serveur :

Lister les clés :

MACHINE VIRTUELLE
Avec tous les éléments identifiés aux étapes précédentes, créer une nouvelle machine virtuelle :

Page | 15
MOKADDEM SALMA NAIT IDER YASSINE

Afficher les détails du serveur :

Vérifier la création du machine dans le Dashboard :

Gestion de la machine virtuelle:


Redémarrer la machine virtuelle

Pause, suspension, arrêt, sauvetage, redimensionnement, reconstruction, redémarrage d’une instance :

Page | 16
MOKADDEM SALMA NAIT IDER YASSINE

Accéder à la console de la machine virtuelle :

Page | 17
MOKADDEM SALMA NAIT IDER YASSINE

Obtenir une URL de session Virtual Network Computing (VNC) pour votre instance et y accéder via un
navigateur web :

ACTIVITE 2: CONFIGURATION ET MISE EN SERVICE DU RESEAU


Créer un projet et un utilisateur
Lister les projets:

Créer un projet nommé ‘Project-rey:

Créer un projet nommé ‘Project-vil’ (graphique) :

Page | 18
MOKADDEM SALMA NAIT IDER YASSINE

Vérifier la création des projets :

Créer un nouvel utilisateur nommé villy :

Créer un nouvel utilisateur nommé rey (graphique) :

Page | 19
MOKADDEM SALMA NAIT IDER YASSINE

Lister les utilisateurs :

Configurer les sous réseaux


Se déconnecter du compte administrateur et se connecter avec le nouvel utilisateur :

Créer ensuite les deux réseaux interne et externe comme suit :

Page | 20
MOKADDEM SALMA NAIT IDER YASSINE

Créer un réseau interne (graphique) :

Partie sous-réseau :

Créer un réseau externe (CLI) :

Page | 21
MOKADDEM SALMA NAIT IDER YASSINE

Création de sous-réseau :

Lister les réseaux :

Configurer le réseau externe:


Marquer ce réseau comme un réseau externe :

Configurer le routage:
Créer un routeur:

Page | 22
MOKADDEM SALMA NAIT IDER YASSINE

Sélectionner "my_external_nw" comme réseau externe et cliquer sur le bouton "Create Router" :

Pou créer un routeur avec des commandes :

sélectionner le routeur dans la colonne du nom du routeur, accéder à l'onglet Interfaces et cliquer sur le
bouton « Add Interface».Cliquer sur "Submit". pour appliquer les paramètres :

Dans la liste déroulante du sous-réseau, sélectionner le sous-réseau interne « my_subnet ». Dans le champ
Adresse IP, ne rien spécifier. Cliquer sur le bouton ‘Submit’ pour terminer cette étape

Page | 23
MOKADDEM SALMA NAIT IDER YASSINE

Topologie réseau OpenStack:


Une carte du réseau comme indiqué ci-dessous devrait apparaître :

Floating IP Address :
Une adresse IP flottante permet à l'instance d'être publiquement accessible. Chaque
instance a une adresse IP privée et fixe et peut également avoir une adresse IP publique ou
flottante. Les adresses IP flottantes vous permettent de diriger le trafic réseau entrant vers
vos instances OpenStack.
Lister les réseaux et sous-réseaux disponibles :

Vous devez réserver une adresse IP flottante à partir du pool de sous-réseaux du réseau externe. Par CLI :

Page | 24
MOKADDEM SALMA NAIT IDER YASSINE

admin est le projet du propriétaire. L'adresse IP flottante créée sera disponible pour être associée à ce
projet.
Public-subnet est le nom du sous-réseau sur lequel vous souhaitez créer l'IP flottante.
public est le nom du réseau à partir duquel allouer une adresse IP flottante.

Lister les IP flottantes:

Pour associer l'adresse IP flottante réservée à une instance:

ACTIVITE 3: IMPORTATION ET EXPORTATION DES DONNEES


Gérer les volumes Cinder :
Répertorier les images et noter l'ID de l'image que vous souhaitez utiliser pour votre volume :

Répertorier les images et noter l'ID de l'image que vous souhaitez utiliser pour votre volume :

Page | 25
MOKADDEM SALMA NAIT IDER YASSINE

Créer un volume nommé ‘v_one’ avec 8 gibioctets (Gio) d'espace et spécifier la zone de disponibilité et
l'image :

Créer un volume nommé ‘v_two’ avec 8 gibioctets (Gio) d'espace et spécifier la zone de disponibilité et
l'image (CLI) :

Attacher un volume à une instance :

Page | 26
MOKADDEM SALMA NAIT IDER YASSINE

Lister les volume crées :

Lister les serveurs :

Attacher un volume au serveur :

Afficher les informations pour le volume :

Vérifier que le volume est attaché à l’instance à partir de tableau de bord :

Détacher un volume d'une instance :

Page | 27
MOKADDEM SALMA NAIT IDER YASSINE

Détacher votre volume d'un serveur, en spécifiant l'ID du serveur et l'ID du volume :

Afficher les informations pour votre volume :


Il n’y a aucun attachement au volume ‘v_one’ :

Modifier les propriétés du volume (Taille) :


Lister les volumes :
Le volume ‘v_one’ a une taille d’1 Go

Étendre la taille du volume ‘v_one’ en 8Go :

Vérifier :

Supprimer un Volume :
Supprimer le volume à l'aide du nom ou de l'ID du volume :

Page | 28
MOKADDEM SALMA NAIT IDER YASSINE

Partie 3 : Explorer les services avancés d’OpenStack


ACTIVITE 1 : CREER ET GERER DES UTILISATEURS
Gérer les projets:
Répertorier tous les projets avec leur ID, leur nom et s'ils sont activés ou désactivés :

Créer un projet nommé new-project:

Pour désactiver temporairement un projet :

Pour activer un projet désactivé :

Pour mettre à jour le nom d'un projet

Supprimer un projet :

Gérer les utilisateurs :

Page | 29
MOKADDEM SALMA NAIT IDER YASSINE

Lister tous les utilisateurs :


Nous remarquons les utilisateurs créés précédemment dans l'exercice de mise en réseau.

Créer un utilisateur nommé ‘user’:

Supprimer un compte utilisateur spécifié:

Manipulation de rôles:
ROLE : Les rôles définissent les actions que les utilisateurs peuvent effectuer.
Lister les rôles disponibles:

Page | 30
MOKADDEM SALMA NAIT IDER YASSINE

Créer un role nommé ‘writer’ (CLI):

Créer un rôle nommé ‘reyrole’ (Dashboard):

Attribuer un role:
Répertorier les projets et notez l'ID de projet à attribuer au rôle :

Page | 31
MOKADDEM SALMA NAIT IDER YASSINE

Répertorier les utilisateurs et noter l'ID utilisateur à attribuer au rôle :

Répertorier les ID de rôle et notez l'ID de rôle à attribuer :

Attribuer le rôle ‘reader’ à l’utilisateur ‘rey’ dans le projet ‘Project-rey’ :

ACTIVITE 2 : SUPERVISER DES RESSOURCES


Répertorier les hôtes et les services liés à nova qui s'y exécutent :

Afficher les statistiques d'utilisation de l'instance :


Obtenir des statistiques sur la CPU, la mémoire, les E/S et le réseau pour une instance.

Page | 32
MOKADDEM SALMA NAIT IDER YASSINE

Répertorier les instances :

Obtenir des statistiques de diagnostic sur la machine virtuelle ‘reyUBUNTU’:

Obtenir des statistiques récapitulatives pour chaque projet :


Cli :

Dashboard :

Page | 33
MOKADDEM SALMA NAIT IDER YASSINE

PARTIE4 : DEPLOYER DES SERVICES D’OPENSTACK


ACTIVITE 1 : SAUVEGARDE ET RESTAURATION
Lister les volumes disponibles :

Créer une sauvegarde d'un volume nommé ‘v_one’ :

Créer une sauvegarde d'un volume nommé ‘v_two’ :

Afficher une liste de sauvegarde :

Restaurer la sauvegarde du volume :

DATABASE AS A SERVICE :
Trove est une base de données en tant que service pour OpenStack. Il est conçu pour
fonctionner entièrement sur OpenStack, dans le but de permettre aux utilisateurs d'utiliser
rapidement et facilement les fonctionnalités d'une base de données relationnelle sans avoir à
gérer des tâches administratives complexes.
Installer et configurer pour Ubuntu :
https://docs.openstack.org/project-install-guide/database/draft/install-ubuntu.html

Page | 34
MOKADDEM SALMA NAIT IDER YASSINE

ACTIVITE 2 : IMPLEMENTATION DES SERVICES DE GESTION


D’INFRASTRUCTURES
Configurer l'agent DHCP :
L'agent de service DHCP est compatible avec tous les plug-ins existants et est requis pour tous les
déploiements où les machines virtuelles doivent automatiquement recevoir des adresses IP via DHCP.

Dnsmasq : Dnsmasq est un cache DNS facile à configurer qui peut accélérer la navigation sur Internet et
la résolution des enregistrements de domaine sur vos systèmes. Vous pouvez également profiter de son
sous-système DHCP facile à configurer et à utiliser pour un petit réseau.

NTP : NTP signifie National Time Protocol et est utilisé pour la synchronisation d'horloge sur plusieurs
ordinateurs. Un serveur NTP est chargé de maintenir un ensemble d'ordinateurs synchronisés les uns avec
les autres. Sur un réseau local, le serveur doit être capable de maintenir tous les systèmes clients à moins
d'une milliseconde les uns des autres.

Configurer le serveur NTP : Le serveur NTP est déjà préconfiguré avec certains pools de serveurs, que
vous pouvez voir dans le fichier /etc/ntp.conf.

Page | 35
MOKADDEM SALMA NAIT IDER YASSINE

Généralement, il est préférable de remplacer ces lignes par des pools de serveurs de votre propre pays, ou
du moins de votre propre continent. Moins il y a de latence entre vous et un serveur de temps, mieux c'est.
Vous pouvez utiliser le site Web NTP Pool Project pour trouver le pool de serveurs NTP le plus proche de
votre emplacement.

Correction d’EFM (Partie Pratique):


EFM Régionale - DR: Casablanca Settat

Page | 36
MOKADDEM SALMA NAIT IDER YASSINE

CORRECTION :
1. openstack network create demo-network

2. openstack subnet create --network demo-network --subnet-range


10.1.0.0/24 --allocation-pool start=10.1.0.1, end=10.1.0.80 –-gateway
10.1.0.1 --dns-nameserver 8.8.8.8 –-dhcp demo-subnet

3. openstack router create demo-router

4. openstack port create -–network demo-network --fixed-ip subnet=demo-


subnet,ip-address=10.1.0.112 demo-port

5. $openstack security group create SSH-GRP


$openstack security group rule create -–protocol tcp,icmp --dst-port 22
-–ingress --remote-ip 0.0.0.0/0 SSH-GRP

6. openstack server create --flavor M --image “Ubuntu 16.04 TLS” --key-name


demo-key --security-group SSH-GRP --nic v4-fixed-ip=10.1.0.112 demo-
instance

7. openstack network list

8. openstack floating ip create –-project admin --subnet public-net


floating-IPv4

9. openstack server add floating ip demo-instance <ip-address>

10. openstack server list

Pour bien mémoriser les commandes d'openstack :


SOUS-COMMANDE DESCRIPTION

List Lister/répertorier les instances, les images, les réseaux, les volumes…
Create Créer des instances, des images, des réseaux, des volumes…
Delete Supprimer des instances…
Show Obtenir des détails sur une instance, une image…
Set Définir/Modifier les propriétés du serveur, du routeur, du projet…
Add Ajouter/Attacher une adresse IP fixe/flottante, un volume, une image au
serveur.
Remove Supprimer/Détacher une adresse IP fixe/flottante, un volume…

Page | 37

Vous aimerez peut-être aussi